>> A client of mine just started seeing a weird problem where their
>> application
>>  server is no longer seeing the CFID/CFTOKEN in the session scope. This
>>  problem just cropped up the other day.
>
>Did rebooting resolve the problem.
>
>I have never seen this in CFMX, but had seen it on earlier releases of
>CF

No. The servers have all been rebooted and before that I tried re-cycling
the services. Also, I tried a simple test by creating a new directory with
just two files, an application.cfm and an index.cfm.

The files look like this:

application.cfm
------------------------------------------
<cfsetting enablecfoutputonly="yes" showdebugoutput="no">
<!---//
enable Session management
//--->
<cfapplication
name="TestApp"
sessionManagement="yes"
sessionTimeout="#createTimeSpan(0, 0, 60, 0)#"
>
<cfsetting enablecfoutputonly="no">

application.cfm
------------------------------------------
<cfdump var="#session#">

Running just this simple example results in only the jsessionid & urltoken
showing up in the session scope, the cfif & cftoken do show up in the cookie
scope though. Also, the cftoken value looks a little strange to me:

24eb864e2918a850-D4DFAFA3-C128-3D3F-45166598748BD5B1

Shouldn't it only be the portion after the first dash? What's the part
before first dash?

I can resolve the problem by adding the following code to any application
using session management:

<cflock scope="session" type="execlusive" timeout="30">
<cfif structKeyExists(cookie, "cfid") and NOT
structKeyExists(session, "cfid")>
<cfset session.cfid = cookie.cfid>
</cfif>
<cfif structKeyExists(cookie, "cfid") and NOT
structKeyExists(session, "cftoken")>
<cfset session.cftoken = cookie.cftoken>
</cfif>
</cflock>

However, I really shouldn't have to do that. I also feel like this is an
unnecessary hack. Something else is wrong and I'd like to resolve that
issue.

- Dan
[Todays Threads] [This Message] [Subscription] [Fast Unsubscribe] [User Settings] [Donations and Support]

Reply via email to