我收到错误目标unreachable.my xhtml文件和java文件在下面。
<h: inputText id = "iqamaType"
value = "#{manageEmployee.empIqama.aqamaType}"
styleClass = "input"
required = "true"
requiredMessage = "#{msg['iqamatype_msg']}"
style = "font-weight:bold" />
在托管bean中
public Tbl_aqama getEmpIqama() {
return empIqama;
}
public void setEmpIqama(Tbl_aqama empIqama) {
this.empIqama = empIqama;
}
答案 0 :(得分:0)
请检查以下内容, 1)bean manageEmployee被正确声明。通过注释(@ManagedBean)或使用faces-config.xml。 2)确保对象empIqama不为空。
如果仍未解决,请分享一些代码段。
答案 1 :(得分:0)
JSF / EL不设置/创建嵌套属性。鉴于这种结构,
value="#{manageEmployee.empIqama.aqamaType}"
所有EL基本上都是以下内容:
manageEmployee.getEmpIqama().setAqamaType(input.getValue());
看,它在任何地方都没有setEmpIqama()
。你必须准备你自己。您的具体问题是getEmpIqama()
返回null
,这使setAqamaType()
调用无法进行。错误消息也正好说明了这一点。
准备它的最明智的地方是与视图关联的请求/视图范围bean的(post)构造函数,在本例中是#{manageEmployee}
bean背后的类:
@PostConstruct
public void init() {
empIqama = new Tbl_aqama();
}
请注意,此构造中完全不需要setter。它从未被JSF / EL使用过。你可以安全地删除它。