Jakarta ee 带有JBoss 7.1.1的EJB导致焊接001303错误
我正在尝试发出一个get请求,该请求导致WELD 001303问题。 @路径(“/test”) @请求范围 公共类TestRest{Jakarta ee 带有JBoss 7.1.1的EJB导致焊接001303错误,jakarta-ee,ejb,jboss7.x,sip,jboss-weld,Jakarta Ee,Ejb,Jboss7.x,Sip,Jboss Weld,我正在尝试发出一个get请求,该请求导致WELD 001303问题。 @路径(“/test”) @请求范围 公共类TestRest{ @EJB HelloWorldInterface helloWorld; @GET @Path("/get") public Response get() { return Response.status(201).entity(helloWorld.sayHello()).build(); }
@EJB
HelloWorldInterface helloWorld;
@GET
@Path("/get")
public Response get() {
return Response.status(201).entity(helloWorld.sayHello()).build();
}
@POST
@Path("/post")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Response post(String request) {
String answer = helloWorld.sayHello() + request;
return Response.status(201).entity(answer).build();
}
}
使用:mss-1.7.0FINAL-jboss-as-7.1.1.FINAL from
我需要这个MSS包来支持sip
我的项目作为和项目作为
工作流程:
1. install mss package
2. start mss/jboss server with sip support (standalone-sip.xml) and deploy project
3. open http://127.0.0.1:8080/my-sipapp/rest/test/get
-->`org.jboss.resteasy.spi.UnhandledException:org.jboss.weld.context.contextNotActivieException:weld-001303作用域类型javax.enterprise.context.RequestScoped没有活动上下文
org.jboss.resteasy.core.SynchronousDispatcher.handleApplicationException(SynchronousDispatcher.java:340)
org.jboss.resteasy.core.SynchronousDispatcher.handleException(SynchronousDispatcher.java:214)
org.jboss.resteasy.core.SynchronousDispatcher.handleInvokerException(SynchronousDispatcher.java:190)
org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:540)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:502)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:119)
org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
javaservlet.http.HttpServlet.service(HttpServlet.java:847)
org.jboss.weld.servlet.ConversationPropagationFilter.doFilter(ConversationPropagationFilter.java:62)
根本原因
org.jboss.weld.context.contextNotActivieException:weld-001303作用域类型javax.enterprise.context.RequestScoped没有活动上下文
org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:598)
org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:71)
org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79)
com.mycompany.app.rest.TestRest$Proxy$\u$$WeldClientProxy.get(TestRest$Proxy$$$$\uWeldClientProxy.java)
sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)
invoke(NativeMethodAccessorImpl.java:57)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:601)
org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:155)
org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:257)
org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:222)
org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:211)
org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:525)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:502)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:119)
org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
javaservlet.http.HttpServlet.service(HttpServlet.java:847)
org.jboss.weld.servlet.ConversationPropagationFilter.doFilter(ConversationPropagationFilter.java:62)`有两种解决方案。您可以等待weld-core-1.1.8.FINAL.jar更新!或者获取源代码并在org.jboss.weld.context.AbstractBoundContext中进行硬修复:
public void deactivate() {
if (getBeanStore() != null )
{ getBeanStore().detach(); super.deactivate(); }
}
有关更多信息,请参见共有2种解决方案。请等待weld-core-1.1.8.FINAL.jar更新!或者获取源代码并在org.jboss.weld.context.AbstractBoundContext中进行硬修复:
public void deactivate() {
if (getBeanStore() != null )
{ getBeanStore().detach(); super.deactivate(); }
}
有关更多信息,请参阅