我们刚刚将Weblogic服务器从12.1.3升级到12.2.1.4。在使用RequestDispatcher进行第一次转发()之后,我得到了一个NPE。
在阅读了互联网上的一些材料后,我尝试了以下解决方案:
-
Put"-Dorg.apache.el.parser.COERCE_TO_ZERO=true";在启动脚本的JAVA_OPTIONS中
我读到EL 3.3.0改变了它处理null的方式,所以我尝试了这个,但它不起作用 -
在我的webapp的WEB-INF/lib中从JSF 2.1.28升级到JSF 2.2.0
我得到了相同的错误 -
升级至el-api-2.2.1-b03.jar,然后在我的weblogic.xml-中添加这些行
<prefer-web-inf-classes>false</prefer-web-inf-classes>
<prefer-application-packages>
<package-name>javax.faces.*</package-name>
<package-name>com.sun.faces.*</package-name>
<package-name>com.bea.faces.*</package-name>
<package-name>javax.el.*</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>javax.el.*</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>
--这给了我一个全新的java.lang.LinkageError,所以我再次删除了2行
- 我还将IceFaces EE 3.3.0从PA3更新为PA7
即使在更新后我也会收到同样的错误
有人能告诉我下一步应该检查什么或我可能遗漏了什么吗?我刚刚开始学习这个任务的weblogic.xml配置,所以请把我当作新手来对待,并指出任何新手的错误。谢谢!=)
以下是显示错误的最新日志条目:
由位于的java.lang.NullPointerException引起com.sun.faces.facelets.tag.TagAttributeImpl.getBoolean(TagAttributeImpl.java:150)~[jsf-impl--2.2.0.jar:2.2.0]javax.faces.view.facelets.DelegatingMetaTagHandler.isDisabled(DelegatingMetaTagHandler.java:81)~[jsf-api-2.2.0.jar:2.2]com.sun.faces.facelets.tag.jsf.ValidatorTagHandlerDelegateImpl.applyAttachedObject(ValidatorTagHandler Delegateimpl.java:113)~[jsf-impl--2.2.0.jar:2.2.0]com.sun.faces.facelets.tag.jsf.ValidatorTagHandlerDelegateImpl.applyNested(ValidatorTagHandler Delegateimpl.java:212)~[jsf-impl--2.2.0.jar:2.2.0]com.sun.faces.facelets.tag.jsf.ValidatorTagHandlerDelegateImpl.apply(ValidatorTagHandler Delegateimpl.java:88)~[jsf-impl--2.2.0.jar:2.2.0]javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)~[jsf-api-2.2.0.jar:2.2]com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandler Delegateimpl.java:190)~[jsf-impl--2.2.0.jar:2.2.0]javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)~[jsf-api-2.2.0.jar:2.2]com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandler Delegateimpl.java:190)~[jsf-impl--2.2.0.jar:2.2.0]javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)~[jsf-api-2.2.0.jar:2.2]com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandler Delegateimpl.java:190)~[jsf-impl--2.2.0.jar:2.2.0]javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)~[jsf-api-2.2.0.jar:2.2]com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandler Delegateimpl.java:190)~[jsf-impl--2.2.0.jar:2.2.0]javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)~[jsf-api-2.2.0.jar:2.2]com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandler Delegateimpl.java:190)~[jsf-impl--2.2.0.jar:2.2.0]javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)~[jsf-api-2.2.0.jar:2.2]com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandler Delegateimpl.java:190)~[jsf-impl--2.2.0.jar:2.2.0]javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)~[jsf-api-2.2.0.jar:2.2]javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)~[jsf-api-2.2.0.jar:2.2]com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)~[jsf-impl--2.2.0.jar:2.2.0]com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87)~[jsf-impl--2.2.0.jar:2.2.0]com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:161)~[jsf-impl--2.2.0.jar:2.2.0]com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandingStrategy.java:972)~[jsf-impl--2.2.0.jar:2.2.0]com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResonsePhase.java:99)~[jsf-impl--2.2.0.jar:2.2.0]com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)~[jsf-impl--2.2.0.jar:2.2.0]com.sun.faces.lifecycle.Impl.render(LifecycleImpl.java:219)~[jsf-impl--2.2.0.jar:2.2.0]javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)~[jsf-api-2.2.0.jar:2.2]。。。32个以上
我通过编辑我的weblogic.xml来删除以下项来修复此问题:<prefer-application-packages>
和CCD_ 2。
我仍然不能100%确定它为什么有效。<prefer-web-inf-classes>false</prefer-web-inf-classes>
告诉WLS从内置捆绑包中获取其包。因此,我猜测应用程序的WEB-INF/lib中以前用作覆盖的包在升级后不再正确。