[
https://issues.apache.org/jira/browse/COCOON-1998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12469787
]
Carsten Ziegeler commented on COCOON-1998:
------------------------------------------
Sorry, but I think the patch is still not 100% correct. In this snippet:
>>>
+ if (servletPath.startsWith("/")) {
+ servletPath = servletPath.substring(1);
+ }
+ if (servletPath.endsWith("/")) {
+ servletPath = servletPath.substring(0, servletPath.length() - 1);
+ }
+
String pathInfo = getPathInfo(request);
String uri = servletPath;
<<<
servletPath is still changed, I think it should be that you first assing
servletPath to "uri" and then only work with "uri" from there, like
if (uri.startsWith("/")) {
uri = uri.substring(1);
}
and so on.
I think servletPath should never be changed inside these methods.
> CocoonPortlet needs to allow overriding servlet-path parameter with
> preferences.
> --------------------------------------------------------------------------------
>
> Key: COCOON-1998
> URL: https://issues.apache.org/jira/browse/COCOON-1998
> Project: Cocoon
> Issue Type: Improvement
> Components: Blocks: Portal
> Affects Versions: 2.1.11-dev (Current SVN)
> Reporter: Woonsan Ko
> Assigned To: Carsten Ziegeler
> Fix For: 2.1.11-dev (Current SVN)
>
> Attachments: servlet-path-pref-diff.txt, servlet-path-pref-diff2.txt
>
>
> The CocoonPortlet in BRANCH_2_1_X does not allow overriding the
> *servlet-path* init parameter by preferences.
> If the CocoonPortlet reads preferences to override the 'servlet-path', portal
> users can use manycoplet fragments without tedious portlet tag additions.
> FYI, some portals such as Jetspeed 2 allows inline preference settings, not
> allowed for end-users.
> Without this feature, portal users have to add portlet tags in the
> portlet.xml whenever they need to use another coplet in the portal site.
> To test properly for the patch, you should add init-parameter in the
> cocoon/WEB-INF/portlet.xml like the
> following:
> <portlet>
> <portlet-name>CocoonPortlet</portlet-name>
> ...
> <init-param>
> <name>allow-preferences</name>
> <value>true</value>
> </init-param>
> ...
> </portlet>
> ManagedCocoonPortlet will read preferences just when the above parameter is
> set to true. (I borrowed this from GenericServletPortlet in Apache portal
> bridges.)
> I've tested this modification under Jetspeed-2
> (/WEB-INF/pages/default-page.psml).
> The portlet fragment can be added with preferences like the following:
> <fragment id="dp-19" type="portlet" name="cocoon::CocoonPortlet">
> <property name="row" value="6"/>
> <property name="column" value="0"/>
> <preference name="servlet-path" readOnly="true">
> <value>samples/blocks/portal/portlets/helloworld</value>
> </preference>
> </fragment>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.