使用Java库与ColdFusion 9 [英] Using Java libraries with ColdFusion 9
问题描述
我目前正在运行一个应用一些自然语言处理技术来分析数据的Java应用程序。这个应用程序包括一个Java类文件和一个.bin扩展名库
应用程序在我的开发服务器上正常工作,但在实时服务器上我得到以下错误:
I am currently running a Java application which applies some natural language processing techniques to analyze data. This application includes a Java Class file and 1 library of .bin extension The application works fine on my development server but on the live server I get the error below:
对象实例化异常。
实例化Java对象时发生异常。该类不能是接口或抽象类。 错误:opennlp / tools / util / ObjectStream。
堆栈跟踪java.lang .NoClassDefFoundError:
opennlp / tools / util / ObjectStream
at java.lang.Class.getDeclaredFields0(Native方法)
at java.lang.Class.privateGetDeclaredFields(Class.java:2291)
at java.lang.Class.privateGetPublicFields(Class.java:2324)
at java.lang.Class.getFields(Class.java:1359)
at coldfusion.runtime.java.ObjectHandler。初始化(ObjectHandler.java:35)
at coldfusion.runtime.java.ObjectHandler。(ObjectHandler.java30)
at coldfusion.runtime.java.ReflectionCache $ 1.fetch(ReflectionCache.java:29)
at coldfusion.util.SoftCache.get_statsOff(SoftCache.java:133)
at coldfusion.util.SoftCache.get(SoftCache.java:81)
at coldfusion.runtime.java.ReflectionCache .get(ReflectionCache.java:36)
at coldfusion.runtime.java.JavaProxy。(JavaProxy.java:35)
at coldfusion.runtime.java.JavaProxyFactory.getProxy(JavaProxyFactory.java:89)
at coldfusion.runtime.ProxyFactory.getProxy(ProxyFactory.java:65)
at coldfusion.runtime.CFPage.createObjectProxy(CFPage.java:5002)
at coldfusion.runtime.CFPage.CreateObject (CFPage.java:4966)
at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4907)
at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4885)
at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4842)
at cfWord_Cloud_Report2ecfm2061667591.runPage(E:\sites\SignatureWebMedical.Com\cf_modules\reports\sounding\Word_Cloud_Report.cfm:40)
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:231)
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:416)
at coldfusion.runtime.CfJspPage ._emptyTcfTag(CfJspPage.java:2722)
at cfindex2ecfm1980726432._factor0(E:\sites_virtualdirs\admin\reports\index.cfm:425)
at cfindex2ecfm1980726432._factor7(E:\ sites_virtualdirs\admin\reports\index.cfm:403)
at cfindex2ecfm1980726432._factor8(E:\sites_virtualdirs\admin\reports\index.cfm:188)
at cfindex2ecfm1980726432。 runpage(E:\sites_virtualdirs\admin\reports\index.cfm:1)
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:360)
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
at coldfusion.filter.PathFilter.invoke PathFilter.java:94)
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70)
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
在coldfusion .filter.BrowserFilter.invoke(BrowserFilter.java:38)
在coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
在coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38 )
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62)
在coldfusion.filter.RequestThrottleFilter。在coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
在jrun中调用(RequestThrottleFilter.java:126)
at coldfusion.CfmServlet.service(CfmServlet.java:200)
.servlet.FilterChain.doFilter(FilterChain.java:86)
在com.intergral.fusionreactor.filter.FusionReactorFilter.b(FusionReactorFilter.java:376)
at com.intergral.fusionreactor.filter.FusionReactorFilter .c(FusionReactorFilter.java:254)
在com.intergral.fusionreactor.filter.FusionReactorFilter.doFilter(FusionReactorFilter.java:164)
在jrun.servlet.FilterChain.doFilter(FilterChain.java:94 )
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
在jrun.servlet。 FilterChain.doFilter(FilterChain.java:94)
在jrun.servlet.FilterChain.service(FilterChain.java:101)
在jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
在jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)
在jrun.servlet.ServletEngineService.dispatch(ServletEngineService .java:543)
在jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)
在jrunx.scheduler.ThreadPool $ DownstreamMetrics.invokeRunnable(ThreadPool.java:320)
at jrunx.scheduler.ThreadPool $ ThreadThrottle.invokeRunnable(ThreadPool.java:428)
在jrunx.scheduler.ThreadPool $ UpstreamMetrics.invokeRunnable(ThreadPool.java:266)
在jrunx.scheduler.WorkerThread。运行(WorkerThread.java:66)
导致:java.lang.ClassNotFoundException:opennlp.tools.util.ObjectStream
at coldfusion.bootstrap.BootstrapClassLoader.loadClass(BootstrapClassLoader。 java:235)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316)
... 61更多
Stack Trace java.lang.NoClassDefFoundError: opennlp/tools/util/ObjectStream at java.lang.Class.getDeclaredFields0(Native Method) at java.lang.Class.privateGetDeclaredFields(Class.java:2291) at java.lang.Class.privateGetPublicFields(Class.java:2324) at java.lang.Class.getFields(Class.java:1359) at coldfusion.runtime.java.ObjectHandler.Initialize(ObjectHandler.java:35) at coldfusion.runtime.java.ObjectHandler.(ObjectHandler.java:30) at coldfusion.runtime.java.ReflectionCache$1.fetch(ReflectionCache.java:29) at coldfusion.util.SoftCache.get_statsOff(SoftCache.java:133) at coldfusion.util.SoftCache.get(SoftCache.java:81) at coldfusion.runtime.java.ReflectionCache.get(ReflectionCache.java:36) at coldfusion.runtime.java.JavaProxy.(JavaProxy.java:35) at coldfusion.runtime.java.JavaProxyFactory.getProxy(JavaProxyFactory.java:89) at coldfusion.runtime.ProxyFactory.getProxy(ProxyFactory.java:65) at coldfusion.runtime.CFPage.createObjectProxy(CFPage.java:5002) at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4966) at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4907) at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4885) at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4842) at cfWord_Cloud_Report2ecfm2061667591.runPage(E:\sites\SignatureWebMedical.Com\cf_modules\reports\sounding\Word_Cloud_Report.cfm:40) at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:231) at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:416) at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:2722) at cfindex2ecfm1980726432._factor0(E:\sites_virtualdirs\admin\reports\index.cfm:425) at cfindex2ecfm1980726432._factor7(E:\sites_virtualdirs\admin\reports\index.cfm:403) at cfindex2ecfm1980726432._factor8(E:\sites_virtualdirs\admin\reports\index.cfm:188) at cfindex2ecfm1980726432.runPage(E:\sites_virtualdirs\admin\reports\index.cfm:1) 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:360) at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48) at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40) at coldfusion.filter.PathFilter.invoke(PathFilter.java:94) 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:62) at coldfusion.filter.RequestThrottleFilter.invoke(RequestThrottleFilter.java:126) at coldfusion.CfmServlet.service(CfmServlet.java:200) at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89) at jrun.servlet.FilterChain.doFilter(FilterChain.java:86) at com.intergral.fusionreactor.filter.FusionReactorFilter.b(FusionReactorFilter.java:376) at com.intergral.fusionreactor.filter.FusionReactorFilter.c(FusionReactorFilter.java:254) at com.intergral.fusionreactor.filter.FusionReactorFilter.doFilter(FusionReactorFilter.java:164) at jrun.servlet.FilterChain.doFilter(FilterChain.java:94) 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.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203) 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) Caused by: java.lang.ClassNotFoundException:opennlp.tools.util.ObjectStream at coldfusion.bootstrap.BootstrapClassLoader.loadClass(BootstrapClassLoader.java:235) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316) ... 61 more
在我看来,这是一个类路径问题。我有与Dev服务器相同的问题,但通过将所有我的文件放在Cold Fusion 9目录中修复它: C:\ColdFusion9\runtime\servers\lib
当我将类文件和库.bin文件放在Live服务器上的同一文件夹中时,它不工作。
每次添加/删除类文件和.bin文件时,重新启动我的生产服务器。
It seems to me that it’s a class path issue. I had the same problem with the Dev server but fixed it by placing all my files in the Cold Fusion 9 directory: C:\ColdFusion9\runtime\servers\lib
When I place the class file and library .bin file in the same folder on the Live server it does not work.
I restart my production server every time I am adding/deleting the class file and .bin files.
推荐答案
问题是windows的版本。在开发我们使用Windows Server 2008 R2和生产我们使用Windows Server 2008 SP2,这是基于我在线阅读他们有很多差异(小但重要)我们在星期五更新了我们的生产服务器,一切开始工作。感谢所有回覆这则讯息。
My issue was the versions of windows. On development we are using Windows server 2008 R2 and on production we were using Windows server 2008 SP2, which based on what I read online they have a lot differences (minor but important) We updated our production server on Friday and everything started working. Thanks to all that replied to this post.
这篇关于使用Java库与ColdFusion 9的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!