2013-05-08 62 views
1

我試圖在運行JSF2/PrimeFaces應用程序的WebSphere 6.1 和我的配置如下:沒有意識到的init()異常由servlet的拋出面臨的Servlet:顯示java.lang.NullPointerException

  • 類加載器順序:首先使用應用程序類加載器加載的類。
  • WAR類加載政策:類加載器的應用程序中每個WAR文件。

如下:

all-themes-1.0.9 
aopalliance-1.0 
com.springsource.org.apache.commons.logging-1.1.1 
commons-beanutils-1.8.3 
commons-codec-1.3 
commons-collections-3.2 
commons-io-1.3.2 
commons-lang-2.3 
commons-logging-1.1.1 
jsf-api-2.1.20 
jsf-impl-2.1.20 
jstl-1.2 
log4j-1.2.16 
org.springframework.binding-2.3.1.RELEASE 
org.springframework.faces-2.3.1.RELEASE 
org.springframework.js-2.3.1.RELEASE 
org.springframework.web.servlet-3.1.1.RELEASE 
org.springframework.webflow-2.3.1.RELEASE 
primefaces-4.0-20130427.150835-5 
slf4j-api-1.6.4 
slf4j-log4j12-1.6.4 
spring-aop-3.1.2.RELEASE 
spring-asm-3.1.2.RELEASE 
spring-beans-3.1.2.RELEASE 
spring-context-3.1.2.RELEASE 
spring-context-support-3.1.2.RELEASE 
spring-core-3.1.2.RELEASE 
spring-expression-3.1.2.RELEASE 
spring-jdbc-3.1.2.RELEASE 
spring-orm-3.1.2.RELEASE 
spring-oxm-3.1.2.RELEASE 
spring-tx-3.1.2.RELEASE 
spring-web-3.1.2.RELEASE 
spring-webmvc-3.1.2.RELEASE 
spring-webmvc-portlet-3.1.2.RELEASE 
standard-1.1.2 

試圖訪問應用程序時,我得到異常:

SRVE0100E: Did not realize init() exception thrown by servlet Faces Servlet: java.lang.NullPointerException 
    at javax.faces.webapp.FacesServlet.init(FacesServlet.java:144) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:199) 
    at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init(ServletWrapper.java:319) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:393) 
    at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478) 
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:321) 
    at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:581) 
    at com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:113) 
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3391) 
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:267) 
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811) 
    at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1455) 
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:115) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387) 
    at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102) 
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165) 
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) 
    at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) 
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136) 
    at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195) 
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743) 
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873) 
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473) 

[5/8/13 14:25:37:291 AST] 0000002c ServletWrappe E Deregister the mbean because of uncaught init() exception thrown by servlet Faces Servlet: javax.servlet.ServletException: SRVE0207E: Uncaught initialization exception thrown by servlet 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:251) 
    at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init(ServletWrapper.java:319) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:393) 
    at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478) 
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:321) 
    at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:581) 
    at com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:113) 
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3391) 
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:267) 
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811) 
    at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1455) 
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:115) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387) 
    at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102) 
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165) 
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) 
    at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) 
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136) 
    at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195) 
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743) 
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873) 
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473) 
---- Begin backtrace for Nested Throwables 
java.lang.NullPointerException 
    at javax.faces.webapp.FacesServlet.init(FacesServlet.java:144) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:199) 
    at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init(ServletWrapper.java:319) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:393) 
    at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478) 
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:321) 
    at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:581) 
    at com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:113) 
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3391) 
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:267) 
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811) 
    at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1455) 
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:115) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387) 
    at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102) 
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165) 
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) 
    at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) 
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136) 
    at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195) 
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743) 
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873) 
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473) 
, 
[5/8/13 14:25:37:322 AST] 0000002c WebApp  E [Servlet Error]-[SRVE0207E: Uncaught initialization exception thrown by servlet]: java.lang.NullPointerException 
    at javax.faces.webapp.FacesServlet.init(FacesServlet.java:144) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:199) 
    at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init(ServletWrapper.java:319) 
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:393) 
    at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478) 
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:321) 
    at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:581) 
    at com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:113) 
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3391) 
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:267) 
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811) 
    at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1455) 
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:115) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458) 
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387) 
    at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102) 
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165) 
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) 
    at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) 
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136) 
    at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195) 
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743) 
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873) 
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473) 

請指教如何解決它,謝謝。

回答

1
> jsf-api-2.1.20 
> jsf-impl-2.1.20 

從JSF 2.1規範:

其他Java™平臺規範

JSF是基於以下的Java API規範:

  • 的JavaServer Pages™規範,版本2.1(JSP™)
  • 的Java Servlet的™規範,版本2.5(Servlet的)
  • Java™2平臺,標準版,5.0版
  • Java™2平臺,企業版,5.0版
  • 的JavaBeans™規範,版本1.0.1
  • 的JavaServer Pages™標準標記庫,版本1.2(JSTL)

因此,JSF容器必須支持上述所有 規格。

WebSphere Application Server 6.1是一個J2EE 1.4實現,只有supports Servlet 2.4

由於Java EE 6平臺通過規範支持JSF 2,因此理想情況下應該遷移到WAS 8。

+0

請問您可以告訴我什麼是可以使用servlet 2.4和WAS 6.1的最新JSF版本,JSF 2也可以在WAS 7上使用? – 2013-05-10 13:15:49

+1

JSF 1.1與WAS6.1兼容。 JSF 1.2需要servlet 2.5併發布Java EE 5(即WAS 7)。有些人報告[JSF 2在這裏工作在WAS 7上](http://stackoverflow.com/questions/1718934)。 – McDowell 2013-05-10 13:38:12

+0

我曾經得到JSF 2.0在Tomcat 5.5(Servlet 2.4)上工作:http://stackoverflow.com/questions/5998447/running-jsf-2-0-on-servlet-2-4-container/然而,這可能會不適用於WAS 6.x.更好地升級那頭史前獸。 – BalusC 2013-05-10 19:20:22

相關問題