You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Martin Grigorov (JIRA)" <ji...@apache.org> on 2014/02/06 10:32:10 UTC

[jira] [Commented] (WICKET-5500) Remove the jsessionid path parameter when reading the page class

    [ https://issues.apache.org/jira/browse/WICKET-5500?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13893205#comment-13893205 ] 

Martin Grigorov commented on WICKET-5500:
-----------------------------------------

When 'myjsessionid' is set as a custom jsessionid with -Dwicket.jsessionid.name=myjsessionid Wicket properly removes it from the url here:

stripJSessionId():924, Strings {org.apache.wicket.util.string}, Strings.java
getContextRelativeUrl():184, ServletWebRequest {org.apache.wicket.protocol.http.servlet}, ServletWebRequest.java
<init>():113, ServletWebRequest {org.apache.wicket.protocol.http.servlet}, ServletWebRequest.java
<init>():83, ServletWebRequest {org.apache.wicket.protocol.http.servlet}, ServletWebRequest.java
newWebRequest():449, WebApplication {org.apache.wicket.protocol.http}, WebApplication.java
createWebRequest():494, WebApplication {org.apache.wicket.protocol.http}, WebApplication.java
processRequest():196, WicketFilter {org.apache.wicket.protocol.http}, WicketFilter.java
....

So it seems the reporter in the mailing list discussion (http://markmail.org/message/gxapm54ekwhcrdl4) didn't set it properly.

Now the question is: Should Wicket remove any other path parameters from the parsed class name from the url ? In my opinion it should.

> Remove the jsessionid path parameter when reading the page class
> ----------------------------------------------------------------
>
>                 Key: WICKET-5500
>                 URL: https://issues.apache.org/jira/browse/WICKET-5500
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 6.13.0
>            Reporter: Martin Grigorov
>
> http://localhost:8080/linkomatic/wicket/bookmarkable/org.apache.wicket.examples.linkomatic.Page3;myjsessionid=123456 leads to :
> WARN  - AbstractRepeater           - Child component of repeater org.apache.wicket.markup.repeater.RepeatingView:area has a non-safe child id of page1. Safe child ids must be composed of digits only.
> WARN  - WicketObjects              - Could not resolve class [org.apache.wicket.examples.linkomatic.Page3;blass=koko]
> java.lang.ClassNotFoundException: org/apache/wicket/examples/linkomatic/Page3;blass=koko
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Class.java:264)
> 	at org.apache.wicket.application.AbstractClassResolver.resolveClass(AbstractClassResolver.java:108)
> 	at org.apache.wicket.core.util.lang.WicketObjects.resolveClass(WicketObjects.java:72)
> 	at org.apache.wicket.core.request.mapper.AbstractComponentMapper.getPageClass(AbstractComponentMapper.java:139)
> 	at org.apache.wicket.core.request.mapper.BookmarkableMapper.parseRequest(BookmarkableMapper.java:118)
> 	at org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper.mapRequest(AbstractBookmarkableMapper.java:292)
> 	at org.apache.wicket.request.mapper.CompoundRequestMapper.mapRequest(CompoundRequestMapper.java:152)
> 	at org.apache.wicket.request.cycle.RequestCycle.resolveRequestHandler(RequestCycle.java:190)
> ...
> Such request at the moment works only if the the path parameter name is 'jsessionid'



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)