[
https://issues.apache.org/jira/browse/WICKET-2078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12719732#action_12719732
]
Eric Gulatee commented on WICKET-2078:
--------------------------------------
IBM's PMR instructed me to look at the response on the thread in websphere
portal forum.
http://www.ibm.com/developerworks/forums/thread.jspa?threadID=250807
Would this solve the parameters issue? It seems to go along the same lines as
Hardi's solution which works for me on WPS 6.1. However, Hardi's patch is
doing stuff with the URL & parameters which if I had to guess, is actually
what's fixing the loss of parameters...
However, preferring not to change Wicket, I embedded the changes in extended
classes so as to be able to use wicket from a maven repository. [With a caveat
of redirects failing in certain case. Using a
RestartResponseAtInterceptPageException fails within an AuthorizationStrategy]
At this point, given this response from IBM, my question becomes, does their
suggestion address the core issue or not?
--------------------------------------
If you want to use a PortletRequestDispatcher with javax.servlet.Filter's, you
have to be aware of the fact that the PortletRequest used with the dispatcher
is not the same as the ServletRequest you get in the doFilter method of your
servlet filter. According to the Portlet 2.0 spec (PLT.19.3.2), you should be
able to retrieve the current PortletRequest like this from the servlet request
in a servlet filter (filtering an rd included JSP or Servlet):
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException,
ServletException
{
PortletRequest portletRequest = (PortletRequest)
request.getAttribute("javax.portlet.request");
portletRequest.getParameter("param1");
[...]
chain.doFilter(request, response);
}
Or did you use portlet filters?
> WICKET-2058 does not support IBM Websphere Portal Server 6.1
> ------------------------------------------------------------
>
> Key: WICKET-2078
> URL: https://issues.apache.org/jira/browse/WICKET-2078
> Project: Wicket
> Issue Type: Bug
> Components: wicket-portlet
> Environment: WebSphere Platform 6.1 [ND 6.1.0.15 cf150808.12]
> Reporter: Hardi Probst
> Assignee: Ate Douma
> Attachments: patch.txt, patch2.txt
>
>
> First of all I want to say thanks a lot for resolving the issue WICKET-2058
> to Ate, Thijs and Antony!
> I checked out the revision 739543 from trunk and experimented/tested a lot
> with the wicket examples within IBM Websphere Portal 6.1.
> I had to add the following lines into web.xml to get the first
> example-portlets visible in my browser:
> <context-param>
> <param-name>org.apache.wicket.detectPortletContext</param-name>
> <param-value>true</param-value>
> </context-param>
> The next problem I stumbled over was that the generated links (e.g.
> BookmarkablePageLink<Void>("link", PageXY.class) ) did not work at all.
> I traced the problem down to the point that the generated wicketURL in
> PortletRequestContext.encodeRenderURL includes all query-parameters but the
> PortletFilter does
> not get them as parameters, just the path-part.
> WicketPortlet.processRequest:
> PortletRequestDispatcher rd =
> getPortletContext().getRequestDispatcher(wicketURL);
> if (rd != null)
> {
> // delegate to wicket filter - this is where the magic happens
> rd.include(request, response);
> ...
> Let's assume wicketURL has the value of
> "/repeater/?wicket:interface=:8:oir:17:toggleHighlite:2:ILinkListener::", the
> result would be the same as the value of "/repeater/".
> I was able to fix it by applying the query parameters as "real" parameters to
> the javax.portlet.PortletURL for Action and Render-URLs (see Patch for
> PortletRequestContext).
> After that I had the same problem with form-submission. The form-values came
> in perfectly to the model, but after leaving the ACTION-PHASE the state was
> all gone in RENDER-PHASE.
> So I did the same in WicketPortlet.processActionResponseState and applied all
> wicketURL-query parameteters to the response (setRenderParameter). see Patch
> for WicketPortlet.
> Another solution could be a PortletRequestWrapper within the WicketFilter
> implementation. Or does anybody have a better idea?
> It would be really great to see this issue fixed in wicket 1.4!
> I'll keep on testing the next days with the ajax examples (some worked
> already with the provided patch applied) and WPS 6.1...
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.