Question
CF looking at arrays as a struct and throwing errors
I am getting the following error:
Object of type class coldfusion.runtime.Struct cannot be used as an array
This occured a coupleof days ago for the foirst itme. I restarted the CF service and that fixed it. It happened again today and niether restarting hte service nor rebooting hte server has solved the problem. The arrays are definitely getting declared as arrays and we are not using structs or and struct related functions onthe site. Any insight on this would be greatly appreciated. Here is the full error with stack trace. Thanks in advance
Eric
Object of type class coldfusion.runtime.Struct cannot be used as an array
The error occurred in D:\iremroot\sechome.cfm: line 25
23 : <cflock scope="Session" timeout="10" type="Exclusive">
24 :
25 : <cfif isDefined("Session.navArray") AND ArrayLen(Session.navArray) GTE 17>
26 : <cfset SECTION_ID="#Session.navArray[3]#">
27 : <cfset sContentInsert_1="#Session.navArray[4]#">
--------------------------------------------------------------------------------
Please try the following:
Check the ColdFusion documentation to verify that you are using the correct syntax.
Search the Knowledge Base to find a solution to your problem.
Browser Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322)
Remote Address 30.30.3.61
Referrer https://secure.irem.purplemonkey.net//home.cfm
Date/Time 14-Sep-06 04:46 PM
Stack Trace (click to expand)
at cfsechome2ecfm642595352.runPage(D:\iremroot\sechome.cfm:25)
coldfusion.runtime.NonArrayException: Object of type class coldfusion.runtime.Struct cannot be used as an array
at coldfusion.runtime.Cast._List(Cast.java:956)
at coldfusion.runtime.CFPage.ArrayLen(CFPage.java:347)
at cfsechome2ecfm642595352.runPage(D:\iremroot\sechome.cfm:25)
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:147)
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:357)
at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:62)
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:107)
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:43)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:80)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:47)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:35)
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:43)
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
at coldfusion.CfmServlet.service(CfmServlet.java:105)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:304)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
at jrun.servlet.FilterChain.service(FilterChain.java:101)
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:91)
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:252)
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:527)
at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:192)
at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:348)
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:451)
at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:294)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
Object of type class coldfusion.runtime.Struct cannot be used as an array
This occured a coupleof days ago for the foirst itme. I restarted the CF service and that fixed it. It happened again today and niether restarting hte service nor rebooting hte server has solved the problem. The arrays are definitely getting declared as arrays and we are not using structs or and struct related functions onthe site. Any insight on this would be greatly appreciated. Here is the full error with stack trace. Thanks in advance
Eric
Object of type class coldfusion.runtime.Struct cannot be used as an array
The error occurred in D:\iremroot\sechome.cfm: line 25
23 : <cflock scope="Session" timeout="10" type="Exclusive">
24 :
25 : <cfif isDefined("Session.navArray") AND ArrayLen(Session.navArray) GTE 17>
26 : <cfset SECTION_ID="#Session.navArray[3]#">
27 : <cfset sContentInsert_1="#Session.navArray[4]#">
--------------------------------------------------------------------------------
Please try the following:
Check the ColdFusion documentation to verify that you are using the correct syntax.
Search the Knowledge Base to find a solution to your problem.
Browser Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322)
Remote Address 30.30.3.61
Referrer https://secure.irem.purplemonkey.net//home.cfm
Date/Time 14-Sep-06 04:46 PM
Stack Trace (click to expand)
at cfsechome2ecfm642595352.runPage(D:\iremroot\sechome.cfm:25)
coldfusion.runtime.NonArrayException: Object of type class coldfusion.runtime.Struct cannot be used as an array
at coldfusion.runtime.Cast._List(Cast.java:956)
at coldfusion.runtime.CFPage.ArrayLen(CFPage.java:347)
at cfsechome2ecfm642595352.runPage(D:\iremroot\sechome.cfm:25)
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:147)
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:357)
at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:62)
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:107)
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:43)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:80)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:47)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:35)
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:43)
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
at coldfusion.CfmServlet.service(CfmServlet.java:105)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:304)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
at jrun.servlet.FilterChain.service(FilterChain.java:101)
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:91)
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:252)
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:527)
at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:192)
at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:348)
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:451)
at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:294)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
