0

我在将旧应用程序从 MyFaces 1.1 迁移到 MyFaces 1.2 时遇到问题。在旧应用程序中,如果有一个 ManagedBean exampleMBean,我可以通过 ${exampleMBean.somePropertie} 读取这些属性,但是在将 MyFaces 迁移到 MyFaces 1.2 后,这种访问不起作用,总是返回 null。

如果我尝试使用,那么这不起作用。标记无法检索 ${exampleMBean.someValue} 值。为了解决这个问题,我将 c:if 测试事件替换为 t:div 渲染 =“#{exampleMBean.someValue}”,现在可以工作了。

如果我尝试使用具有显式值的 JSTL 标记,它们会起作用,但是当我尝试访问“jsf 上下文”时,无法检索到该值。

我正在使用 JBoss 4.2.3 并且我的项目将 org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL 设置为 true 以使用我的项目附带的 myfaces 库。

提前致谢。

4

1 回答 1

0

我已经解决了在两个上下文中“启动”bean 的问题,实际上我只是在 ManagedBeans 超类中创建了一个“create”方法并调用它,这个方法启动 bean 并将它扔到两个上下文 JSP 和 JSF 中。可能不是一个“聪明”的解决方案,但将是暂时的。

于 2012-07-13T13:02:07.247 回答