[
https://issues.jboss.org/browse/CDI-370?page=com.atlassian.jira.plugin.sy...
]
Jens Schumann commented on CDI-370:
-----------------------------------
While the current CDI spec maintains a strong relationship between RequestScoped and HTTP
i would not assume that RequestScoped is strictly bound to HTTP. The RequestScope
spec/javadoc lists 4 use cases with one being bound to HTTP and another one that may hint
a dependency to HTTP (because of JAX-RS, JAX-WS doesn't require HTTP). Especially the
availability in EJB method invocations and @PostConstruct tells me: RequestScopes lives
without HTTP just perfectly.
So RequestScoped should be available for WebSocket message delivery similar to the current
JMS/@Asynchronous support.
Personally I believe the sections "6.7.x {scope} context lifecycle" are already
too verbose. I have no profound knowledge of the Java EE specification process,
nevertheless I believe the scope lifecycle should be better covered by the Java EE
umbrella spec similar to security and transactions (Java Platform, Enterprise Edition
(Java EE) Specification, v7 and later). This way you can expanded the supported platform
specs without touching the CDI spec again.
Same applies to "2.4.1 Built-in scope types". The current wording "The
@RequestScoped, @ApplicationScoped and @SessionScoped annotations defined in Section 6.7
represent the standard scopes defined by the Java Servlets specification." does not
cover all supported use cases in 6.7.x and should relaxed (in a CDI 1.1 maintenance
release i guess).
Expand @RequestScoped and @SessionScoped to account for WebSocket
-----------------------------------------------------------------
Key: CDI-370
URL:
https://issues.jboss.org/browse/CDI-370
Project: CDI Specification Issues
Issue Type: Feature Request
Reporter: Joseph Snyder
We've been testing injection into a WebSocket endpoint.
@ReqestScoped objects are usable within the @OnOpen callback. This is because this object
is executed within a valid request scope.
However if you try to use the injected object from within the @OnMessage callback you get
a Weld error:
SEVERE: org.jboss.weld.context.ContextNotActiveException:
WELD-001303 No active contexts for scope type javax.enterprise.context.RequestScoped
Can the definition of when @RequestScoped is active be expanded to include a WebSocket
@OnMessage callback?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira