When using ColdFusion MX while J2EE session variables are enabled, as defined in the ColdFusion Administrator, the session token jsessionid will be used to maintain state. If the application has planned for the possibility that clientside cookies are disabled for some users of the web application, then the application may have to use URLSessionFormat( ) to encode links within the application to maintain state by passing the session token in the URL. If so, the link URL's will have a semicolon delimited parameter appended to the url, in the format page.cfm;jsessionid=1234, for example. With the use of the semicolon in this manner, the jsessionid parameter is becomes part of the request path, not part of the request query string. Although this means of appending the jsession id into the URL is a J2EE standard, this URL format may confuse some webservers, including Microsoft IIS.
Microsoft IIS may report a 404 error for Page Not Found if the ;jsessionid parameter appears in the request URL. When using ColdFusion MX on JRun this can be corrected by setting the ignoresuffixmap property to false in the JRun connector stub configuration file jrun.ini. This file is typically found at the location {cfmx_home}/runtime/lib/wsconfig/1/jrun.ini or {jrun_home}/lib/wsconfig/1/jrun.ini. By setting this property to false, the JRun ISAPI filter will begin to match the URL for known extensions that should be handled by ColdFusion/JRun including *.cfm and *.jsp. When the JRun ISAPI filter matches the extension in a request it will pass the request to the JRun server without letting IIS further parse the URL for extension mapping.
Here is an example from the connector log of JRun ISAPI filter matching a request by the cfm extension, and properly handling the ;jsessionid parameter for the session:
#1 by Joseph Flanigan on 8/6/04 - 8:57 PM
[P]On our server, the IIS throws the 404 error only on links off the initial home page load with a new browser session and only with links that have cfm;jsessionid. Clicking on a link without the cfm;jssesion will advance into the site. Once the site is running, the 404`s are not thrown with any url that may have the cfm;jsession format.[/P]
[P]The 404 only occurs on a new page in a fresh browser session.[/P]
[P]Anyhow I tried your technique, but it did not fix ths problem. There must be other dependencies or configurations. [/P]
#2 by Steven Erat on 8/18/04 - 11:38 AM
#3 by Laurent on 2/28/05 - 7:10 AM
Status (object #2)
.....code: "NetConnection.Call.Failed"
.....description: "HTTP: Status 404"
.....details: "[a href="http://www.xxx.com/flashservices/gateway" target="_blank"]http://www.xxx.com/flashservices/gateway[/a];jsessionid=a4301fd8430b$1E$3F$3"
.....level: "error"
Since there is no .cfm or .jsp extension your fix doesn`t work for this problem?
Do you know of a way to get it to work again?
#4 by Aamir Suleman on 9/15/11 - 4:40 PM