java.lang.NoClassDefFoundError in Array.map()

Today I upgraded our Railo server to Lucee according to the migration
according to https://bitbucket.org/lucee/lucee/wiki/Migrate_from_Railo.
The problem is now it appears each execution of Array.map() is failing
with java.lang.NoClassDefFoundError (railo/runtime/functions/BIF). Here is
the stack trace:

railo/runtime/functions/BIF
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.security.AccessController.doPrivileged(Native Method):-2
at java.net.URLClassLoader.findClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at java.lang.ClassLoader.defineClass1(Native Method):-2
at java.lang.ClassLoader.defineClass(Unknown Source):-1
at java.security.SecureClassLoader.defineClass(Unknown Source):-1
at java.net.URLClassLoader.defineClass(Unknown Source):-1
at java.net.URLClassLoader.access$100(Unknown Source):-1
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.security.AccessController.doPrivileged(Native Method):-2
at java.net.URLClassLoader.findClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at lucee.commons.lang.ClassUtil.loadClass(Unknown Source):-1
at lucee.commons.lang.ClassUtil.loadClass(Unknown Source):-1
at lucee.transformer.library.function.FunctionLibFunction.getClazz(Unknown
Source):-1
at lucee.transformer.library.function.FunctionLibFunction.getBIF(Unknown
Source):-1
at lucee.runtime.interpreter.ref.func.BIFCall.getValue(Unknown Source):-1
at lucee.runtime.type.util.MemberUtil.call(Unknown Source):-1
at lucee.runtime.type.util.ArraySupport.call(Unknown Source):-1
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(
Unknown Source):-1
at lucee.runtime.PageContextImpl.getFunction(Unknown Source):-1
at devtest.test_cfm$cf.call(C:\inetpub\wwwroot\r1.events-registration.com
devtest\test.cfm:22):22
at lucee.runtime.PageContextImpl.doInclude(Unknown Source):-1
at lucee.runtime.PageContextImpl.doInclude(Unknown Source):-1
at lucee.runtime.listener.ModernAppListener._onRequest(Unknown Source):-1
at lucee.runtime.listener.ModernAppListener.onRequest(Unknown Source):-1
at lucee.runtime.PageContextImpl.execute(Unknown Source):-1
at lucee.runtime.PageContextImpl.execute(Unknown Source):-1
at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(Unknown Source):-1
at lucee.loader.servlet.CFMLServlet.service(Unknown Source):-1
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728):728
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:305):305
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:210):210
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve
.java:222):222
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve
.java:123):123
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
AuthenticatorBase.java:502):502
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
171):171
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
99):99
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:118):118
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
408):408
at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200):200
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
AbstractProtocol.java:589):589
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.
java:310):310
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source):-1
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source):-1
at java.lang.Thread.run(Unknown Source):-1

Here is the code I was testing:
b = [1,2,3,4]

c = b.map(function(n) {
return n * 10;
});

dump©

Tested this:
b = [1,2,3,4,5,6]

c = b.reduce(function(a, b) {
return a + b;
}, );

and it returned this error:
No matching Method/Function for Array.reduce(lucee.runtime.type.Closure,
array) foundOn Thursday, April 2, 2015 at 4:19:02 PM UTC-4, Jonathan Brookins wrote:

Today I upgraded our Railo server to Lucee according to the migration
according to https://bitbucket.org/lucee/lucee/wiki/Migrate_from_Railo.
The problem is now it appears each execution of Array.map() is failing
with java.lang.NoClassDefFoundError (railo/runtime/functions/BIF). Here is
the stack trace:

railo/runtime/functions/BIF
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.security.AccessController.doPrivileged(Native Method):-2
at java.net.URLClassLoader.findClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at java.lang.ClassLoader.defineClass1(Native Method):-2
at java.lang.ClassLoader.defineClass(Unknown Source):-1
at java.security.SecureClassLoader.defineClass(Unknown Source):-1
at java.net.URLClassLoader.defineClass(Unknown Source):-1
at java.net.URLClassLoader.access$100(Unknown Source):-1
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.security.AccessController.doPrivileged(Native Method):-2
at java.net.URLClassLoader.findClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at lucee.commons.lang.ClassUtil.loadClass(Unknown Source):-1
at lucee.commons.lang.ClassUtil.loadClass(Unknown Source):-1
at lucee.transformer.library.function.FunctionLibFunction.getClazz(Unknown
Source):-1
at lucee.transformer.library.function.FunctionLibFunction.getBIF(Unknown
Source):-1
at lucee.runtime.interpreter.ref.func.BIFCall.getValue(Unknown Source):-1
at lucee.runtime.type.util.MemberUtil.call(Unknown Source):-1
at lucee.runtime.type.util.ArraySupport.call(Unknown Source):-1
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(
Unknown Source):-1
at lucee.runtime.PageContextImpl.getFunction(Unknown Source):-1
at devtest.test_cfm$cf.call(C:\inetpub\wwwroot\r1.events-registration.com
devtest\test.cfm:22):22
at lucee.runtime.PageContextImpl.doInclude(Unknown Source):-1
at lucee.runtime.PageContextImpl.doInclude(Unknown Source):-1
at lucee.runtime.listener.ModernAppListener._onRequest(Unknown Source):-1
at lucee.runtime.listener.ModernAppListener.onRequest(Unknown Source):-1
at lucee.runtime.PageContextImpl.execute(Unknown Source):-1
at lucee.runtime.PageContextImpl.execute(Unknown Source):-1
at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(Unknown Source):-1
at lucee.loader.servlet.CFMLServlet.service(Unknown Source):-1
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728):728
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:305):305
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:210):210
at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:222):222
at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve

