.NET Obfuscation error?
Hi,
I have run across a problem using a 3rd party .NET assembly in ColdFusion. I believe that it is because it is obfuscated, but I have never used CF before so I'm hoping someone has seen a similar error. I am just running a simple test to load the assembly and then use cfdump to see that is has loaded. The browser just displays a blank page but has the exception below in the installation\logs directory. In the example I use a test dll, TempLib.dll, which is just a simple class that inherits from a class in liquidXML. If I run a test that just loads the liquidxml dll and dump it then it works just fine.
Thanks for any help,
Bruce
ColdFusion Version: 9,0,0,251028 Developer
Server: W2k3 64B
WebServer: IIS6.0
<cftry>
<cfobject action="Create"
type=".NET"
class="com.TempLib.Sample"
ASSEMBLY="C:\DLLs\TempLib.dll,C:\DLLs\LiquidTechnologies.Runtime.Net20.dll"
name="className">
<cfset className.init()>
<cfoutput>
MyLiquidXML Sample:
<cfdump label="TempLib.Sample Class Dump" var="#className#">
</cfoutput>
<cfcatch type="Any">
<cfoutput>
Exception caught: #cfcatch.message#
</cfoutput>
</cfcatch>
</cftry>
Exception:
"Error","web-2","03/04/11","09:11:44",,"Illegal method name "" "" in class LiquidTechnologies/Runtime/Net20/XmlObjectBase The specific sequence of files included or processed is: C:\ColdFusion9\wwwroot\MyLiquidXML_cfm.cfm, line: 6 "
java.lang.ClassFormatError: Illegal method name " " in class LiquidTechnologies/Runtime/Net20/XmlObjectBase
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.lang.ClassLoader.defineClass(ClassLoader.java:466)
at coldfusion.runtime.dotnet.DynamicClassLoader.access$100(DynamicClassLoader.java:27)
at coldfusion.runtime.dotnet.DynamicClassLoader$1.run(DynamicClassLoader.java:108)
at java.security.AccessController.doPrivileged(Native Method)
at coldfusion.runtime.dotnet.DynamicClassLoader.findClass(DynamicClassLoader.java:99)
at coldfusion.runtime.dotnet.DynamicClassLoader.loadClass(DynamicClassLoader.java:83)
at coldfusion.runtime.dotnet.DynamicClassLoader.loadClass(DynamicClassLoader.java:60)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.lang.ClassLoader.defineClass(ClassLoader.java:466)
at coldfusion.runtime.dotnet.DynamicClassLoader.access$100(DynamicClassLoader.java:27)
at coldfusion.runtime.dotnet.DynamicClassLoader$1.run(DynamicClassLoader.java:108)
at java.security.AccessController.doPrivileged(Native Method)
at coldfusion.runtime.dotnet.DynamicClassLoader.findClass(DynamicClassLoader.java:99)
at coldfusion.runtime.dotnet.DynamicClassLoader.loadClass(DynamicClassLoader.java:83)
at coldfusion.runtime.dotnet.DynamicClassLoader.loadClass(DynamicClassLoader.java:60)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.lang.ClassLoader.defineClass(ClassLoader.java:466)
at coldfusion.runtime.dotnet.DynamicClassLoader.access$100(DynamicClassLoader.java:27)
at coldfusion.runtime.dotnet.DynamicClassLoader$1.run(DynamicClassLoader.java:108)
at java.security.AccessController.doPrivileged(Native Method)
at coldfusion.runtime.dotnet.DynamicClassLoader.findClass(DynamicClassLoader.java:99)
at coldfusion.runtime.dotnet.DynamicClassLoader.loadClass(DynamicClassLoader.java:83)
at coldfusion.runtime.dotnet.DynamicClassLoader.loadClass(DynamicClassLoader.java:60)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.lang.ClassLoader.defineClass(ClassLoader.java:466)
at coldfusion.runtime.dotnet.DynamicClassLoader.access$100(DynamicClassLoader.java:27)
at coldfusion.runtime.dotnet.DynamicClassLoader$1.run(DynamicClassLoader.java:108)
at java.security.AccessController.doPrivileged(Native Method)
at coldfusion.runtime.dotnet.DynamicClassLoader.findClass(DynamicClassLoader.java:99)
at coldfusion.runtime.dotnet.DynamicClassLoader.loadClass(DynamicClassLoader.java:83)
at coldfusion.runtime.dotnet.DynamicClassLoader.loadClass(DynamicClassLoader.java:60)
at coldfusion.runtime.dotnet.Assembly.loadClass(Assembly.java:236)
at coldfusion.runtime.dotnet.Assembly.loadClass(Assembly.java:223)
at coldfusion.runtime.dotnet.DotNetProxyFactory.getProxy(DotNetProxyFactory.java:78)
at coldfusion.runtime.ProxyFactory.getProxy(ProxyFactory.java:65)
at coldfusion.runtime.CFPage.createObjectProxy(CFPage.java:4949)
at coldfusion.tagext.lang.ObjectTag.doStartTag(ObjectTag.java:427)
at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:2722)
at cfMyLiquidXML_cfm2ecfm2141954130.runPage(C:\ColdFusion9\wwwroot\MyLiquidXML_cfm.cfm:6)
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:231)
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:416)
at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65)
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:363)
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:87)
at coldfusion.filter.LicenseFilter.invoke(LicenseFilter.java:27)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70)
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:53)
at coldfusion.CfmServlet.service(CfmServlet.java:200)
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
at jrun.servlet.FilterChain.service(FilterChain.java:101)
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)
at jrun.servlet.http.WebService.invokeRunnable(WebService.java:172)
at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320)
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
