JSF中关于EL解析的问题
系统配置:sun的jsf + spring + hibernate
在faces-config.xml文件中如下内容:
<application>
<variable-resolver> org.springframework.web.jsf.DelegatingVariableResolver </variable-resolver>
</application>
jsp页面有如下内容:
<t:inputText id= "divisionName " value= "#{cm09304Bean.tmpExec.divisionName} " size= "30 " maxlength= "20 " />
其中,cm09304Bean-〉backing bean
tmpExec-〉cm09304Bean的成员变量
divisionName -〉tmpExec的成员变量
现象:
三层的EL表达式好像不被支持,总是出错。但是把tmpExec也配成backing bean问题就解决了。
配置如下:
<managed-bean>
<managed-bean-name> tmpExec </managed-bean-name>
<managed-bean-class> jp.go.smid.cm.model.TmpExec </managed-bean-class>
<managed-bean-scope> request </managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name> cm09304Bean </managed-bean-name>
<managed-bean-class> jp.go.smid.cm.web.CM09304Bean </managed-bean-class>
<managed-bean-scope> request </managed-bean-scope>
<managed-property>
<property-name> tmpExec </property-name>
<value> #{tmpExec} </value>
</managed-property>
</managed-bean>
请问这是怎么回事?难道jsf就不支持三层以上的EL表达式?还是我用的variable-resolver不对,或者是sun的jsf与Spring的variable-resolver不兼容?哪位大侠能帮帮忙?!谢谢!
------解决方案--------------------100层也支持的.我最多的时候用到了5级都可以正常使用的呀,不过配置是
把 <managed-bean-scope> request </managed-bean-scope>
改为 <managed-bean-scope> session </managed-bean-scope> .
------解决方案--------------------三层肯定是支持的,我现在就有用到。你的出错信息是什么
------解决方案--------------------你去确定
cm09304Bean-〉backing bean
中有tmpExec的get方法,和初始化??