Status of grizzly-http-servlet support in Grizzly 2.x

classic Classic list List threaded Threaded
24 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Status of grizzly-http-servlet support in Grizzly 2.x

Matthew Swift-3
Hi folks,

What is the status of the Servlet support in Grizzly 2.x? Is it pretty stable? At the moment it seems to have a dependency on Servlet 2.5 - do you plan to support Servlet 3.0 at some point[1], in particular the support for asynchronous processing?

Cheers :-)

Matt
[1] http://java.net/jira/browse/GRIZZLY-738 - this issue is pretty outdated and makes me nervous about the road map regarding this Grizzly module.
Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Marc Arens
Good point,

i'd be interested in servlet 3.0 and async processing, too.

On 08.08.2012 16:43, Matthew Swift wrote:

> Hi folks,
>
> What is the status of the Servlet support in Grizzly 2.x? Is it pretty
> stable? At the moment it seems to have a dependency on Servlet 2.5 - do
> you plan to support Servlet 3.0 at some point[1], in particular the
> support for asynchronous processing?
>
> Cheers :-)
>
> Matt
> [1] http://java.net/jira/browse/GRIZZLY-738 - this issue is pretty
> outdated and makes me nervous about the road map regarding this Grizzly
> module.
Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

oleksiys
Administrator
Hi guys,

if you have such a requirement, I can take a look at that asap.
It should be pretty easy to implement initial Servlet 3.0 startAsync
functionality, which is similar to Grizzly suspend/resume. The
asynchronous dispatch might be tricky, but as I understand you don't
need that part at the moment?

Thanks.

WBR,
Alexey.

On 08/08/2012 04:50 PM, Marc Arens wrote:

> Good point,
>
> i'd be interested in servlet 3.0 and async processing, too.
>
> On 08.08.2012 16:43, Matthew Swift wrote:
>> Hi folks,
>>
>> What is the status of the Servlet support in Grizzly 2.x? Is it pretty
>> stable? At the moment it seems to have a dependency on Servlet 2.5 - do
>> you plan to support Servlet 3.0 at some point[1], in particular the
>> support for asynchronous processing?
>>
>> Cheers :-)
>>
>> Matt
>> [1] http://java.net/jira/browse/GRIZZLY-738 - this issue is pretty
>> outdated and makes me nervous about the road map regarding this Grizzly
>> module.

Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Ryan Lubke-2
In reply to this post by Matthew Swift-3
On 8/8/12 7:43 AM, Matthew Swift wrote:
> Hi folks,
>
> What is the status of the Servlet support in Grizzly 2.x? Is it pretty
> stable? At the moment it seems to have a dependency on Servlet 2.5 -
> do you plan to support Servlet 3.0 at some point[1], in particular the
> support for asynchronous processing?
What would you guys think of initial support for Servlet 3.1?  The 3.0
async aspect we can support for sure, but if we moved to the 3.1 api, we
can expose the non-blocking I/O.  Is that of any interest?
>
> Cheers :-)
>
> Matt
> [1] http://java.net/jira/browse/GRIZZLY-738 - this issue is pretty
> outdated and makes me nervous about the road map regarding this
> Grizzly module.

Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Marc Arens
Hello Ryan,

Servlet 3.1 support sounds great to me! :D

On 08.08.2012 20:23, Ryan Lubke wrote:

> On 8/8/12 7:43 AM, Matthew Swift wrote:
>> Hi folks,
>>
>> What is the status of the Servlet support in Grizzly 2.x? Is it pretty
>> stable? At the moment it seems to have a dependency on Servlet 2.5 -
>> do you plan to support Servlet 3.0 at some point[1], in particular the
>> support for asynchronous processing?
> What would you guys think of initial support for Servlet 3.1?  The 3.0
> async aspect we can support for sure, but if we moved to the 3.1 api, we
> can expose the non-blocking I/O.  Is that of any interest?
>>
>> Cheers :-)
>>
>> Matt
>> [1] http://java.net/jira/browse/GRIZZLY-738 - this issue is pretty
>> outdated and makes me nervous about the road map regarding this
>> Grizzly module.
>

Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Matthew Swift-3
In reply to this post by oleksiys


