簡體   English   中英

JSF 2 - 隱藏默認值<? extends Number>

[英]JSF 2 - hiding default values on <? extends Number>

有沒有辦法隱藏我的數字屬性的默認值? 我有一個int字段,在我看來, <h:inputText />字段顯示為0.除此之外,如果我將此輸入留空,我會得到一個NullPointerException

我可以隱藏默認值並將空輸入視為默認值嗎?

我在Tomcat 7上使用mojarra 2.1.2

原始int始終默認為0 您想要使用Integer 例如:

public class Entity {

    private Integer value;

    // ...
}

至於在提交空數據時保持null ,請將以下上下文參數添加到web.xml

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

此外,如果您正在使用Tomcat或使用Apache EL解析器的克隆,請添加以下服務器啟動VM參數,以防止它將Number值視為基元:

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

在Eclipse中,您可以在Open launch配置對話框的Arguments選項卡中將其設置為服務器配置(在Servers視圖中雙擊服務器條目)。 在生產中,您可以將其添加到JAVA_OPTS環境變量中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM