[cdi-dev] New Servlet related scope - @UpgradeScoped (?)

Pavel Bucek pavel.bucek at oracle.com
Thu Dec 4 03:28:07 EST 2014


Hello Arjan,

On 03/12/14 19:44, arjan tijms wrote:
> Hi,
>
> On Wednesday, December 3, 2014, Pavel Bucek <pavel.bucek at oracle.com 
> <mailto:pavel.bucek at oracle.com>> wrote:
>
>     Hi all,
>
>     I'm trying to figure out how to solve issue in JSR 356 - Java API for
>     WebSocket, related to CDI scope usable from WebSocket endpoints.
>     Problem
>     is, that "standard" scopes do not apply, because there is no
>     @RequestScoped (http response is already sent), HttpSession does not
>     need to be created and the rest does not seem to be applicable, ...
>
>     I believe that CDI specification should define @UpgradeScoped, which
>     would cover usages of HttpUpgradeHandler from Servlet API.
>     (Similarly as
>     it does for @RequestScoped, @SessionScoped, ... )
>
>
> Wouldn't it be a better option to have WebSocket define that scope, 
> using CDI to implement it?

That is one possibility, but @UpgradeScoped would be more general than 
just for WebSocket - it would apply for all HTTP/1.1+ Upgrade 
applications. In my eyes, it is something which was forgotten to do in 
Java EE 7 release, since HttpUpgradeHandler was introduced in it.

Also please note, that other Servlet related scopes are already in CDI 
spec, so it seems like it belongs there more than anywhere else. This 
might have multiple reasons - for example, you can easily define 
relationship between @UpgradeScoped and others, already existing ones. 
In this sense, CDI specification now depends on Servlet API (it 
references some of the classes defined in it), but Servlet does not do 
that for CDI. I don't think that Servlet spec should introduce similar 
dependency just because of new scope.

Thanks,
Pavel

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/cdi-dev/attachments/20141204/a0d3df36/attachment.html 


More information about the cdi-dev mailing list