我正在用EJB和JSF编写一个简单的网页。对于我的webpresentation,我需要一个包含inputFields和复选框的页面。 为了从我的网页获取输入到javaclass,我需要配置faces-config.xml文件。 这是我的问题:复选框产生布尔值。 Boolean是原始数据类型。在我的javaclass中,我将以这种方式定义基元
private boolean checkBox1;
private boolean checkBox2;
但我的faces-config.xml无法识别此数据类型。它希望我通过java.lang.Boolean定义它。如果我这样做一切都很好但是在任何javaclass中都有这样的代码感觉不对:
private java.lang.Boolean checkBox1;
private java.lang.Boolean checkBox2;
有没有办法“教”faces-config.xml是什么原语? :)
答案 0 :(得分:2)
为了从我的网页获取输入到javaclass,我需要配置我的faces-config.xml文件
这没有任何意义。只需将组件的值直接绑定到bean属性即可。以下工作对我来说没有任何faces-config.xml
注册(JSF 2.x假设):
<h:form>
<h:selectBooleanCheckbox value="#{bean.checked}" />
<h:commandButton value="submit" action="#{bean.submit}" />
</h:form>
与
@ManagedBean
@RequestScoped
public class Bean {
private boolean checked;
public void submit() {
System.out.println(checked);
}
public boolean isChecked() {
return true;
}
public void setChecked(boolean checked) {
this.checked = checked;
}
}
我做了一个教程,他们使用了faces-config.xml的图形编辑器
不要使用图形编辑器。不要拖动代码。你不会以这种方式学习编写代码。只需自己编写代码。但是,您可以使用快捷方式/向导自动生成getter / setter等。但有了这个,你仍然应该坐在基于文本的编辑器中。