On 8 August 2012 18:10, Oleksiy Stashok <[hidden email]> wrote:
Hi guys,

if you have such a requirement, I can take a look at that asap.
It should be pretty easy to implement initial Servlet 3.0 startAsync functionality, which is similar to Grizzly suspend/resume. The asynchronous dispatch might be tricky, but as I understand you don't need that part at the moment?


I think the startAsync support should be sufficient for my needs assuming it is equivalent to Grizzly's suspend/resume functionality. Excuse my ignorance here, but what is asynchronous dispatch in the context of the servlet 3.0 API? Are you referring to the AsyncContext#dispatch() related methods (http://docs.oracle.com/javaee/6/api/javax/servlet/AsyncContext.html#dispatch())? I'm not even sure that I understand what these methods are for, so I guess I don't need them ;-)

Basically, what I want to do is implement an HTTP<-->LDAP gateway. I don't really want forwarded LDAP requests blocking threads in the HTTP container for too long, hence I was looking at the async support in Servlet 3.0. 

Cheers,

Matt

Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Matthew Swift-3
In reply to this post by Ryan Lubke-2


On 8 August 2012 20:23, Ryan Lubke <[hidden email]> wrote:
On 8/8/12 7:43 AM, Matthew Swift wrote:
Hi folks,

What is the status of the Servlet support in Grizzly 2.x? Is it pretty stable? At the moment it seems to have a dependency on Servlet 2.5 - do you plan to support Servlet 3.0 at some point[1], in particular the support for asynchronous processing?
What would you guys think of initial support for Servlet 3.1?  The 3.0 async aspect we can support for sure, but if we moved to the 3.1 api, we can expose the non-blocking I/O.  Is that of any interest?


NIO support is something which is definitely of interest to me in the long term, however in the short term I need to maintain compatibility with existing J2EE 6 containers.

Cheers,

Matt
 
Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

oleksiys
Administrator
Hi guys,

I've commited initial Servlet 3.0-based implementation, it has to support asynchronous processing (including dispatch).
The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git branch "2.3.x".
I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo, so they have to be available soon.

Will appreciate if you can test the implementation and provide feedback.

Thanks.

WBR,
Alexey.

On 08/09/2012 02:15 PM, Matthew Swift wrote:


On 8 August 2012 20:23, Ryan Lubke <[hidden email]> wrote:
On 8/8/12 7:43 AM, Matthew Swift wrote:
Hi folks,

What is the status of the Servlet support in Grizzly 2.x? Is it pretty stable? At the moment it seems to have a dependency on Servlet 2.5 - do you plan to support Servlet 3.0 at some point[1], in particular the support for asynchronous processing?
What would you guys think of initial support for Servlet 3.1?  The 3.0 async aspect we can support for sure, but if we moved to the 3.1 api, we can expose the non-blocking I/O.  Is that of any interest?


NIO support is something which is definitely of interest to me in the long term, however in the short term I need to maintain compatibility with existing J2EE 6 containers.

Cheers,

Matt
 

Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

jbrisbin
Would this include support for web.xml-less configuration using things like Spring's WebInitializer?

Thanks!

Jon Brisbin
http://about.me/jbrisbin

On Aug 15, 2012, at 7:39 AM, Oleksiy Stashok wrote:

Hi guys,

I've commited initial Servlet 3.0-based implementation, it has to support asynchronous processing (including dispatch).
The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git branch "2.3.x".
I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo, so they have to be available soon.

Will appreciate if you can test the implementation and provide feedback.

Thanks.

WBR,
Alexey.

On 08/09/2012 02:15 PM, Matthew Swift wrote:


On 8 August 2012 20:23, Ryan Lubke <[hidden email]> wrote:
On 8/8/12 7:43 AM, Matthew Swift wrote:
Hi folks,

What is the status of the Servlet support in Grizzly 2.x? Is it pretty stable? At the moment it seems to have a dependency on Servlet 2.5 - do you plan to support Servlet 3.0 at some point[1], in particular the support for asynchronous processing?
What would you guys think of initial support for Servlet 3.1?  The 3.0 async aspect we can support for sure, but if we moved to the 3.1 api, we can expose the non-blocking I/O.  Is that of any interest?


NIO support is something which is definitely of interest to me in the long term, however in the short term I need to maintain compatibility with existing J2EE 6 containers.

Cheers,

Matt
 


Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

oleksiys
Administrator
Hi Jon,

On 08/15/2012 03:11 PM, Jon Brisbin wrote:
Would this include support for web.xml-less configuration using things like Spring's WebInitializer?
There is still no support of Servlet 3.0 annotations (working on that), is that what you meant?
The basic http-servlet module contains programmatic API only, which you can use to deploy Servlets/Filters.

Thanks.

WBR,
Alexey.


Thanks!

Jon Brisbin
http://about.me/jbrisbin

On Aug 15, 2012, at 7:39 AM, Oleksiy Stashok wrote:

Hi guys,

I've commited initial Servlet 3.0-based implementation, it has to support asynchronous processing (including dispatch).
The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git branch "2.3.x".
I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo, so they have to be available soon.

Will appreciate if you can test the implementation and provide feedback.

Thanks.

WBR,
Alexey.

On 08/09/2012 02:15 PM, Matthew Swift wrote:


On 8 August 2012 20:23, Ryan Lubke <[hidden email]> wrote:
On 8/8/12 7:43 AM, Matthew Swift wrote:
Hi folks,

What is the status of the Servlet support in Grizzly 2.x? Is it pretty stable? At the moment it seems to have a dependency on Servlet 2.5 - do you plan to support Servlet 3.0 at some point[1], in particular the support for asynchronous processing?
What would you guys think of initial support for Servlet 3.1?  The 3.0 async aspect we can support for sure, but if we moved to the 3.1 api, we can expose the non-blocking I/O.  Is that of any interest?


NIO support is something which is definitely of interest to me in the long term, however in the short term I need to maintain compatibility with existing J2EE 6 containers.

Cheers,

Matt
 



Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

oleksiys
Administrator
In reply to this post by oleksiys
Hi,

asynchronous I/O support (Servlet 3.1) is commited as well.
Your feedback is welcome :)

Thanks.

WBR,
Alexey.


On 08/15/2012 02:39 PM, Oleksiy Stashok wrote:
Hi guys,

I've commited initial Servlet 3.0-based implementation, it has to support asynchronous processing (including dispatch).
The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git branch "2.3.x".
I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo, so they have to be available soon.

Will appreciate if you can test the implementation and provide feedback.

Thanks.

WBR,
Alexey.

On 08/09/2012 02:15 PM, Matthew Swift wrote:


On 8 August 2012 20:23, Ryan Lubke <[hidden email]> wrote:
On 8/8/12 7:43 AM, Matthew Swift wrote:
Hi folks,

What is the status of the Servlet support in Grizzly 2.x? Is it pretty stable? At the moment it seems to have a dependency on Servlet 2.5 - do you plan to support Servlet 3.0 at some point[1], in particular the support for asynchronous processing?
What would you guys think of initial support for Servlet 3.1?  The 3.0 async aspect we can support for sure, but if we moved to the 3.1 api, we can expose the non-blocking I/O.  Is that of any interest?


NIO support is something which is definitely of interest to me in the long term, however in the short term I need to maintain compatibility with existing J2EE 6 containers.

Cheers,

Matt
 


Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Marc Arens
Great! I'll update to the latest snapshot, see how our existing servlets like it
and then look at the 3.* stuff.
Thank you very much for the fast implementation.

Oleksiy Stashok <[hidden email]> hat am 15. August 2012 um 17:50
geschrieben:

> Hi,
>
> asynchronous I/O support (Servlet 3.1) is commited as well.
> Your feedback is welcome :)
>
> Thanks.
>
> WBR,
> Alexey.
>
>
> On 08/15/2012 02:39 PM, Oleksiy Stashok wrote:
> > Hi guys,
> >
> > I've commited initial Servlet 3.0-based implementation, it has to
> > support asynchronous processing (including dispatch).
> > The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git
> > branch "2.3.x".
> > I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo,
> > so they have to be available soon.
> >
> > Will appreciate if you can test the implementation and provide feedback.
> >
> > Thanks.
> >
> > WBR,
> > Alexey.
> >
> > On 08/09/2012 02:15 PM, Matthew Swift wrote:
> >>
> >>
> >> On 8 August 2012 20:23, Ryan Lubke <[hidden email]
> >> <mailto:[hidden email]>> wrote:
> >>
> >>     On 8/8/12 7:43 AM, Matthew Swift wrote:
> >>
> >>         Hi folks,
> >>
> >>         What is the status of the Servlet support in Grizzly 2.x? Is
> >>         it pretty stable? At the moment it seems to have a dependency
> >>         on Servlet 2.5 - do you plan to support Servlet 3.0 at some
> >>         point[1], in particular the support for asynchronous processing?
> >>
> >>     What would you guys think of initial support for Servlet 3.1?
> >>      The 3.0 async aspect we can support for sure, but if we moved to
> >>     the 3.1 api, we can expose the non-blocking I/O.  Is that of any
> >>     interest?
> >>
> >>
> >> NIO support is something which is definitely of interest to me in the
> >> long term, however in the short term I need to maintain compatibility
> >> with existing J2EE 6 containers.
> >>
> >> Cheers,
> >>
> >> Matt
> >
>
Best regards,
Marc
Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Matthew Swift-3
In reply to this post by oleksiys
Thanks for the amazingly quick turnaround Alexey! I should be in a position where I can test this in the next week or so. I'll let you know how it goes.

Cheers,

Matt


On 15 August 2012 17:50, Oleksiy Stashok <[hidden email]> wrote:
Hi,

asynchronous I/O support (Servlet 3.1) is commited as well.
Your feedback is welcome :)

Thanks.

WBR,
Alexey.



On 08/15/2012 02:39 PM, Oleksiy Stashok wrote:
Hi guys,

I've commited initial Servlet 3.0-based implementation, it has to support asynchronous processing (including dispatch).
The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git branch "2.3.x".
I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo, so they have to be available soon.

Will appreciate if you can test the implementation and provide feedback.

Thanks.

WBR,
Alexey.

On 08/09/2012 02:15 PM, Matthew Swift wrote:


On 8 August 2012 20:23, Ryan Lubke <[hidden email]> wrote:
On 8/8/12 7:43 AM, Matthew Swift wrote:
Hi folks,

What is the status of the Servlet support in Grizzly 2.x? Is it pretty stable? At the moment it seems to have a dependency on Servlet 2.5 - do you plan to support Servlet 3.0 at some point[1], in particular the support for asynchronous processing?
What would you guys think of initial support for Servlet 3.1?  The 3.0 async aspect we can support for sure, but if we moved to the 3.1 api, we can expose the non-blocking I/O.  Is that of any interest?


NIO support is something which is definitely of interest to me in the long term, however in the short term I need to maintain compatibility with existing J2EE 6 containers.

Cheers,

Matt
 



Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

oleksiys
Administrator
In reply to this post by Marc Arens
Hi guys,

we're planning to make 2.3 release this week (required by GF), will
appreciate your feedback on Servlet 3.1 support.

