javax.naming.NameNotFoundException:CDIExtension
我使用javax.naming.NameNotFoundException:CDIExtension,java,spring,jersey,websphere-liberty,Java,Spring,Jersey,Websphere Liberty,我使用com.sun.Jersey.spi.spring.container.servlet.SpringServlet创建了两个Jersey servlet项目。我用泽西1.19.1罐。这两个项目在lib文件夹中都有依赖的jar。我在liberty 9服务器上部署了这两个项目。 当我尝试访问端点时,一个项目可以正常工作,但另一个项目不行。若第二个项目不工作,我在控制台中有以下异常。如果我单独重新启动该项目(而不是服务器),它就会工作。我不知道为什么,我试图找到永久的解决办法 SRVE0271E
com.sun.Jersey.spi.spring.container.servlet.SpringServlet
创建了两个Jersey servlet项目。我用泽西1.19.1罐。这两个项目在lib文件夹中都有依赖的jar。我在liberty 9服务器上部署了这两个项目。当我尝试访问端点时,一个项目可以正常工作,但另一个项目不行。若第二个项目不工作,我在控制台中有以下异常。如果我单独重新启动该项目(而不是服务器),它就会工作。我不知道为什么,我试图找到永久的解决办法 SRVE0271E:Uncaught init()异常由servlet[jersey servlet]在应用程序[secondproject]中创建:java.lang.RuntimeException:javax.naming.NameNotFoundException:CDIExtension SRVE0315E:发生异常:java.lang.Throwable:javax.servlet.ServletException:SRVE0207E:由servlet创建的未捕获初始化异常 如果第一个项目不工作,我会在控制台中看到下面的异常 SRVE0271E:servlet[jersey servlet]在应用程序[firstproject]:java.lang.ClassCastException:com.sun.jersey.server.impl.cdi.CDIExtension中创建的未捕获init()异常与com.sun.jersey.server.impl.cdi.CDIExtension不兼容 SRVE0276E:初始化Servlet[jersey Servlet]时出错:javax.Servlet.ServletException:SRVE0207E:由Servlet创建的未捕获初始化异常 使用完整堆栈更新:
java.lang.RuntimeException: javax.naming.NameNotFoundException: CDIExtension
at com.sun.jersey.server.impl.cdi.CDIExtension.getInitializedExtension(CDIExtension.java:183)
at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactory.<init>(CDIComponentProviderFactory.java:95)
at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactoryInitializer.initialize(CDIComponentProviderFactoryInitializer.java:76)
at com.sun.jersey.spi.container.servlet.WebComponent.configure(WebComponent.java:572)
at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.configure(ServletContainer.java:332)
at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:604)
at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:207)
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394)
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577)
at javax.servlet.GenericServlet.init(GenericServlet.java:244)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:332)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.loadOnStartupCheck(ServletWrapper.java:1428)
at com.ibm.ws.webcontainer.webapp.WebApp.doLoadOnStartupActions(WebApp.java:1181)
at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinally(WebApp.java:1149)
at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:1055)
at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:6499)
at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.startWebApp(DynamicVirtualHost.java:446)
at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.createRunnableHandler(DynamicVirtualHost.java:248)
at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.createRunnableHandler(DynamicVirtualHost.java:313)
at com.ibm.ws.http.internal.VirtualHostImpl.discriminate(VirtualHostImpl.java:251)
at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink.ready(HttpDispatcherLink.java:300)
at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:471)
at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.handleNewRequest(HttpInboundLink.java:405)
at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.processRequest(HttpInboundLink.java:285)
at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.ready(HttpInboundLink.java:256)
at com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:174)
at com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:83)
at com.ibm.ws.tcpchannel.internal.WorkQueueManager.requestComplete(WorkQueueManager.java:504)
at com.ibm.ws.tcpchannel.internal.WorkQueueManager.attemptIO(WorkQueueManager.java:574)
at com.ibm.ws.tcpchannel.internal.WorkQueueManager.workerRun(WorkQueueManager.java:929)
at com.ibm.ws.tcpchannel.internal.WorkQueueManager$Worker.run(WorkQueueManager.java:1018)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.lang.Thread.run(Thread.java:785)
Caused by: javax.naming.NameNotFoundException: CDIExtension
at com.ibm.ws.jndi.internal.ContextNode.lookup(ContextNode.java:218)
at com.ibm.ws.jndi.internal.WSContext.lookup(WSContext.java:297)
at com.ibm.ws.jndi.WSContextBase.lookup(WSContextBase.java:62)
at com.sun.jersey.server.impl.cdi.CDIExtension.getInitializedExtension(CDIExtension.java:181)
... 33 more
Caused by: java.lang.ClassCastException: com.sun.jersey.server.impl.cdi.CDIExtension incompatible with com.sun.jersey.server.impl.cdi.CDIExtension
at com.sun.jersey.server.impl.cdi.CDIExtension.getInitializedExtension(CDIExtension.java:181)
at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactory.<init>(CDIComponentProviderFactory.java:95)
at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactoryInitializer.initialize(CDIComponentProviderFactoryInitializer.java:76)
at com.sun.jersey.spi.container.servlet.WebComponent.configure(WebComponent.java:572)
at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.configure(ServletContainer.java:332)
at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:604)
at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:207)
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394)
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577)
at javax.servlet.GenericServlet.init(GenericServlet.java:244)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:332)
... 1 more
java.lang.RuntimeException:javax.naming.NameNotFoundException:CDIExtension
位于com.sun.jersey.server.impl.cdi.CDIExtension.getInitializedExtension(CDIExtension.java:183)
位于com.sun.jersey.server.impl.cdi.CDIComponentProviderFactory。(CDIComponentProviderFactory.java:95)
位于com.sun.jersey.server.impl.cdi.CDIComponentProviderFactoryInitializer.initialize(CDIComponentProviderFactoryInitializer.java:76)
位于com.sun.jersey.spi.container.servlet.WebComponent.configure(WebComponent.java:572)
位于com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.configure(ServletContainer.java:332)
位于com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:604)
位于com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:207)
位于com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394)
位于com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577)
位于javax.servlet.GenericServlet.init(GenericServlet.java:244)
位于com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:332)
位于com.ibm.ws.webcontainer.servlet.ServletWrapper.loadOnStartupCheck(ServletWrapper.java:1428)
位于com.ibm.ws.webcontainer.webapp.webapp.doLoadOnStartupActions(webapp.java:1181)
位于com.ibm.ws.webcontainer.webapp.webapp.commonInitializationFinally(webapp.java:1149)
位于com.ibm.ws.webcontainer.webapp.webapp.initialize(webapp.java:1055)
位于com.ibm.ws.webcontainer.webapp.webapp.initialize(webapp.java:6499)
位于com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.startWebApp(DynamicVirtualHost.java:446)
位于com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.createRunnableHandler(DynamicVirtualHost.java:248)
位于com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.createRunnableHandler(DynamicVirtualHost.java:313)
位于com.ibm.ws.http.internal.VirtualHostImpl.discrime(VirtualHostImpl.java:251)
位于com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink.ready(HttpDispatcherLink.java:300)
位于com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:471)
位于com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.handleNewRequest(HttpInboundLink.java:405)
位于com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.processRequest(HttpInboundLink.java:285)
位于com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.ready(HttpInboundLink.java:256)
在com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.sendToDiscriminators上(NewConnectionInitialReadCallback.java:174)
在com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:83)上
位于com.ibm.ws.tcpchannel.internal.WorkQueueManager.requestComplete(WorkQueueManager.java:504)
位于com.ibm.ws.tcpchannel.internal.WorkQueueManager.attemptIO(WorkQueueManager.java:574)
位于com.ibm.ws.tcpchannel.internal.WorkQueueManager.workerRun(WorkQueueManager.java:929)
位于com.ibm.ws.tcpchannel.internal.WorkQueueManager$Worker.run(WorkQueueManager.java:1018)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
运行(Thread.java:785)
原因:javax.naming.NameNotFoundException:CDIExtension
在com.ibm.ws.jndi.internal.ContextNode.lookup(ContextNode.java:218)上
位于com.ibm.ws.jndi.internal.WSContext.lookup(WSContext.java:297)
位于com.ibm.ws.jndi.WSContextBase.lookup(WSContextBase.java:62)
位于com.sun.jersey.server.impl.cdi.CDIExtension.getInitializedExtension(CDIExtension.java:181)
... 33多
原因:java.lang.ClassCastException:com.sun.jersey.server.impl.cdi.CDIExtension与com.sun.jersey.server.impl.cdi.CDIExtension不兼容
位于com.sun.jersey.server.impl.cdi.CDIExtension.getInitializedExtension(CDIExtension.java:181)
位于com.sun.jersey.server.impl.cdi.CDIComponentProviderFactory。(CDIComponentProviderFactory.java:95)
位于com.sun.jersey.server.impl.cdi.CDIComponentProviderFactoryInitializer.initialize(CDIComponentProviderFactoryInitializer.java:76)
位于com.sun.jersey.spi.container.servlet.WebComponent.configure(WebComponent.java:572)
位于com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.configure(Serv
Caused by: java.lang.ClassCastException: com.sun.jersey.server.impl.cdi.CDIExtension incompatible with com.sun.jersey.server.impl.cdi.CDIExtension
javax.naming.NameNotFoundException: Unable to resolve 'com.sun.jersey.config.CDIExtension'. Resolved 'com.sun.jersey.config'; remaining name 'CDIExtension'
import javax.enterprise.context.RequestScoped;
@RequestScoped
public class SampleServices {
@EJB
CalcBeanLocal calcBean;
.....
@stateless
public class SampleServices {
@EJB
CalcBeanLocal calcBean;
.....