【发布时间】:2022-01-13 06:41:05
【问题描述】:
我使用的是 Lucee 服务器,我有一个在 Adobe CF 中预编译的 CFC 文件,最近我们从 ACF 迁移到了 Lucee。在这里,我面临创建它的对象的问题。
与其相关的代码放在同一目录下的另一个 CFC 中,如下所示:
<cfset myEncryption = createObject("component", "encryption") />
下面是堆栈跟踪。有人可以建议我如何解决这个问题吗?它需要哪些设置和配置才能工作?
lucee.runtime.exp.NativeException: Coldfusion/runtime/UDFMethod at java.base/java.lang.ClassLoader.defineClass1(Native Method) at java.base/java.lang.ClassLoader.defineClass(Unknown Source) at java .base/java.lang.ClassLoader.defineClass(Unknown Source) at lucee.commons.lang.PhysicalClassLoader._loadClass(PhysicalClassLoader.java:201) at lucee.commons.lang.PhysicalClassLoader.loadClass(PhysicalClassLoader.java:182) at lucee .runtime.MappingImpl.getPhysicalClass(MappingImpl.java:276) 在 lucee.runtime.PageSourceImpl._compile(PageSourceImpl.java:449) 在 lucee.runtime.PageSourceImpl.compile(PageSourceImpl.java:413) 在 lucee.runtime.PageSourceImpl。 loadPhysical(PageSourceImpl.java:346) at lucee.runtime.PageSourceImpl.loadPageThrowTemplateException(PageSourceImpl.java:237) at lucee.runtime.PageSourceImpl.loadPage(PageSourceImpl.java:1013) at lucee.runtime.component.ComponentLoader._search(ComponentLoader .java:219) 在 lucee.runtime.component.ComponentLoader._search(ComponentLoader.java:117) 一个t lucee.runtime.component.ComponentLoader.searchComponent(ComponentLoader.java:79) 在 lucee.runtime.PageContextImpl.loadComponent(PageContextImpl.java:3247) 在 lucee.runtime.functions.other.CreateObject.doComponent(CreateObject.java:148 ) 在 lucee.runtime.functions.other.CreateObject.call(CreateObject.java:70) 在 lucee.runtime.functions.other.CreateObject.call(CreateObject.java:49) 在 member_cfc$cf.udfCall3(/cfc/Member .cfc:1410) 在 member_cfc$cf.udfCall(/cfc/Member.cfc) 在 lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:106) 在 lucee.runtime.type.UDFImpl._call(UDFImpl.java :344) 在 lucee.runtime.type.UDFImpl.call(UDFImpl.java:217) 在 lucee.runtime.ComponentImpl._call(ComponentImpl.java:684) 在 lucee.runtime.ComponentImpl._call(ComponentImpl.java:572)在 lucee.runtime.ComponentImpl.call(ComponentImpl.java:1911) 在 lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:787) 在 lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:1747) 在 h tml.loggedin_cfm$cf.call(/html/loggedin.cfm:181) 在 lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1034) 在 lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:926) 在 lucee。 runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:217) at lucee.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:44) at lucee.runtime.PageContextImpl.execute(PageContextImpl.java:2460) at lucee.runtime .PageContextImpl._execute(PageContextImpl.java:2450) 在 lucee.runtime.PageContextImpl.executeCFML(PageContextImpl.java:2421) 在 lucee.runtime.engine.Request.exe(Request.java:45) 在 lucee.runtime.engine。 cfMLEngineImpl._service(CFMLEngineImpl.java:1179) 在 lucee.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:1125) 在 lucee.loader.engine.CFMLEngineWrapper.serviceCFML(CFMLEngineWrapper.java:97) 在 lucee.loader.servlet .CFMLServlet.service(CFMLServlet.java:51) at javax.servlet.http.HttpServlet.service(HttpServlet.java:733) at org.apache.catalina.cor e.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) 在 org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java: 53) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) 在 org.apache.catalina.core.StandardWrapperValve .invoke(StandardWrapperValve.java:202) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) 在 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542) 在 org. apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) 在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. java:78) 在 org.apache.catalina.connector.CoyoteAdapter.service(C oyoteAdapter.java:357) 在 org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:433) 在 org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) 在 org.apache.coyote.AbstractProtocol $ConnectionHandler.process(AbstractProtocol.java:893) 在 org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707) 在 org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase .java:49) 在 java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 在 org.apache.tomcat 的 java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)。 util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Unknown Source) 原因:java.lang.NoClassDefFoundError: coldfusion/runtime/UDFMethod ... 63更多原因:java.lang.ClassNotFoundException:类 [coldfusion.runtime.UDFMethod] 无效或不存在于 lucee.commons.lang.PhysicalClassLoader.findClass(PhysicalClassLoader.ja va:161) 在 lucee.commons.lang.PhysicalClassLoader.loadClass(PhysicalClassLoader.java:142) 在 lucee.commons.lang.PhysicalClassLoader.loadClass(PhysicalClassLoader.java:125) 在 lucee.commons.lang.PhysicalClassLoader.loadClass(PhysicalClassLoader .java:119) ... 63 更多原因:java.nio.file.NoSuchFileException: C:\inetpub\alhpa.boul.com\WEB-INF\lucee\cfclasses\CFC__inetpub_alhpa_boul_com_cfc6280\coldfusion\runtime\UDFMethod.class at java.base/sun.nio.fs.WindowsException.translateToIOException(Unknown Source) at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source) at java.base/sun.nio.fs.WindowsException.rethrowAsIOException( Unknown Source) 在 java.base/sun.nio.fs.WindowsFileSystemProvider.newByteChannel(Unknown Source) 在 java.base/java.nio.file.Files.newByteChannel(Unknown Source) 在 java.base/java.nio.file。 java.base/java.nio.file.spi.FileSystemProvider.newInputStream(Unknown Source) at java.base/java.nio.file.Files.newInput 的 Files.newByteChannel(Unknown Source)在 lucee.commons 的 lucee.commons.io.IOUtil.copy(IOUtil.java:190) 的 lucee.commons.io.res.type.file.FileResource.getInputStream(FileResource.java:243) 的流(未知来源)。 lang.PhysicalClassLoader.findClass(PhysicalClassLoader.java:157) ... 66 更多
【问题讨论】:
-
您还应该提供用于创建 CFC 对象的代码。我也不清楚“十六进制代码中的加密文件”是什么意思。你能澄清一下这是什么类型的文件吗?听起来它是一些二进制文件而不是 CFC。
-
我在加密文件中的 CFC 文件(如 java 类),最近我们将代码移到了 Lucee,所以它不起作用。
-
这就是我的怀疑。所以它是一个编译文件。再次,请分享您尝试从中实例化对象的代码。而且您还应该分享您放置该文件的位置,因为错误消息说找不到它。没有这些信息,很难提供有用的答案。
-
我的文件 encrytion.cfc 在路径 C:\inetpub\alhpa.boul.com\cfc 下,我从 C:\inetpub\alhpa.boul.com\cfc\member.cfc 调用如下
我还添加了完整的错误转储 -
My CFC file in encrypted file ( Like java class) , recently we moved our code to Lucee, so it did not worked?你的意思是你compiled你的cfml源代码用Adobe CF然后尝试在Lucee下运行编译代码?
标签: java encryption coldfusion cfc lucee