Description
Packaged Resource URLs encoded with jsessionid even with Browser Cookie Support
With the provided testcase (this works in almost any testcase):
- Remove browser cookies for the test domain.
- Click on link "Wicket".
+ The browser hits the the wicket application for the first time with no cookie.
+ The application responds with a 302 response with a cookie, for a URL containing jsessionid.
+ The browser receives the cookie with the response and sends another request for a URL containing jsessionid.
+ The request contains the cookie header.
Expected behavior from now on:
The application knows that the browser has cookie support and should not rewrite URLs in links in the content.
Actual behavior:
The application responds with content where links contain jsessionid eg
<script type="text/javascript" src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js;jsessionid=3884e
<form wicket:id="testForm" action=";jsessionid=388...
Two things: Form submit URLs and packaged resource URLs.
I guess the problem is not necessarily URL rewriting in all cases because the URL of the page must contain jsessionid, and that this URL may have been copied as a whole when building the submit URL of the form.
However, the jsessionid in packaged resources leads to double-fetching of resources such as wicket-event.js with jsessionid in the URL and without it which breaks browser cache behavior.
I am filing this as NetBeans project just in case it happens only in combination with GlassFish.
Attachments
Attachments
Issue Links
- duplicates
-
WICKET-1572 Ajax postcall handler only called once under specific condition
- Resolved
- is depended upon by
-
WICKET-2877 PreCallHandler and PostCallHandler registrations are lost when ;jsessionid is removed in javascript files URL
- Resolved