我在我的冷融合应用程序中观察到非常奇怪的错误。此错误有时会出现,并且在页面刷新后它消失了。此错误与我的应用程序中的任何特定页面无关。它随机出现在任何页面中。请建议我如何更正它。
注意:它有时并不总是出现。 Coldfusion 服务器:10.8 Web 服务器:IIS 7 操作系统:Window 7
堆栈跟踪信息
The following information is meant for the website developer for debugging purposes.
Error Occurred While Processing Request
Index: 2, Size: 2
Resources:
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/5.0 (Windows NT 6.1; rv:20.0) Gecko/20100101 Firefox/20.0
Remote Address 127.0.0.1
Referrer http://mysite.url/index.cfm?action=users&displayMode=users&tagID=0&cfid=151062&cftoken=23d66b7903e3662d-80DF390F-0C45-8090-0A2DF20C76367E1F
Date/Time 05-Apr-13 07:26 PM
Stack Trace
java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
at java.util.ArrayList.rangeCheck(ArrayList.java:604)
at java.util.ArrayList.get(ArrayList.java:382)
at coldfusion.monitor.util.MonitorList.add(MonitorList.java:133)
at coldfusion.monitor.memory.SessionMemoryMonitor.record(SessionMemoryMonitor.java:68)
at coldfusion.monitor.memory.SessionMemoryMonitor.record(SessionMemoryMonitor.java:53)
at coldfusion.monitor.memory.MemoryMonitor.record(MemoryMonitor.java:279)
at coldfusion.monitor.memory.MemoryRequestEventHandler.onRequestComplete(MemoryRequestEventHandler.java:23)
at coldfusion.monitor.event.RequestMonitorEventProcessor.onRequestComplete(RequestMonitorEventProcessor.java:283)
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:46)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:112)
at coldfusion.filter.LicenseFilter.invoke(LicenseFilter.java:30)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:94)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62)
at coldfusion.CfmServlet.service(CfmServlet.java:219)
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:414)
at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:204)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:298)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
评论中的代码
<cfset siteArray = ArrayNew (1)>
<cfloop query="GetSites">
<cfset obj = StructNew ()>
<cfset obj.ID = GetSites.ID>
<cfset obj.Title = GetSites.Title>
<cfset obj.SiteURL = GetSites.SiteURL>
<cfset obj.LayoutID = GetSites.LayoutID>
<cfset t = ArrayAppend (siteArray, obj)>
<cfset tokenName = obj.SiteURL>
<cfset tokenName = Replace (tokenName, ".", "", "ALL")>
<cfset tokenName = Replace (tokenName, "-", "", "ALL")>
<cfset tokenName = "URL_#tokenName#">
<cfset "Application.#tokenName#" = ArrayLen (siteArray)>
</cfloop>