Thanks.

WBR,
Alexey.

On 08/15/2012 06:55 PM, Arens, Marc wrote:

> Great! I'll update to the latest snapshot, see how our existing servlets like it
> and then look at the 3.* stuff.
> Thank you very much for the fast implementation.
>
> Oleksiy Stashok <[hidden email]> hat am 15. August 2012 um 17:50
> geschrieben:
>> Hi,
>>
>> asynchronous I/O support (Servlet 3.1) is commited as well.
>> Your feedback is welcome :)
>>
>> Thanks.
>>
>> WBR,
>> Alexey.
>>
>>
>> On 08/15/2012 02:39 PM, Oleksiy Stashok wrote:
>>> Hi guys,
>>>
>>> I've commited initial Servlet 3.0-based implementation, it has to
>>> support asynchronous processing (including dispatch).
>>> The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git
>>> branch "2.3.x".
>>> I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo,
>>> so they have to be available soon.
>>>
>>> Will appreciate if you can test the implementation and provide feedback.
>>>
>>> Thanks.
>>>
>>> WBR,
>>> Alexey.
>>>
>>> On 08/09/2012 02:15 PM, Matthew Swift wrote:
>>>>
>>>> On 8 August 2012 20:23, Ryan Lubke <[hidden email]
>>>> <mailto:[hidden email]>> wrote:
>>>>
>>>>      On 8/8/12 7:43 AM, Matthew Swift wrote:
>>>>
>>>>          Hi folks,
>>>>
>>>>          What is the status of the Servlet support in Grizzly 2.x? Is
>>>>          it pretty stable? At the moment it seems to have a dependency
>>>>          on Servlet 2.5 - do you plan to support Servlet 3.0 at some
>>>>          point[1], in particular the support for asynchronous processing?
>>>>
>>>>      What would you guys think of initial support for Servlet 3.1?
>>>>       The 3.0 async aspect we can support for sure, but if we moved to
>>>>      the 3.1 api, we can expose the non-blocking I/O.  Is that of any
>>>>      interest?
>>>>
>>>>
>>>> NIO support is something which is definitely of interest to me in the
>>>> long term, however in the short term I need to maintain compatibility
>>>> with existing J2EE 6 containers.
>>>>
>>>> Cheers,
>>>>
>>>> Matt
> Best regards,
> Marc

Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Marc Arens
Hey Alexey,

sorry but i can't provide feedback, yet. Moving to Servlet 3.1 requires updating
several existing Servlets in our Server which will take some work before i can
start testing the new, shiny stuff.

Oleksiy Stashok <[hidden email]> hat am 22. August 2012 um 16:21
geschrieben:

