Help

Controls

PermLinkWikiLink

Built with Seam

You can find the full source code for this website in the Seam package in the directory /examples/wiki. It is licensed under the LGPL.

Forum: Seam Users Forum ListTopic List
17. Apr 2008, 15:39 CET | Link

UISeamCommandBase.isPortletRequest() check the external context's request's instance wich the javax.portlet.PortletRequest, it's a problem when some portal(such as jetspeed) has there portlet request implemented with extending HttpServletRequest.

so this cause the s:link,s:button's action attribute problems in these container, because the url generated has been urlencoded.

here is the discuss: some PC have their portletRequest extending the HttpServletRequest

5 Replies:
22. Apr 2008, 08:21 CET | Link

then, how can i control url encode behavior manually?

23. Apr 2008, 16:14 CET | Link

org.jboss.seam.ui.component.UISeamCommandBase :

private static Class PORTLET_REQUEST;
   
   static
   {
      try
      {
         PORTLET_REQUEST = Class.forName("javax.portlet.PortletRequest");
      }
      catch (Exception e) {}
   }

private static boolean isPortletRequest(FacesContext facesContext)
   {
      return PORTLET_REQUEST !=null && 
            PORTLET_REQUEST.isInstance( facesContext.getExternalContext().getRequest() );
   }
public String getUrl() throws UnsupportedEncodingException
   {
...
ViewUrlBuilder url = new ViewUrlBuilder(viewId, getFragment(), !isPortletRequest(getFacesContext()));
...
   }
11. May 2008, 18:28 CET | Link

I don't understand, they must still implement PortletRequest. What patch would fix this?

 

Read about how to report a bug.

13. May 2008, 06:01 CET | Link

for example, add an attribute encode to s:button and s:link, the url encoding behavior should execute according to this attribute.