Unable to inject a RequestScoped bean into a WebSocket server endpoint implementation

Solution Verified - Updated -

Issue

When trying to expose a WebSocket server endpoint which uses an injected RequestScoped bean. It seams that from a WebSocket server endpoint it is not possible to access to the request scope where the managed bean lives.

The exception that has been raised is as follows:

[org.jboss.example.websocket.WebSocketServerEndpoint] and the following error occurred: org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active contexts for scope type javax.enterprise.context.RequestScoped
    at org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:608) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1]
    at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:71) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1]
    at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79) [weld-core-1.1.28.Final-redhat-1.jar:1.1.28.Final-redhat-1]
    at org.jboss.example.managedbeans.HelloManagedBean$Proxy$_$$_WeldClientProxy.sayHello(HelloManagedBean$Proxy$_$$_WeldClientProxy.java) [classes:]
    at org.jboss.example.websocket.WebSocketServerEndpoint.onOpen(WebSocketServerEndpoint.java:33) [classes:]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_25]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_25]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_25]
    at java.lang.reflect.Method.invoke(Method.java:483) [rt.jar:1.8.0_25]
    at org.apache.tomcat.websocket.pojo.PojoEndpointBase.doOnOpen(PojoEndpointBase.java:68) [jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
    at org.apache.tomcat.websocket.pojo.PojoEndpointServer.onOpen(PojoEndpointServer.java:78) [jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
    at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.init(WsHttpUpgradeHandler.java:132) [jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:354) [jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
    at org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:355) [jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
    at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:911) [jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
    at org.apache.tomcat.util.net.NioEndpoint$ChannelProcessor.run(NioEndpoint.java:936) [jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_25]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_25]
    at org.apache.tomcat.util.net.NioEndpoint$DefaultThreadFactory$1$1.run(NioEndpoint.java:1249) [jbossweb-7.5.4.Final-redhat-1.jar:7.5.4.Final-redhat-1]
    at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_25]

Environment

  • Red Hat JBoss Enterprise Application Platform 6.4.0 Beta
  • Red Hat JBoss Enterprise Application Platform 6.3.3

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.