> Hi guys,
>
> we're planning to make 2.3 release this week (required by GF), will
> appreciate your feedback on Servlet 3.1 support.
>
> Thanks.
>
> WBR,
> Alexey.
>
> On 08/15/2012 06:55 PM, Arens, Marc wrote:
> > Great! I'll update to the latest snapshot, see how our existing servlets
> > like it
> > and then look at the 3.* stuff.
> > Thank you very much for the fast implementation.
> >
> > Oleksiy Stashok <[hidden email]> hat am 15. August 2012 um 17:50
> > geschrieben:
> >> Hi,
> >>
> >> asynchronous I/O support (Servlet 3.1) is commited as well.
> >> Your feedback is welcome :)
> >>
> >> Thanks.
> >>
> >> WBR,
> >> Alexey.
> >>
> >>
> >> On 08/15/2012 02:39 PM, Oleksiy Stashok wrote:
> >>> Hi guys,
> >>>
> >>> I've commited initial Servlet 3.0-based implementation, it has to
> >>> support asynchronous processing (including dispatch).
> >>> The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git
> >>> branch "2.3.x".
> >>> I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo,
> >>> so they have to be available soon.
> >>>
> >>> Will appreciate if you can test the implementation and provide feedback.
> >>>
> >>> Thanks.
> >>>
> >>> WBR,
> >>> Alexey.
> >>>
> >>> On 08/09/2012 02:15 PM, Matthew Swift wrote:
> >>>>
> >>>> On 8 August 2012 20:23, Ryan Lubke <[hidden email]
> >>>> <mailto:[hidden email]>> wrote:
> >>>>
> >>>>      On 8/8/12 7:43 AM, Matthew Swift wrote:
> >>>>
> >>>>          Hi folks,
> >>>>
> >>>>          What is the status of the Servlet support in Grizzly 2.x? Is
> >>>>          it pretty stable? At the moment it seems to have a dependency
> >>>>          on Servlet 2.5 - do you plan to support Servlet 3.0 at some
> >>>>          point[1], in particular the support for asynchronous processing?
> >>>>
> >>>>      What would you guys think of initial support for Servlet 3.1?
> >>>>       The 3.0 async aspect we can support for sure, but if we moved to
> >>>>      the 3.1 api, we can expose the non-blocking I/O.  Is that of any
> >>>>      interest?
> >>>>
> >>>>
> >>>> NIO support is something which is definitely of interest to me in the
> >>>> long term, however in the short term I need to maintain compatibility
> >>>> with existing J2EE 6 containers.
> >>>>
> >>>> Cheers,
> >>>>
> >>>> Matt
> > Best regards,
> > Marc
>
Best regards,
Marc
Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

oleksiys
Administrator
Hi Marc,

no problem :) looking forward to hear from you once you have time.

WBR,
Alexey.

On 08/22/2012 05:21 PM, Arens, Marc wrote:

> Hey Alexey,
>
> sorry but i can't provide feedback, yet. Moving to Servlet 3.1 requires updating
> several existing Servlets in our Server which will take some work before i can
> start testing the new, shiny stuff.
>
> Oleksiy Stashok <[hidden email]> hat am 22. August 2012 um 16:21
> geschrieben:
>> Hi guys,
>>
>> we're planning to make 2.3 release this week (required by GF), will
>> appreciate your feedback on Servlet 3.1 support.
>>
>> Thanks.
>>
>> WBR,
>> Alexey.
>>
>> On 08/15/2012 06:55 PM, Arens, Marc wrote:
>>> Great! I'll update to the latest snapshot, see how our existing servlets
>>> like it
>>> and then look at the 3.* stuff.
>>> Thank you very much for the fast implementation.
>>>
>>> Oleksiy Stashok <[hidden email]> hat am 15. August 2012 um 17:50
>>> geschrieben:
>>>> Hi,
>>>>
>>>> asynchronous I/O support (Servlet 3.1) is commited as well.
>>>> Your feedback is welcome :)
>>>>
>>>> Thanks.
>>>>
>>>> WBR,
>>>> Alexey.
>>>>
>>>>
>>>> On 08/15/2012 02:39 PM, Oleksiy Stashok wrote:
>>>>> Hi guys,
>>>>>
>>>>> I've commited initial Servlet 3.0-based implementation, it has to
>>>>> support asynchronous processing (including dispatch).
>>>>> The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git
>>>>> branch "2.3.x".
>>>>> I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo,
>>>>> so they have to be available soon.
>>>>>
>>>>> Will appreciate if you can test the implementation and provide feedback.
>>>>>
>>>>> Thanks.
>>>>>
>>>>> WBR,
>>>>> Alexey.
>>>>>
>>>>> On 08/09/2012 02:15 PM, Matthew Swift wrote:
>>>>>> On 8 August 2012 20:23, Ryan Lubke <[hidden email]
>>>>>> <mailto:[hidden email]>> wrote:
>>>>>>
>>>>>>       On 8/8/12 7:43 AM, Matthew Swift wrote:
>>>>>>
>>>>>>           Hi folks,
>>>>>>
>>>>>>           What is the status of the Servlet support in Grizzly 2.x? Is
>>>>>>           it pretty stable? At the moment it seems to have a dependency
>>>>>>           on Servlet 2.5 - do you plan to support Servlet 3.0 at some
>>>>>>           point[1], in particular the support for asynchronous processing?
>>>>>>
>>>>>>       What would you guys think of initial support for Servlet 3.1?
>>>>>>        The 3.0 async aspect we can support for sure, but if we moved to
>>>>>>       the 3.1 api, we can expose the non-blocking I/O.  Is that of any
>>>>>>       interest?
>>>>>>
>>>>>>
>>>>>> NIO support is something which is definitely of interest to me in the
>>>>>> long term, however in the short term I need to maintain compatibility
>>>>>> with existing J2EE 6 containers.
>>>>>>
>>>>>> Cheers,
>>>>>>
>>>>>> Matt
>>> Best regards,
>>> Marc
> Best regards,
> Marc

Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Matthew Swift-3
I'm almost there now with the 2.5 support (see forthcoming message as to why I'm not completely there), and should be able to start implementing the 3.x support early next week. I'll keep you posted.

