See this is what doesn't make sense then -
The error is here:
277 : <cfscript>
278 : var scope = 0;
279 : return structKeyExists(getScope(), getKey());
280 : </cfscript>
281 : </cffunction>
Not in the
//the best way of checking if sessions are enabled
try
{
session[arguments.key] = StructNew();
setIsSessionEnabled(true);
}
catch(Any exc)
{
//don't do anything really, we're just using this as a 1 time check
}
Section
So how did it bypass the session?
Silly question.. are you actually using the session cache?
Mark
On Fri, Dec 11, 2009 at 8:01 AM, Ryan Lynch <[email protected]> wrote:
> I've had sessions disabled for a long time. And restarting the server
> doesn't fix the problem. I've actually run into this problem on other
> CFM7 Development servers in the past, but I wasn't using Transfer in a
> current project so I didn't look into the problem any further. I'm
> scratching my head trying to figure this one out. Theres actually a
> problem with that stack trace though, the line number for the error
> should is 275 in the v1.1 source, not 279.
>
> On Dec 10, 2:19 pm, Mark Mandel <[email protected]> wrote:
> > That's weird, I'm pretty sure that is unit tested, and works... I will
> have
> > to double check.
> >
> > You sure you didn't turn off session variables after init'ing Transfer?
> > Transfer only does a Session check at load.
> >
> > Looking at the error it looks like this may be the case, as the error
> isn't
> > coming from within the Session Facade check, it happens when after that
> when
> > trying to access a given scope.
> >
> > Mark
> >
> >
> >
> >
> >
> > On Fri, Dec 11, 2009 at 3:30 AM, Ryan Lynch <[email protected]> wrote:
> > > This relates to Transfer v1.1 on ColdFusion MX7.
> >
> > > I've run into an issue with transfer when the Session scope is
> > > disabled. In the configure method of
> > > transfer.com.facade.SessionFacade, there is a try catch that is
> > > supposed to determine if sessions are enabled, and configure the
> > > facade accordingly, here is the code starting on line 31:
> >
> > > //the best way of checking if sessions are enabled
> > > try
> > > {
> > > session[arguments.key] = StructNew();
> > > setIsSessionEnabled(true);
> > > }
> > > catch(Any exc)
> > > {
> > > //don't do anything really, we're just using this as a 1 time
> check
> > > }
> >
> > > The problem is that even though sessions are disabled, and trying to
> > > access the scope should throw an error here, it doesn't. As a result
> > > the IsSessionEnabled property on the facade is set to "true", and
> > > later when the configured instance tries to access the scope the error
> > > is correctly thrown uncaught. Below is the stack trace of the error.
> >
> > > ***Error and Stack
> > >
> Trace*******************************************************************
> > > The requested scope session has not been enabled.
> >
> > > Before session variables can be used, the session state management
> > > system must be enabled using the CFAPPLICATION tag.
> >
> > > The error occurred in C:\CFusionMX7\wwwroot\transfer\com\facade
> > > \AbstractBaseFacade.cfc: line 279
> > > Called from C:\CFusionMX7\wwwroot\transfer\com\facade
> > > \AbstractBaseFacade.cfc: line 261
> > > Called from C:\CFusionMX7\wwwroot\transfer\com\facade
> > > \AbstractBaseFacade.cfc: line 103
> > > Called from C:\CFusionMX7\wwwroot\transfer\com\cache
> > > \SoftReferenceHandler.cfc: line 109
> > > Called from C:\CFusionMX7\wwwroot\transfer\com\cache
> > > \SoftReferenceHandler.cfc: line 93
> > > Called from C:\CFusionMX7\wwwroot\transfer\com\cache
> > > \SoftReferenceHandler.cfc: line 68
> > > Called from C:\CFusionMX7\wwwroot\transfer\com\cache
> > > \SoftReferenceHandler.cfc: line 57
> > > Called from C:\CFusionMX7\wwwroot\transfer\com\cache\CacheManager.cfc:
> > > line 71
> > > Called from C:\CFusionMX7\wwwroot\transfer\com\Transfer.cfc: line 731
> > > Called from C:\CFusionMX7\wwwroot\transfer\com\Transfer.cfc: line 210
> > > 277 : <cfscript>
> > > 278 : var scope = 0;
> > > 279 : return structKeyExists(getScope(), getKey());
> > > 280 : </cfscript>
> > > 281 : </cffunction>
> >
> > > --
> > > Before posting questions to the group please read:
> >
> > >http://groups.google.com/group/transfer-dev/web/how-to-ask-support-qu.
> ..
> >
> > > You received this message because you are subscribed to the Google
> Groups
> > > "transfer-dev" group.
> > > To post to this group, send email to [email protected]
> > > To unsubscribe from this group, send email to
> > > [email protected]
> > > For more options, visit this group at
> > >http://groups.google.com/group/transfer-dev?hl=en
> >
> > --
> > E: [email protected]
> > T:http://www.twitter.com/neurotic
> > W:www.compoundtheory.com
>
> --
> Before posting questions to the group please read:
>
> http://groups.google.com/group/transfer-dev/web/how-to-ask-support-questions-on-transfer
>
> You received this message because you are subscribed to the Google Groups
> "transfer-dev" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/transfer-dev?hl=en
>
--
E: [email protected]
T: http://www.twitter.com/neurotic
W: www.compoundtheory.com
--
Before posting questions to the group please read:
http://groups.google.com/group/transfer-dev/web/how-to-ask-support-questions-on-transfer
You received this message because you are subscribed to the Google Groups
"transfer-dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/transfer-dev?hl=en