Java TomEE:为servlet jersey serlvet分配异常

Java TomEE:为servlet jersey serlvet分配异常,java,servlets,apache-tomee,Java,Servlets,Apache Tomee,我在调用Tomee1.7.2中的RESTWebService时遇到以下异常 SEVERE: Allocate exception for servlet JerseyServlet javax.naming.NameNotFoundException: Name [com] is not bound in this Context. Unable to find [com]. at org.apache.naming.NamingContext.lookup(NamingContext.

我在调用Tomee1.7.2中的RESTWebService时遇到以下异常

SEVERE: Allocate exception for servlet JerseyServlet
javax.naming.NameNotFoundException: Name [com] is not bound in this Context. Unable to find [com].
    at org.apache.naming.NamingContext.lookup(NamingContext.java:819)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:167)
    at org.apache.naming.SelectorContext.lookup(SelectorContext.java:156)
    at javax.naming.InitialContext.lookup(InitialContext.java:411)
    at com.sun.jersey.server.impl.cdi.CDIExtension$2.stepInto(CDIExtension.java:290)
    at com.sun.jersey.server.impl.cdi.CDIExtension.diveIntoJNDIContext(CDIExtension.java:267)
    at com.sun.jersey.server.impl.cdi.CDIExtension.lookupJerseyConfigJNDIContext(CDIExtension.java:287)
    at com.sun.jersey.server.impl.cdi.CDIExtension.getInitializedExtension(CDIExtension.java:175)
    at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactory.<init>(CDIComponentProviderFactory.java:92)
    at com.sun.jersey.server.impl.cdi.CDIComponentProviderFactoryInitializer.initialize(CDIComponentProviderFactoryInitializer.java:75)
    at com.sun.jersey.spi.container.servlet.WebComponent.configure(WebComponent.java:572)
    at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.configure(ServletContainer.java:312)
    at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:604)
    at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:210)
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:374)
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:557)
    at javax.servlet.GenericServlet.init(GenericServlet.java:158)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1284)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197)
    at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:864)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:134)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:44)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
SEVERE:为servlet分配异常
javax.naming.NameNotFoundException:Name[com]在此上下文中未绑定。找不到[com]。
位于org.apache.naming.NamingContext.lookup(NamingContext.java:819)
位于org.apache.naming.NamingContext.lookup(NamingContext.java:167)
在org.apache.naming.SelectorContext.lookup(SelectorContext.java:156)上
在javax.naming.InitialContext.lookup(InitialContext.java:411)
位于com.sun.jersey.server.impl.cdi.CDIExtension$2.stepInto(CDIExtension.java:290)
位于com.sun.jersey.server.impl.cdi.CDIExtension.diveIntoJNDIContext(CDIExtension.java:267)
位于com.sun.jersey.server.impl.cdi.CDIExtension.lookupJerseyConfigJNDIContext(CDIExtension.java:287)
位于com.sun.jersey.server.impl.cdi.CDIExtension.getInitializedExtension(CDIExtension.java:175)
位于com.sun.jersey.server.impl.cdi.CDIComponentProviderFactory。(CDIComponentProviderFactory.java:92)
位于com.sun.jersey.server.impl.cdi.CDIComponentProviderFactoryInitializer.initialize(CDIComponentProviderFactoryInitializer.java:75)
位于com.sun.jersey.spi.container.servlet.WebComponent.configure(WebComponent.java:572)
位于com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.configure(ServletContainer.java:312)
位于com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:604)
位于com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:210)
位于com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:374)
位于com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:557)
位于javax.servlet.GenericServlet.init(GenericServlet.java:158)
位于org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1284)
位于org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197)
位于org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:864)
位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:134)
位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
位于org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:44)
位于org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
位于org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
位于org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
位于org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
位于org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
位于org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
位于org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
位于org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
运行(Thread.java:745)
我在web.xml中将servlet定义为

<servlet>
    <servlet-name>JerseyServlet</servlet-name>
    <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
    <init-param>
        <param-name>com.sun.jersey.config.property.packages</param-name>
        <param-value>com.edifixio.osrd.web.mogui.restfulws</param-value>
    </init-param>
   <!--  <init-param>
        <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
        <param-value>true</param-value>
    </init-param> -->
</servlet>
<servlet-mapping>
    <servlet-name>JerseyServlet</servlet-name>
    <url-pattern>/rest/*</url-pattern>
</servlet-mapping>

球衣
com.sun.jersey.spi.container.servlet.ServletContainer
com.sun.jersey.config.property.packages
com.edifixio.osrd.web.mogui.restfulws
球衣
/休息/*
我如何解决这个问题


注意:它在weblogic服务器中运行良好,如果我删除web.xml中的servlet声明,它在TomEE中也运行良好。

我已经通过

(一) 从
[TomEE_HOME]/conf/catalina.properties
文件的
common.loader
中删除
jersey-bundle-1.17.1.jar
,并

2) 增加

[TomEE\u HOME]\conf\system.properties

3) 从
[TomEE_HOME]/lib中删除
jersey-core-1.17.1
jersey-json-1.17.1
jersey-server-1.17.1
jersey-servlet-1.17.1

我在github中共享了示例项目


存储库位置:
https://github.com/UnknownU/TomeeRestfulWs.git

从servlet的init()-Methode抛出异常。它与web.xml本身没有任何关系。但我如何解决这个问题?
 openejb.api.javax.ws.rs.Path.validation=false
 com.sun.jersey.server.impl.cdi.lookupExtensionInBeanManager=true