2014-02-27 70 views
0

我试图用这个在JSF动态地显示页面的标题。找不到属性在类型

<h:panelGroup rendered="#{not empty searchBean.fsResultsTitleOne}"><h2>#{msgs.fireStudySearchTitle}</h2></h:panelGroup> 

而且我得到这个错误:

rendered="#{not empty searchBean.fsResultsTitleOne}": Property 'fsResultsTitleOne' not found on type 

不过,我在定义它的类型是这样的:

private String fsResultsTitleOne; 
public String getFSResultsTitleOne(){return fsResultsTitleOne;} 
public void setFSResultsTitleOne(String newValue){fsResultsTitleOne = newValue;} 

,并将其设置的东西:

setFSResultsTitleOne("I'm not Empty!"); 

甚至用它来确保这将是SE T:

System.out.println("This is the FS Results Page Title: " + fsResultsTitleOne); 

而且它似乎是工作:

This is the FS Results Page Title: I'm not Empty! 

我是不是设置错了什么地方?

+0

试着用'FS'较低的情况下's'。这将是更多的Java bean常规。 –

+0

对于这背后的原因,请参阅[这个答案](http://stackoverflow.com/a/21987084/785663) – mabi

回答

2

变化

getFSResultsTitleOne 
setFSResultsTitleOne 

getFsResultsTitleOne 
setFsResultsTitleOne 
+0

伊克...哇。我觉得我做了一件更糟糕。这工作。公认。谢谢! – UndefinedReference

1

JSF如何访问在你的代码性能的方法是增加了一个“得到”属性名称与属性的第一个字母在帽子里。

E.g.如果你写在xhtml页面 -

value="#{myBean.name}" 

良好的编码风格说,你必须有私人财产与各自的getters和setters。所以JSF解析器,以访问属性将请求转换为以下各项

value = myBean.getName() 

注意,ñ是上限。

所以,如果你惹你做的属性的名称,解析器会很愿意抛出PropertNotFoundException。

相关问题