users@jax-rs-spec.java.net

[jax-rs-spec users] [jsr339-experts] Re: Re: forward()

From: Sergey Beryozkin <sberyozkin_at_talend.com>
Date: Wed, 30 Oct 2013 14:30:44 +0000

Sure, you have some good support there, but it kind of forces the users
to choose between an explicit MVC style vs JAX-RS style, example, you
can't have a Book returned with Produces set to text/xml & text/html.

May be I'm wrong though. But I'd prefer for users to have an option to
have the data to HTML binding done under the hood - I guess though we
may not need to do anything at all for the latter, it works right now
for us via a basic MBW

Sergey

On 30/10/13 14:12, Sergey Beryozkin wrote:
> On 30/10/13 14:03, Marek Potociar wrote:
>> FYI, in Jersey we have this:
>> https://jersey.java.net/documentation/latest/mvc.html
>>
>> This is a more generic approach IMO than a forward() method, which is
>> IMO too Servlet-specific.
>
> No, this is a very intrusive approach, not JAX-RS.
> I've never liked asking users to do something like:
>
> return new Viewable("/index", "FOO");
>
> etc
>
> Sergey
>
>>
>> Marek
>>
>> On 11 Sep 2013, at 20:03, Bill Burke <bburke_at_redhat.com
>> <mailto:bburke_at_redhat.com>> wrote:
>>
>>>
>>>
>>> On 9/11/2013 11:19 AM, Sergey Beryozkin wrote:
>>>> On 11/09/13 14:04, Bill Burke wrote:
>>>>> Hey,
>>>>>
>>>>> I'm working on my first Angular JS web UI application. Angular JS is
>>>>> REST based, so it works great with a JAX-RS backend. The only thing
>>>>> that is really missing in JAX-RS at the moment, is a servlet
>>>>> forward().
>>>>> I often need to forward the request to .html, .jsp, or JSF pages
>>>>> within the WAR.
>>>>>
>>>>> A could inject HttpServletRequest and do the forward, but the JAX-RS
>>>>> implementation is going to have to be aware that you're doing a
>>>>> forward,
>>>>> otherwise, it will try to send back a response.
>>>>>
>>>>> Do we need a forward() method somewhere? LIke on ResourceContext or
>>>>> something? Or do we need explicit language in the spec that JAX-RS
>>>>> implementations need to handle servlet forwards gracefully.
>>>>>
>>>> We do it at MBW level and ensure the runtime does not try to handle the
>>>> response after the forward, basic and non-intrusive solution,
>>>
>>> We have an API for forward(). Which bypasses response processing if
>>> you call it on a JAX-RS method return. Which means no exception
>>> handling, filters, or interceptors or MBW.
>>>
>>> --
>>> Bill Burke
>>> JBoss, a division of Red Hat
>>> http://bill.burkecentral.com
>>
>


-- 
Sergey Beryozkin
Talend Community Coders
http://coders.talend.com/
Blog: http://sberyozkin.blogspot.com