You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-dev@portals.apache.org by "Neil Griffin (JIRA)" <ji...@apache.org> on 2016/12/22 16:25:59 UTC
[jira] [Created] (PLUTO-651) PortalURLParserImpl.java incorrectly
encodes/decodes forward slash characters
Neil Griffin created PLUTO-651:
----------------------------------
Summary: PortalURLParserImpl.java incorrectly encodes/decodes forward slash characters
Key: PLUTO-651
URL: https://issues.apache.org/jira/browse/PLUTO-651
Project: Pluto
Issue Type: Bug
Components: portlet container
Affects Versions: 3.0.0
Reporter: Neil Griffin
The FacesBridge TCK TestPage071: nonFacesResourceTest executes the following as part of the test:
{code:java}
ResourceURL resourceURL = createResourceURL(facesContext);
resourceURL.setResourceID("/tck/nonFacesResource");
String url = resourceURL.toString();
{code}
For *Pluto 2.0* the value of {{url}} was:
{noformat}
http://localhost:8080/pluto/portal/TestPage071
/__rscom0x2liferay0x2faces0x2test0x2bridge0x2tck0x2main0x2portlet0x2chapter50x12Tests-nonFacesResourceTest-portlet!471674121%7C0
/__ri0x3tck0x3nonFacesResource
/__pmcom0x2liferay0x2faces0x2test0x2bridge0x2tck0x2main0x2portlet0x2chapter50x12Tests-nonFacesResourceTest-portlet!471674121%7C0_view
/__wscom0x2liferay0x2faces0x2test0x2bridge0x2tck0x2main0x2portlet0x2chapter50x12Tests-nonFacesResourceTest-portlet!471674121%7C0_normal
/__pr_chapter5_2Tests-nonFacesResourceTest-portletcom.liferay.faces.bridge.bridgeRequestScopeId
/chapter50x12Tests-nonFacesResourceTest-portlet0xc3A0xc3A0xc3A5287BEBEF949829C7F12616CA7EF1B7B0xc3A0xc3A0xc3A1482361392468
{noformat}
But in *Pluto 3.0* the value is:
{noformat}
http://localhost:8080/pluto/portal/TestPage071
/__pdcom.liferay.faces.test.bridge.tck.main.portlet.chapter5_2Tests-nonFacesResourceTest-portlet%21471674121%7C0;0
/__rs0
/__clcacheLevelPage
/__ri%2Ftck%2FnonFacesResource
/__rp0;chapter5_2Tests-nonFacesResourceTest-portletcom.liferay.faces.bridge.bridgeRequestScopeId:chapter5_2Tests-nonFacesResourceTest-portlet%3A%3A%3A87AE28B622503E4C8BAC99770BBD56EF%3A%3A%3A1482361063580
{noformat}
The important difference for this issue, is that with Pluto 2.0 the forward slashes in "/tck/nonFacesResource" are encoded as "0x3" whereas in Pluto 3.0 they are encoded as "%2F"
The problem is that Tomcat treats the presence of "%2F" in the URL as the same as a forward slash character, which causes the Pluto PortletDriverServlet.java class to not get invoked.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)