Matt


On 23 August 2012 11:39, Oleksiy Stashok <[hidden email]> wrote:
Hi Marc,

no problem :) looking forward to hear from you once you have time.

WBR,
Alexey.


On 08/22/2012 05:21 PM, Arens, Marc wrote:
Hey Alexey,

sorry but i can't provide feedback, yet. Moving to Servlet 3.1 requires updating
several existing Servlets in our Server which will take some work before i can
start testing the new, shiny stuff.

Oleksiy Stashok <[hidden email]> hat am 22. August 2012 um 16:21
geschrieben:
Hi guys,

we're planning to make 2.3 release this week (required by GF), will
appreciate your feedback on Servlet 3.1 support.

Thanks.

WBR,
Alexey.

On 08/15/2012 06:55 PM, Arens, Marc wrote:
Great! I'll update to the latest snapshot, see how our existing servlets
like it
and then look at the 3.* stuff.
Thank you very much for the fast implementation.

Oleksiy Stashok <[hidden email]> hat am 15. August 2012 um 17:50
geschrieben:
Hi,

asynchronous I/O support (Servlet 3.1) is commited as well.
Your feedback is welcome :)

Thanks.

WBR,
Alexey.


On 08/15/2012 02:39 PM, Oleksiy Stashok wrote:
Hi guys,

I've commited initial Servlet 3.0-based implementation, it has to
support asynchronous processing (including dispatch).
The Grizzly version is 2.3-SNAPSHOT, sources could be found @ git
branch "2.3.x".
I'm in a process of deploying 2.3-SNAPSHOT binaries to the maven repo,
so they have to be available soon.

Will appreciate if you can test the implementation and provide feedback.

Thanks.

WBR,
Alexey.

On 08/09/2012 02:15 PM, Matthew Swift wrote:
On 8 August 2012 20:23, Ryan Lubke <[hidden email]
<mailto:[hidden email]>> wrote:

      On 8/8/12 7:43 AM, Matthew Swift wrote:

          Hi folks,

          What is the status of the Servlet support in Grizzly 2.x? Is
          it pretty stable? At the moment it seems to have a dependency
          on Servlet 2.5 - do you plan to support Servlet 3.0 at some
          point[1], in particular the support for asynchronous processing?

      What would you guys think of initial support for Servlet 3.1?
       The 3.0 async aspect we can support for sure, but if we moved to
      the 3.1 api, we can expose the non-blocking I/O.  Is that of any
      interest?


NIO support is something which is definitely of interest to me in the
long term, however in the short term I need to maintain compatibility
with existing J2EE 6 containers.

Cheers,

Matt
Best regards,
Marc
Best regards,
Marc


Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Matthew Swift-3
Hi Alexey,

