我一直在尝试使此安装程序运行几天,但仍然没有运气。这是我一直在使用的测试应用程序:
@Named
@RequestScoped
public class Test {
private String test = "test";
public String getTest() { return test; }
public void setTest(String test) { this.test = test; }
}
并在jsf页面中:
<h:outputText value="#{test.test}"/>
在没有MyFaces的情况下运行此示例可以很好地工作(可以像应该的那样进行“测试”),但是当我在WAR文件中部署MyFaces并在weblogic.xml中进行必要的配置时,CDI似乎无法正常工作(或者至少在JSF和CDI),则输出html中不显示任何内容。不过,MyFaces本身似乎还可以。
我的基本配置如下:
Weblogic.xml的内容:
<prefer-application-packages>
<package-name>javax.faces.*</package-name>
<package-name>com.sun.faces.*</package-name>
<package-name>com.bea.faces.*</package-name>
</prefer-application-packages>
<prefer-application-resources>
<resource-name>javax.faces.*</resource-name>
<resource-name>com.sun.faces.*</resource-name>
<resource-name>com.bea.faces.*</resource-name>
<resource-name>META-INF/services/javax.servlet.ServletContainerInitializer</resource-name>
<resource-name>META-INF/services/com.sun.faces.spi.FacesConfigResourceProvider</resource-name>
</prefer-application-resources>
到目前为止,我学到了什么:
到目前为止我尝试过的事情:
在保留CDI支持的同时在WL12c上使用MyFaces真的难吗,还是我只是错过了明显的机会?谢谢你的帮助。
最佳答案
恐怕没有办法。焊接胶代码必须存在。那些微小的集成层是wls可部署jsf库的一部分,不适用于myfaces...。