1

我有一个 JSF 1.1 应用程序,它在 WAS 6.0 中运行良好,需要迁移到 WAS 7.0,但它会导致以下异常,即使我已经parent_last设置deployment.xml

Uncaught init() exception created by servlet Faces Servlet in application: 
java.lang.NullPointerException
    at javax.faces.webapp.FacesServlet.init(FacesServlet.java:144)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:325)**

这是如何引起的,我该如何解决?

4

1 回答 1

1

当找不到应用程序工厂时,您将在 JSF 1.1 中遇到此异常。这反过来又可能导致由于ConfigureListener某种原因没有运行。这通常会根据.tldJSF 库中的文件自动调用。您始终可以尝试通过将以下条目添加到 webapp 来强制 webapp 运行它web.xml

<listener>
    <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>

但是,我不保证它会完全解决问题。您现在可能会遇到不同的异常,需要单独调查和修复。

WAS 7.0 附带了 JSF 1.2,并且(精心设计的)JSF 1.1 代码在技术上与 JSF 1.2 100% 兼容,所以我宁愿建议在您的 web 应用程序中删除 JSF 1.1 库并将其更改faces-config.xml为 JSF 1.2兼容的。

于 2012-06-05T12:04:03.187 回答