Hi there:

Currently I'm trying to integrate Guice(plus Guice-servlet) with
another framework called Stripes. Things are working fine until I
found the forward functionality is not working as expected.

I dig into the Stripes code as well as Guice code, and finally figure
out the reason is that Guice has injected a proxied HttpServletRequest
into the context instead of the original one.

The code locates at:

com.google.inject.servlet.ServletDefinition#doService(final
ServletRequest servletRequest, ServletResponse servletResponse),

where Guice returned an inner class and has delegated some servlet
methods. The most important thing is that the input parameter
"servletRequest" is eaten by guice. In the other side, Stripes is
expecting to get it's own request object (wrapper class of
HttpServletRequest) and execute the following:

request.getRequestDispatcher(path).forward(request, response);

However the request object returned by Guice does not work here. By
debugging I can see the guice-returned-request object contains the
reference to the real request object that I need, but since it's
implemented in the inner class and also package visibility, I dont
know how to get it out.

Since this is most probably a guice-servlet issue, so I post here
instead of the Stripes mail list. I do need some directions or hints
on this, as I'm wondering if this is the right way towards the
solution.

Thanks in advance.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"google-guice" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-guice?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to