tracker issue : CF-3352056

select a category, or use search below
(searches all categories and all time range)
Title:

[ANeff] Bug for: CF9 vs CF10 wrt urlSessionFormat() w/ J2EE sessions

| View in Tracker

Status/Resolution/Reason: Closed/Withdrawn/AsDesigned

Reporter/Name(from Bugbase): Aaron Neff / Aaron Neff (Aaron Neff)

Created: 10/23/2012

Components: Core Runtime, Session Management

Versions: 10.0

Failure Type:

Found In Build/Fixed In Build: Final /

Priority/Frequency: Normal / Few users will encounter

Locale/System: English / Windows 7 SP1 64-bit

Vote Count: 0

Please consider these:

urlSessionFormat('')
urlSessionFormat('?')
urlSessionFormat('?#anchor')
urlSessionFormat('?param')
urlSessionFormat('?param=value')
urlSessionFormat('?param=value#anchor')

CF9.0.1 output (correct - contains the jsessionid):

;jsessionid=x
;jsessionid=x?
;jsessionid=x?#anchor
;jsessionid=x?param
;jsessionid=x?param=value
;jsessionid=x?param=value#anchor

CF10 output (incorrect - 1st one should -just- be the jsessionid, and the remaining ones are missing the jsessionid):

http://www.mysite.com/;jsessionid=x
?
?#anchor
?param
?param=value
?param=value#anchor

Actual Result: CF10 behavior.

Expected Result: CF9.0.1 behavior.

Repro:
1) disable cookies in browser
2) enable J2EE sessions in CF Admin
3) run this code and see correct output in CF9.0.1 and incorrect output in CF10:

<cfoutput>
  <p><a href="#urlSessionFormat('')#">urlSessionFormat('')</a></p>
  <p><a href="#urlSessionFormat('##anchor')#">urlSessionFormat("##anchor")</a></p>
  <p><a href="#urlSessionFormat('?')#">urlSessionFormat('?')</a></p>
  <p><a href="#urlSessionFormat('?##anchor')#">urlSessionFormat('?##anchor')</a></p>
  <p><a href="#urlSessionFormat('?param')#">urlSessionFormat('?param')</a></p>
  <p><a href="#urlSessionFormat('?param=value')#">urlSessionFormat('?param=value')</a></p>
  <p><a href="#urlSessionFormat('?param=value##anchor')#">urlSessionFormat('?param=value##anchor')</a></p>
</cfoutput>
<cfdump var="#SESSION#" />

Note: Clicking the link generated by urlSessionFormat('') will result in a 404 b/c of the '/;'. This is an issue w/ the web server connector in both CF9 and CF10. I'll create another ticket for that.

----------------------------- Additional Watson Details -----------------------------

Watson Bug ID:	3352056

External Customer Info:
External Company:  
External Customer Name: itisdesign
External Customer Email:

Attachments:

Comments:

The first case - http://www.mysite.com/;jsessionid=x This is because in Tomcat's encodeURL method when the url is "" they set it to absolute url and this is done because W3c spec clearly says so. For the other cases ;jsessionid=x is not appended because the path in the url is "" and ;jsessionid cant be the first. Though this is change in behaviour from CF9 not sure if we can do anything here.
Comment by Asha K.
17399 | November 21, 2012 05:55:11 AM GMT
We should not be fixing this as the change in behaviour is due to Tomcat's code and the reason is below.
Comment by Asha K.
17400 | November 26, 2012 03:16:36 AM GMT
I see this is marked NeverFix, tho it is also marked Open/ToTest. Confused.. How is it Open/ToTest but also NeverFix? Thanks, -Aaron
Comment by External U.
17401 | November 26, 2012 03:52:11 AM GMT
I see the status changed from Open/ToTest/NeverFix to Open/ToTest/AsDesigned Will backward-compat be restored? Just wanted to verify. Thanks!, -Aaron
Comment by External U.
17402 | March 11, 2013 07:45:16 PM GMT