Can you raise a Ticket for this please?

MichaAm Donnerstag, 2. April 2015 schrieb Jonathan Brookins :

Today I upgraded our Railo server to Lucee according to the migration
according to https://bitbucket.org/lucee/lucee/wiki/Migrate_from_Railo.
The problem is now it appears each execution of Array.map() is failing
with java.lang.NoClassDefFoundError (railo/runtime/functions/BIF). Here is
the stack trace:

railo/runtime/functions/BIF
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.security.AccessController.doPrivileged(Native Method):-2
at java.net.URLClassLoader.findClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at java.lang.ClassLoader.defineClass1(Native Method):-2
at java.lang.ClassLoader.defineClass(Unknown Source):-1
at java.security.SecureClassLoader.defineClass(Unknown Source):-1
at java.net.URLClassLoader.defineClass(Unknown Source):-1
at java.net.URLClassLoader.access$100(Unknown Source):-1
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.net.URLClassLoader$1.run(Unknown Source):-1
at java.security.AccessController.doPrivileged(Native Method):-2
at java.net.URLClassLoader.findClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at java.lang.ClassLoader.loadClass(Unknown Source):-1
at lucee.commons.lang.ClassUtil.loadClass(Unknown Source):-1
at lucee.commons.lang.ClassUtil.loadClass(Unknown Source):-1
at lucee.transformer.library.function.FunctionLibFunction.getClazz(Unknown
Source):-1
at lucee.transformer.library.function.FunctionLibFunction.getBIF(Unknown
Source):-1
at lucee.runtime.interpreter.ref.func.BIFCall.getValue(Unknown Source):-1
at lucee.runtime.type.util.MemberUtil.call(Unknown Source):-1
at lucee.runtime.type.util.ArraySupport.call(Unknown Source):-1
at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(
Unknown Source):-1
at lucee.runtime.PageContextImpl.getFunction(Unknown Source):-1
at devtest.test_cfm$cf.call(C:\inetpub\wwwroot\r1.events-registration.com
devtest\test.cfm:22):22
at lucee.runtime.PageContextImpl.doInclude(Unknown Source):-1
at lucee.runtime.PageContextImpl.doInclude(Unknown Source):-1
at lucee.runtime.listener.ModernAppListener._onRequest(Unknown Source):-1
at lucee.runtime.listener.ModernAppListener.onRequest(Unknown Source):-1
at lucee.runtime.PageContextImpl.execute(Unknown Source):-1
at lucee.runtime.PageContextImpl.execute(Unknown Source):-1
at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(Unknown Source):-1
at lucee.loader.servlet.CFMLServlet.service(Unknown Source):-1
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728):728
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:305):305
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:210):210
at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:222):222
at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:123):123
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
AuthenticatorBase.java:502):502
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.
java:171):171
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.
java:99):99
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve
.java:118):118
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
408):408
at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200):200
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
AbstractProtocol.java:589):589
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.
java:310):310
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source):-1
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source):-1
at java.lang.Thread.run(Unknown Source):-1

Here is the code I was testing:
b = [1,2,3,4]

c = b.map(function(n) {
return n * 10;
});

dump©


You received this message because you are subscribed to the Google Groups
“Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send an
email to lucee+unsubscribe@googlegroups.com
<javascript:_e(%7B%7D,‘cvml’,‘lucee%2Bunsubscribe@googlegroups.com’);>.
To post to this group, send email to lucee@googlegroups.com
<javascript:_e(%7B%7D,‘cvml’,‘lucee@googlegroups.com’);>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/7a921046-a809-42a7-a4f7-5fec2a96e6c1%40googlegroups.com
https://groups.google.com/d/msgid/lucee/7a921046-a809-42a7-a4f7-5fec2a96e6c1%40googlegroups.com?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

I just found this in the catalina logs, perhaps it is relevant?
Apr 02, 2015 4:43:05 PM org.apache.catalina.session.StandardManager
startInternal
SEVERE: Exception loading sessions from persistent storage
java.lang.ClassNotFoundException: lucee.runtime.type.scope.JSession
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at
org.apache.catalina.util.CustomObjectInputStream.resolveClass(CustomObjectInputStream.java:76)
at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at
org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1595)
at
org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:1060)
at
org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:284)
at
org.apache.catalina.session.StandardManager.load(StandardManager.java:204)
at
org.apache.catalina.session.StandardManager.startInternal(StandardManager.java:491)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5443)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

I will of course include this in the ticket when I create it.

Can you raise a Ticket for this please?

Micha

Micha, where do I create the ticket? I don’t want to waste anyone’s time.
The Lucee version on the server is the same as my laptop, the only
difference being the laptop uses Jetty and the server Tomcat. Both
versions are Lucee 4.5.1.000 final. map() and reduce() work fine on the
laptop. Would it be prudent to uninstall the previous railo/tomcat stuff
and do a fresh install?On Friday, April 3, 2015 at 2:05:23 AM UTC-4, Micha wrote:

Micha,

Ticket created
-> https://bitbucket.org/lucee/lucee/issue/250/arraymap-and-arrayreduce-not-working

Apparently there was some issue during the in-place upgrade. I did a clean Lucee install this morning and it the code is working now.

Micha, can you remove the ticket I created about this?