Cbjavaloader problem with 6.2.2.91

The latest release breaks Javaloader with Coldbox app :sob:

6.2.2.90 works

	The Error Occurred in
/var/www/html/xxx/modules/cbantisamy/modules/cbjavaloader/models/Loader.cfc: line 135
133:             message = "Invalid library path",
134:             detail  = "The path is #dirPath#",
135:             type    = "JavaLoader.DirectoryNotFoundException"
136:          );
137:       }

called from /var/www/html/xxx/modules/cbantisamy/modules/cbjavaloader/models/Loader.cfc: line 69
called from /var/www/html/xxx/modules/cbantisamy/ModuleConfig.cfc: line 52
called from /var/www/html/xxx/coldbox/system/web/services/ModuleService.cfc: line 858
called from /var/www/html/xxx/coldbox/system/web/services/ModuleService.cfc: line 556
called from /var/www/html/xxx/coldbox/system/web/services/LoaderService.cfc: line 88
called from /var/www/html/xxx/coldbox/system/Bootstrap.cfc: line 110
called from /var/www/html/xxx/Application.cfc: line 205
called from /var/www/html/xxx/Application.cfc: line 302
called from /var/www/html/xxx/Application.cfc: line 250```

lucee.runtime.exp.CustomTypeException: Invalid library path
at lucee.runtime.tag.Throw._doStartTag(Throw.java:225)
at lucee.runtime.tag.Throw.doStartTag(Throw.java:212)
at throw_cfm$cf.udfCall(/throw.cfm:15)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.callWithNamedValues(UDFImpl.java:214)
at lucee.runtime.functions.system.CFFunction.call(CFFunction.java:109)
at models.loader_cfc$cf.udfCall1(/cbjavaloader/models/Loader.cfc:135)
at models.loader_cfc$cf.udfCall(/cbjavaloader/models/Loader.cfc)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.callWithNamedValues(UDFImpl.java:214)
at lucee.runtime.type.scope.UndefinedImpl.callWithNamedValues(UndefinedImpl.java:829)
at lucee.runtime.util.VariableUtilImpl.callFunctionWithNamedValues(VariableUtilImpl.java:858)
at lucee.runtime.PageContextImpl.getFunctionWithNamedValues(PageContextImpl.java:2113)
at models.loader_cfc$cf.udfCall1(/cbjavaloader/models/Loader.cfc:69)
at models.loader_cfc$cf.udfCall(/cbjavaloader/models/Loader.cfc)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:731)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:604)
at lucee.runtime.ComponentImpl.call(ComponentImpl.java:2110)
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:773)
at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:2081)
at modules.cbantisamy.moduleconfig_cfc$cf.udfCall(/modules/cbantisamy/ModuleConfig.cfc:52)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:731)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:604)
at lucee.runtime.ComponentImpl.call(ComponentImpl.java:2110)
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:773)
at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:2081)
at system.web.services.moduleservice_cfc$cf.udfCall2(/coldbox/system/web/services/ModuleService.cfc:858)
at system.web.services.moduleservice_cfc$cf.udfCall(/coldbox/system/web/services/ModuleService.cfc)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224)
at lucee.runtime.type.scope.UndefinedImpl.call(UndefinedImpl.java:811)
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:773)
at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:2081)
at system.web.services.moduleservice_cfc$cf.udfCall2(/coldbox/system/web/services/ModuleService.cfc:556)
at system.web.services.moduleservice_cfc$cf.udfCall(/coldbox/system/web/services/ModuleService.cfc)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:731)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:604)
at lucee.runtime.ComponentImpl.call(ComponentImpl.java:2110)
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:773)
at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:2081)
at system.web.services.loaderservice_cfc$cf.udfCall1(/coldbox/system/web/services/LoaderService.cfc:88)
at system.web.services.loaderservice_cfc$cf.udfCall(/coldbox/system/web/services/LoaderService.cfc)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:731)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:604)
at lucee.runtime.ComponentImpl.call(ComponentImpl.java:2110)
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:773)
at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:2081)
at coldbox.system.bootstrap_cfc$cf.udfCall1(/coldbox/system/Bootstrap.cfc:110)
at coldbox.system.bootstrap_cfc$cf.udfCall(/coldbox/system/Bootstrap.cfc)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:731)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:604)
at lucee.runtime.ComponentImpl.call(ComponentImpl.java:2110)
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:773)
at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:2081)
at application_cfc$cf.udfCall(/Application.cfc:205)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224)
at lucee.runtime.type.scope.UndefinedImpl.call(UndefinedImpl.java:811)
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:773)
at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:2081)
at application_cfc$cf.udfCall(/Application.cfc:302)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224)
at lucee.runtime.type.scope.UndefinedImpl.call(UndefinedImpl.java:811)
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:773)
at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:2081)
at application_cfc$cf.udfCall(/Application.cfc:250)
at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112)
at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357)
at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:731)
at lucee.runtime.ComponentImpl._call(ComponentImpl.java:604)
at lucee.runtime.ComponentImpl.call(ComponentImpl.java:2110)
at lucee.runtime.listener.ModernAppListener.call(ModernAppListener.java:477)
at lucee.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:129)
at lucee.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:41)
at lucee.runtime.PageContextImpl.execute(PageContextImpl.java:2816)
at lucee.runtime.PageContextImpl._execute(PageContextImpl.java:2803)
at lucee.runtime.PageContextImpl.executeCFML(PageContextImpl.java:2774)
at lucee.runtime.engine.Request.exe(Request.java:45)
at lucee.runtime.engine.CFMLEngineImpl._service(CFMLEngineImpl.java:1113)
at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:1070)
at lucee.loader.engine.CFMLEngineWrapper.serviceCFML(CFMLEngineWrapper.java:97)
at lucee.loader.servlet.jakarta.CFMLServlet.service(CFMLServlet.java:52)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:710)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:130)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at com.intergral.fusionreactor.j2ee.jakarta.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:132)
at com.intergral.fusionreactor.j2ee.jakarta.filter.FusionReactorRequestHandler.doNext(FusionReactorRequestHandler.java:705)
at com.intergral.fusionreactor.j2ee.jakarta.filter.FusionReactorRequestHandler.doHttpServletRequest(FusionReactorRequestHandler.java:263)
at com.intergral.fusionreactor.j2ee.jakarta.filter.FusionReactorRequestHandler.doFusionRequest(FusionReactorRequestHandler.java:126)
at com.intergral.fusionreactor.j2ee.jakarta.filter.FusionReactorRequestHandler.handle(FusionReactorRequestHandler.java:743)
at com.intergral.fusionreactor.j2ee.jakarta.filter.FusionReactorCoreFilter.doFilter(FusionReactorCoreFilter.java:35)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at com.intergral.fusionreactor.j2ee.jakarta.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:69)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at com.intergral.fusionreactor.agent.filter.FusionReactorStaticFilter.doFilterJakarta(FusionReactorStaticFilter.java:282)
at com.intergral.fusionreactor.agent.pointcuts.jakarta.JakartaNewFilterChainPointCut$1.invoke(JakartaNewFilterChainPointCut.java:48)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:79)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:116)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:666)
at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:718)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:396)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:903)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1773)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:59)
at java.base/java.lang.Thread.run(Unknown Source)```

