百度广告
1.在里的的action不执行
很多时候是在包含页面的情况下被用到(例如包含一个导航页面),而被包含的页面里如果有非JSF标签(如)的时候,必须额外使用包含它才不会报错。问题是包含的内容是不算在JSF标签的Component Tree里的,因此这里的的action就不会被执行了。解决的办法是不要在里用,即尽量全部使用JSF标签比较不容易出问题。
2.还是在里,action属性的方法虽然执行了,但不能转到faces-config里定义的目标页面
检查faces-config.xml里,如果页面被包含的话,则可能应为"/*",而不是如"/navigatorbar.jspx"这样。
3.结合EMF使用时,页面抛出找不到属性异常"Error getting property 'xxx' from bean of type XXXX"
EMF生成的XXXImpl里的构造方法是protected修饰的,改为public即可。(注意修改@generated修饰,否则下次重新生成时会被覆盖回来)
严重: Servlet.service() for servlet faces threw exception
property 'xxx' from bean of type XXXX
(PropertyResolverImpl.java:107)
(ArraySuffix.java:167)
(ComplexValue.java:151)
evaluate(ExpressionEvaluatorImpl.java:243)
(ValueBindingImpl.java:173)
(ValueBindingImpl.java:154)
getProperty(FacesBeanImpl.java:66)
getProperty(UIXComponentBase.java:1100)
getValue(UIXIterator.java:415)
._flushCachedModel(UIXCollection.java:1127)
encodeBegin(UIXCollection.java:511)
UINode._renderComponent(UIComponentUINode.java:317)
UINode.render(UIComponentUINode.java:279)
4、从session里删除一个bean
ValueBinding binding = FacesContext.getCurrentInstance()
binding.setValue(context, null);
点击加载更多评论>>