2011-08-26 1 views
3

내 번호 속성의 기본값을 숨길 수있는 방법이 있습니까? int 필드가 있고 내보기에 <h:inputText /> 필드에 0이 표시됩니다.이 입력을 비워두면 여기에 NullPointerException이 표시됩니다.JSF 2 - 기본 값을 숨기려면 <? 숫자 확장>

기본값을 숨기고 빈 입력을 기본값으로 처리 할 수 ​​있습니까?

나는 0Tomcat 7

답변

10

원시적 int 항상 기본값에 mojarra 2.1.2을 사용하고 있습니다. 대신 Integer을 사용하고 싶습니다. 예를 들면 :

public class Entity { 

    private Integer value; 

    // ... 
} 

빈 데이터를 제출하면서 null 유지에 관해서는, 당신의 web.xml에 다음 상황에 맞는 PARAM를 추가

<context-param> 
    <param-name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</param-name> 
    <param-value>true</param-value> 
</context-param> 

또한, 톰캣이나 아파치를 이용하여 복제를 사용하는 경우 EL 파서는, 원시처럼 Number 값을 치료하는 것을 방지 할뿐만 아니라 다음과 같은 서버 시작 VM 인수를 추가

-Dorg.apache.el.parser.COERCE_TO_ZERO=false

Eclipse에서 인수 실행 구성 대화 상자의 서버 구성 (서버 항목을 서버보기로 doubleclick)에서 설정할 수 있습니다. 프로덕션 환경에서는이를 환경 변수 JAVA_OPTS에 추가 할 수 있습니다.

+2

건배 BalusC - JSF 주제에 대해 인류는 여러분에게 신뢰를 불어 넣을 수 있습니다. – onigunn

+0

여러분을 환영합니다. – BalusC

+1

@BalusC JBoss와 인튜어저 값을 0으로 사용할 때 여전히 사용 중입니다. –

관련 문제