I’m getting a seemingly random error message on a few of my Coldbox pages that I’m having a hard time figuring out. Most of the time the page loads fine, but every couple days or so this error will appear out of nowhere. A fwreinit will temporarily fix the issue.
Error Info:
**Message Content** :
Neither the method _actionExists was found in component C:\inetpub\wwwroot\taag\handlers\textMessagesNew.cfc nor was there any default method with this name present in any of the implementing interface.
URL: /index.cfm/textMessagesNew/report
**Page user was on**: /index.cfm
**Stack Trace**: C:\inetpub\wwwroot\taag\coldbox\system\web\services\HandlerService.cfc, Line 152
C:\inetpub\wwwroot\taag\coldbox\system\web\Controller.cfc, Line 745
C:\inetpub\wwwroot\taag\coldbox\system\web\Controller.cfc, Line 646
C:\inetpub\wwwroot\taag\coldbox\system\Bootstrap.cfc, Line 272
C:\inetpub\wwwroot\taag\Application.cfc, Line 204
**Additional Details** :
Ensure that the method is defined, and that it is spelled correctly
A few things I have tried so far with no luck:
-renaming the handler
-adding an init function to the handler (though it is not used in other handlers)
-explicitly extending the cb event handler extends="coldbox.system.eventhandler"
I have CB 6.5.2 setup to run on a legacy CF application. Its loaded in the onApplicationStart and CB requests are processed in onRequestStart
I can provide code snippets if anyone thinks it will be helpful but I basically created the handler through Commandbox scaffolding, so nothing special there.
Unfortunately we don’t have any Performance Monitoring Tools like FusionReactor to provide you with any detailed information. I hope to get that in place soon, perhaps this will provide some additional motivation on that front. The app is a fairly large legacy CF application without much structure, which we are just beginning to migrate to Coldbox so I’m sure we have some long running reports/pages that put a fair amount of load on the server. Most of the time though it doesn’t seem to effect the servers performance.
@lmajano
How would you go about addressing this issue? I am kind of at a loss.
Take a closer look at execution times of all actions of my problem handler? I’m sure setting up Fusion Reactor would be a beneficial for our app but do you think it could be useful in addressing this particular issue? Also, do you think this error is specific to ACF and not Lucee?
Thanks, any incite or direction would be much appreciated.
This is really an unusual problem. I have only seen it under high load using ACF engines. I am not sure if you have the latest engine fully patched. I also see you are in CB 6.5.2 Is there a way to upgrade to the latest of 6.8.1 and see if the errors continue to happen?
Having FusionReactor will definitely help to get further insight. @bdw429s have you seen this before?
Thanks @lmajano, I’ll start with upgrading CB like you suggested and see if that does the trick. I have 6.8.1 up on our test servers now. I have also recently applied a few patches to CF and am on 2018,0,15,330106 now. Oddly enough it looks like they just released Update 16 today which I will apply soon as well. Thanks!
@lmajano Hi Luis- We are still having this issue almost daily. We have upgraded to ACF 2023,0,06,330617 and we are running ColdBox Restore 7.2.1+13 on production. We also have FusionReactor but it has not helped us figure out a solution. We do not have high load on the server. It seems to only be happening in 2 different handlers which is strange. We have tried modifying the CB core file (\coldbox\system\web\services\HandlerService.cfc) to look for the method before trying to run it, but then it just errors out further down the stack.
line 159: if ( structKeyExists(oEventHandler,‘_actionExists’) && !oEventHandler._actionExists( arguments.ehBean.getMethod() ) ) {
line 181: if ( (!variables.handlerCaching || !arguments.ehBean.isMetadataLoaded()) && ( structKeyExists(oEventHandler,‘_actionMetadata’) ) ) {
Do you have any ideas of things we could try or modify? Or just to point us in the right direction?
Here is the full stack trace of one of the errors I caught:
"INFO","LOGBOXERRORLOG","01/22/2024","11:47:48","coldbox.system.web.Controller","controller error | ExtraInfo: ErrorType = Expression Message = Element ALLOWEDMETHODS is undefined in OHANDLER. StackTrace = coldfusion.runtime.UndefinedElementException: Element ALLOWEDMETHODS is undefined in OHANDLER.
at coldfusion.runtime.DotResolver.resolveSplitNameInMap(DotResolver.java:186 undefined)
at coldfusion.runtime.CfJspPage._resolve(CfJspPage.java:2680 undefined)
at coldfusion.runtime.CfJspPage._resolve(CfJspPage.java:2660 undefined)
at coldfusion.runtime.CfJspPage._resolveAndAutoscalarize(CfJspPage.java:2969 undefined)
at cfController2ecfc1561392721$func_RUNEVENT.runFunction(C:\inetpub\wwwroot\xxxx\coldbox\system\web\Controller.cfc:845 undefined)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:629 undefined)
at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:522 undefined)
at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:95 undefined)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:469 undefined)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:444 undefined)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:687 undefined)
at coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:4797 undefined)
at coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:4778 undefined)
at cfController2ecfc1561392721$funcRUNEVENT.runFunction(C:\inetpub\wwwroot\xxxx\coldbox\system\web\Controller.cfc:719 undefined)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:629 undefined)
at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:522 undefined)
at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:95 undefined)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:469 undefined)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:444 undefined)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:687 undefined)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:980 undefined)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:762 undefined)
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:4053 undefined)
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:4017 undefined)
at cfBootstrap2ecfc751231256$funcPROCESSCOLDBOXREQUEST.runFunction(C:\inetpub\wwwroot\xxxx\coldbox\system\Bootstrap.cfc:293 undefined)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:629 undefined)
at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:522 undefined)
at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:95 undefined)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:469 undefined)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:444 undefined)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:316 undefined)
at coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:4899 undefined)
at coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:4879 undefined)
at cfApplication2ecfc324785338$funcONREQUESTSTART.runFunction(C:\inetpub\wwwroot\xxxx\Application.cfc:219 undefined)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:629 undefined)
at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:559 undefined)
at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:522 undefined)
at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:95 undefined)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:469 undefined)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:444 undefined)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:316 undefined)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:975 undefined)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:696 undefined)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:503 undefined)
at coldfusion.runtime.AppEventInvoker.invoke(AppEventInvoker.java:115 undefined)
at coldfusion.runtime.AppEventInvoker.onRequestStart(AppEventInvoker.java:286 undefined)
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:562 undefined)
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:43 undefined)
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40 undefined)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:162 undefined)
at coldfusion.filter.IpFilter.invoke(IpFilter.java:45 undefined)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:97 undefined)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28 undefined)
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38 undefined)
at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:60 undefined)
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38 undefined)
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22 undefined)
at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62 undefined)
at coldfusion.filter.RequestThrottleFilter.invoke(RequestThrottleFilter.java:154 undefined)
at coldfusion.CfmServlet.service(CfmServlet.java:231 undefined)
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:311 undefined)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209 undefined)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153 undefined)
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:46 undefined)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:47 undefined)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178 undefined)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153 undefined)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51 undefined)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178 undefined)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153 undefined)
at jdk.internal.reflect.GeneratedMethodAccessor219.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43 undefined)
at java.base/java.lang.reflect.Method.invoke(Method.java:568 undefined)
at com.intergral.fusionreactor.j2ee.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:134 undefined)
at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doNext(FusionReactorRequestHandler.java:698 undefined)
at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doHttpServletRequest(FusionReactorRequestHandler.java:256 undefined)
at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doFusionRequest(FusionReactorRequestHandler.java:119 undefined)
at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.handle(FusionReactorRequestHandler.java:736 undefined)
at com.intergral.fusionreactor.j2ee.filter.FusionReactorCoreFilter.doFilter(FusionReactorCoreFilter.java:36 undefined)
at jdk.internal.reflect.GeneratedMethodAccessor218.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43 undefined)
at java.base/java.lang.reflect.Method.invoke(Method.java:568 undefined)
at com.intergral.fusionreactor.j2ee.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:71 undefined)
at jdk.internal.reflect.GeneratedMethodAccessor217.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43 undefined)
at java.base/java.lang.reflect.Method.invoke(Method.java:568 undefined)
at com.intergral.fusionreactor.agent.filter.FusionReactorStaticFilter.doFilter(FusionReactorStaticFilter.java:54 undefined)
at com.intergral.fusionreactor.agent.pointcuts.NewFilterChainPointCut$1.invoke(NewFilterChainPointCut.java:50 undefined)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java undefined)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167 undefined)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90 undefined)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481 undefined)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130 undefined)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93 undefined)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74 undefined)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357 undefined)
at org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:446 undefined)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63 undefined)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926 undefined)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791 undefined)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52 undefined)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191 undefined)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659 undefined)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61 undefined)
at java.base/java.lang.Thread.run(Thread.java:833 undefined) TagContext = ID: CF_DOTRESOLVER; LINE: 845; TEMPLATE: C:\inetpub\wwwroot\xxxx\coldbox\system\web\Controller.cfc ID: CF_UDFMETHOD; LINE: 719; TEMPLATE: C:\inetpub\wwwroot\xxxx\coldbox\system\web\Controller.cfc ID: CF_TEMPLATEPROXY; LINE: 293; TEMPLATE: C:\inetpub\wwwroot\xxxx\coldbox\system\Bootstrap.cfc ID: CF_UDFMETHOD; LINE: 219; TEMPLATE: C:\inetpub\wwwroot\xxxx\Application.cfc ExtraInfo = """" "
I am not sure I can assist if I can’t replicate the issue. However, we do have professional services to help assist you privately if that’s something you wish to consider. Support & Consulting