Fully removed prev Lucee installation and reinstalled it

grrrrr, also with 6.2.2.90-RC ?

The cbjavaloader testsuite is passing for 6.2.2.91 (red is for boxlang)

Is there a difference between Commandbox box server start cfengine=lucee@6.2.2-SNAPSHOT+90 and the installer of the .90 RC?

Locally Commandbox works, but the server fails with the installer

Release Candidate 6.2.2.90-RC

that error is simply a directory not found?

what does the detail of the exception say, it should include the invalid path

This is all I got:

The Error Occurred in
/var/www/html/xxx/modules/cbantisamy/modules/cbjavaloader/models/Loader.cfc: line 135
133:             message = "Invalid library path",
134:             detail  = "The path is #dirPath#",
135:             type    = "JavaLoader.DirectoryNotFoundException"
136:          );
137:       }

called from /var/www/html/xxx/modules/cbantisamy/modules/cbjavaloader/models/Loader.cfc: line 69
67:    function appendPaths( required string dirPath, string filter = "*.jar" ){
68:       // Convert paths to array of file locations
69:       var qFiles         = arrayOfJars( argumentCollection = arguments );
70:       var iterator       = qFiles.iterator();
71:       var thisFile       = "";

called from /var/www/html/xxx/modules/cbantisamy/ModuleConfig.cfc: line 52
50:          .getWireBox()
51:          .getInstance( "loader@cbjavaloader" )
52:          .appendPaths( settings.libPath );
53:    }
54:

called from /var/www/html/xxx/coldbox/system/web/services/ModuleService.cfc: line 858
856:          */
857:          if ( structKeyExists( variables.mConfigCache[ arguments.moduleName ], "onLoad" ) ) {
858:             variables.mConfigCache[ arguments.moduleName ].onLoad();
859:          }
860:

called from /var/www/html/xxx/coldbox/system/web/services/ModuleService.cfc: line 556
554:          // Can we load module and has it been registered?
555:          if ( structKeyExists( variables.registeredModules, moduleName ) && canLoad( moduleName ) ) {
556:             activateModule( moduleName );
557:          }
558:       }

called from /var/www/html/xxx/coldbox/system/web/services/LoaderService.cfc: line 88
86:
87:       // Activate All Modules
88:       services.moduleService.activateAllModules();
89:       // Execute afterConfigurationLoad
90:       services.interceptorService.announce( "afterConfigurationLoad" );

called from /var/www/html/xxx/coldbox/system/Bootstrap.cfc: line 110
108:             variables.COLDBOX_CONFIG_FILE,
109:             variables.COLDBOX_APP_MAPPING,
110:             variables.COLDBOX_WEB_MAPPING
111:          );
112:       // Get the reinit key

called from /var/www/html/xxx/Application.cfc: line 205
203:          COLDBOX_WEB_MAPPING
204:       );
205:       application.cbBootstrap.loadColdbox();
206:       return true;
207:    }

called from /var/www/html/xxx/Application.cfc: line 302
300:     **/
301:    private void function reinitApplication(){
302:       onApplicationStart();
303:    }
304:

called from /var/www/html/xxx/Application.cfc: line 250
248:             loadEnv( force: true );
249:          }
250:          reinitApplication();
251:       }
252:       ```

nothing jumps out

is loading

does that dir exist? i.e. /var/www/html/xxx/modules/cbantisamy/models/lib

yes, dir exists…

downgraded to .54 same error, another server runs on this version… so must be something else… strange…

but I had the identical error message on my dev machine… which disappeared after downgrade

I will try to find the issue

1 Like

if I do in line 131 a directoryExists: returns false
if I do an expandPath and then directoryExists: returns true

       /**
128          * Get an array of jars from a directory location
129          */
130         array function arrayOfJars( required string dirPath, string filter = "*.jar" ){
131                 if ( not directoryExists( arguments.dirPath ) ) {
132                         throw(
133                                 message = "Invalid library path",
134                                 detail  = "The path is #dirPath#",
135                                 type    = "JavaLoader.DirectoryNotFoundException"
136                         );
137                 }

odd, these modules often add mappings

what is the value of dirPath?

try dumping out getApplicationSettings().mappings ?

I finally found the issue, there was another config , overwriting the module path…after using expandPath there, it worked as intended.

I still don’t know why Lucee on Commandbox initially had the same issue which disappeared after downgrade.

Sorry for the false alarm.

2 Likes