2012-10-26 14 views
2

안녕하십니까, 나는 grails의 초보자입니다. gsp에서 명령 개체를 통해 컨트롤러로 필드 값을 전달하고 있습니다. 내 gsp page.But에 하나의 필드가 모바일 GPG page.But 내가 명령 개체를 통해 액세스하려고 할 때, 그것은 나를 error를 typeMismatch로 준다. 즉, 문자열에서 정수로 98xxxxxxxx와 같은 값을 변환하지 않는다. 내 명령 객체에서, 나는 GSP에Grails Command 객체가 숫자를 바인딩하지 못했습니다.

Integer mobile; 

로 정수로 내 코드를 언급 한 것은 :

<label for="mobile">Mobile</label> 
<input type="text" value="${cmd?.mobile}" title="" name="mobile" id="mobile" size="30" maxlength="10"/> 

cmd를 내 명령 개체입니다. 컨트롤러

그리고 코드 : 내가 1111111111 같은 값을 입력 할 때

def addInstitute={InstituteCommand cmd-> 
    Address address=new Address(); 
    address.mobile=cmd.mobile; 
} 

그것은 나에게 TypeMismatch 예외 error.Also을 제공, 그것을 저장하지만 난 모바일 실제 입력 할 때 NO. 그것은 나에게 타입 불일치 오류를 준다.이 시나리오로 무엇을 할까?

답변

6

정수 값 범위는 -2147483648에서 2147483647까지이며 휴대 전화 번호는 9800000000 (10 자리)보다 큽니다. 당신은 문자열

String mobile; 

당신은 아마 휴대 전화 번호에 숫자 작업을 수행하지 않습니다 때문에 더 의미가 있습니다로 저장하는 것이 더 낫다. 또한 +, -

과 같은 숫자가 아닌 전화 코드를 저장할 수 있습니다.
관련 문제