tracker issue : CF-3352078

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

[ANeff] Bug for: CF9 vs CF10 wrt jsessionid in query string (maintained vs broken sessions)

| View in Tracker

Status/Resolution/Reason: Closed/Withdrawn/AsDesigned

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

Created: 10/24/2012

Components: Core Runtime, Session Management

Versions: 10.0

Failure Type:

Found In Build/Fixed In Build: Final /

Priority/Frequency: Major / Some users will encounter

Locale/System: English / Win All

Vote Count: 0

CF9 honors jsessionid in the query string (ex: ?jsessionid=x and &jsessionid=x). CF10 does not.

Repro (do this in CF9 and CF10 to compare):

1) enable verbose connector logging
1a) in CF9, open C:\ColdFusion9\runtime\lib\wsconfig\1\jrun_iis6_wildcard.ini and change "verbose=false" to "verbose=true"
1b) in CF10, C:\ColdFusion10\config\wsconfig\1\isapi_redirect.properties and change "log_level= info" to "log_level= debug"
2) disable cookies in browser and enable J2EE sessions in CF Admin
3) create index.cfm with: <cfoutput><p><a href="./?#SESSION.urlToken#">my link</a></p></cfoutput><cfdump var="#SESSION#" />
4) run index.cfm, click "my link"
5) open isapi_redirect.log
5a) in CF9, open most recent file in C:\ColdFusion9\runtime\lib\wsconfig\1\LogFiles
5b) in CF10, open C:\ColdFusion10\config\wsconfig\1\isapi_redirect.log

Actual Result: CF9 maintains session. CF10 does not (CF10's isapi_redirect.dll never parsed the session identifier using '&' and thus set a new jsessionid cookie).

Expected Result: CF10 should also maintain the session.

Even tho J2EE servlet spec specifies ";jsessionid=x" format, this is a backward-compat issue w/ previous versions of CF.

Most users will not know this and will be confused when their code (which maintained sessions in CF9) no longer maintains sessions in CF10.

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

Watson Bug ID:	3352078

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

Attachments:

Comments:

I see this is marked Open/ToTest. Thanks! But why is it also marked NeverFix? Confused. Thanks!, -Aaron
Comment by External U.
17394 | November 26, 2012 03:49:22 AM GMT
I see the status changed from Open/ToTest/NeverFix to Open/ToTest/AsDesigned Does this mean the broken session issue will be fixed and backward-compat will be restored? Thanks!, -Aaron
Comment by External U.
17395 | March 11, 2013 07:41:22 PM GMT
The problem w/ "AsDesigned" (i.e. adhering to the J2EE servlet spec) is that Adobe never got it working properly. There are many tickets filed showing session loss or 404 due to CF not dealing w/ the semicolon-appended jsessionid properly. CF should either adhere to the spec and get it right or revert to the former behavior of an ampersand-appended jsessionid. Thanks!, -Aaron
Comment by External U.
17396 | September 04, 2015 03:38:26 AM GMT