I've done some initial testing of the Servlet 3.0 support. I must stress that it really is pretty simple testing and I'm only using a limited part of the API: javax.servlet.ServletRequest.startAsync(), and javax.servlet.AsyncContext.complete(). I don't think that I am able to test out the NIO support since I am using Jackson for request content decoding and request content encoding (AFAICS Jackson does not support NIO).

Anyway, the good news is that basic asynchronous request processing seems to work. However there is a minor glitch which occurs when requests timeout (I spotted this while stepping through the code during debugging). When a request times out (30s by default) the request is recycled causing some of the internal fields of the request to be nulled out (e.g. org.glassfish.grizzly.servlet.HttpServletRequestImpl.request). This causes subsequent uses of the HTTP request to fail with ugly run time exceptions, for example:

    public String getMethod() {
        if (request == null) {
            throw new IllegalStateException("Null request object");
        }

        return request.getMethod().getMethodString();
    }

Is this correct? I think that it is a little dangerous to recycle the request as soon as the timeout occurs since there may still be active references to the request, such as the thread processing the request. The only way that I can detect if a request has been completed externally (via a timeout) is by registering an AsyncListener and, even if I did, it is very cumbersome to avoid race conditions when calling methods like getMethod(). Am I missing something?

If I am correct and Grizzly needs to be less aggressive when releasing requests, then how would you implement this? Grizzly would need to know when the code responsible for processing the request has finished. The only way to do this is for the application to invoke javax.servlet.AsyncContext.complete(), but the Servlet 3 Javadoc is a little unclear as to whether or not I can do this, so I am not sure whether calling this method after a request has timed out will be portable or not.

Cheers,

Matt

Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Ryan Lubke-2
On 8/31/12 9:40 AM, Matthew Swift wrote:
Hi Alexey,

I've done some initial testing of the Servlet 3.0 support. I must stress that it really is pretty simple testing and I'm only using a limited part of the API: javax.servlet.ServletRequest.startAsync(), and javax.servlet.AsyncContext.complete(). I don't think that I am able to test out the NIO support since I am using Jackson for request content decoding and request content encoding (AFAICS Jackson does not support NIO).

Anyway, the good news is that basic asynchronous request processing seems to work. However there is a minor glitch which occurs when requests timeout (I spotted this while stepping through the code during debugging). When a request times out (30s by default) the request is recycled causing some of the internal fields of the request to be nulled out (e.g. org.glassfish.grizzly.servlet.HttpServletRequestImpl.request). This causes subsequent uses of the HTTP request to fail with ugly run time exceptions, for example:

    public String getMethod() {
        if (request == null) {
            throw new IllegalStateException("Null request object");
        }

        return request.getMethod().getMethodString();
    }

Is this correct? I think that it is a little dangerous to recycle the request as soon as the timeout occurs since there may still be active references to the request, such as the thread processing the request. The only way that I can detect if a request has been completed externally (via a timeout) is by registering an AsyncListener and, even if I did, it is very cumbersome to avoid race conditions when calling methods like getMethod(). Am I missing something?

If I am correct and Grizzly needs to be less aggressive when releasing requests, then how would you implement this? Grizzly would need to know when the code responsible for processing the request has finished. The only way to do this is for the application to invoke javax.servlet.AsyncContext.complete(), but the Servlet 3 Javadoc is a little unclear as to whether or not I can do this, so I am not sure whether calling this method after a request has timed out will be portable or not.
We'll need to look into this for sure.  Would you mind logging an issue to keep track of this one?

Cheers,

Matt


Reply | Threaded
Open this post in threaded view
|

Re: Status of grizzly-http-servlet support in Grizzly 2.x

Matthew Swift-3


On 31 August 2012 22:36, Ryan Lubke <[hidden email]> wrote:

We'll need to look into this for sure.  Would you mind logging an issue to keep track of this one?



Matt
 
12