我试图让应用程序在websphere上运行,而eclipse显示我没有错误。尽管如此,当我尝试启动应用程序时,我收到一条错误消息,指出Web应用程序无法启动,因为org.apache.myfaces.ee6.MyFacesContainerInitializer
无法转换为接口javax.servlet.ServletContainerInitializer
。我做了一些挖掘,发现MyFacesContainerInitializer实现了ServletContainerInitializer,所以我知道这不是一个问题,因为它是一个预期实现它的子类,但不是。据我所知,没有理由这会失败。我错过了什么?
如果有帮助,这是我尝试运行应用程序时的结果。
[ERROR ] SRVE0015E: Failure to initialize Web application MEFILESWeb
java.util.ServiceConfigurationError: javax.servlet.ServletContainerInitializer: Provider org.apache.myfaces.ee6.MyFacesContainerInitializer could not be instantiated: java.lang.ClassCastException: Cannot cast class org.apache.myfaces.ee6.MyFacesContainerInitializer to interface javax.servlet.ServletContainerInitializer
at java.util.ServiceLoader.fail(ServiceLoader.java:235)
at java.util.ServiceLoader.access$100(ServiceLoader.java:192)
at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:381)
at java.util.ServiceLoader$1.next(ServiceLoader.java:449)
at com.ibm.ws.webcontainer.webapp.WebApp.initializeServletContainerInitializers(WebApp.java:2058)
at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:743)
at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:5779)
at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.createRunnableHandler(DynamicVirtualHost.java:249)
at [internal classes]
正如Sheetal所说,问题在于我缺少WebSphere库中的一些文件。一旦他们被放入,问题就消失了。
答案 0 :(得分:1)
我的websphere文件夹中缺少一些.object和.properties文件。当我把它们放在项目中运行正常。特定文件在项目文件夹下的eclipse中可见。这个答案将尽快被接受,不再需要答案。