-1

我的应用程序日志中出现 JOTM 异常。我没有发现任何因此而刹车的功能。我试图找出它从哪里开始并最终找到 0 个自定义代码开始这个错误。除此之外,我尝试com.springsource.org.objectweb.jotm-2.0.10.jar从 lib 目录(ant项目)中替换 jotm jar(),但我仍然无法摆脱这个错误。有没有人之前有过相同或相似的堆栈跟踪并克服了它?

请分享任何有用的想法以消除此错误消息。

2017-02-16 14:41:56,524 [    TransactionImpl.java:JotmBatch:769] - TransactionImpl.timeoutExpired
DEBUG [JotmBatch] (TransactionImpl.java:980) - make subcoordinator
2017-02-16 14:41:56,524 [    TransactionImpl.java:JotmBatch:980] - make subcoordinator
ERROR [JotmBatch] (TransactionImpl.java:988) - new SubCoordinator raised exception: 
java.rmi.StubNotFoundException: Stub class not found: org.objectweb.jotm.SubCoordinator_Stub; nested exception is: 
    java.lang.ClassNotFoundException: org.objectweb.jotm.SubCoordinator_Stub
    at sun.rmi.server.Util.createStub(Util.java:297)
    at sun.rmi.server.Util.createProxy(Util.java:142)
    at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:197)
    at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:179)
    at org.objectweb.carol.rmi.jrmp.server.JUnicastServerRef.exportObject(JUnicastServerRef.java:124)
    at org.objectweb.carol.rmi.jrmp.server.JUnicastRemoteObject.exportObjectR(JUnicastRemoteObject.java:126)
    at org.objectweb.carol.rmi.jrmp.server.JUnicastRemoteObject.exportObject(JUnicastRemoteObject.java:103)
    at org.objectweb.carol.rmi.multi.JrmpPRODelegate.exportObject(JrmpPRODelegate.java:96)
    at org.objectweb.carol.rmi.multi.MultiPRODelegate.exportObject(MultiPRODelegate.java:90)
    at javax.rmi.PortableRemoteObject.exportObject(PortableRemoteObject.java:100)
    at javax.rmi.PortableRemoteObject.<init>(PortableRemoteObject.java:84)
    at org.objectweb.jotm.SubCoordinator.<init>(SubCoordinator.java:201)
    at org.objectweb.jotm.TransactionImpl.makeSubCoord(TransactionImpl.java:985)
    at org.objectweb.jotm.TransactionImpl.timeoutExpired(TransactionImpl.java:788)
    at org.objectweb.jotm.TimerEvent.process(TimerEvent.java:103)
    at org.objectweb.jotm.TimerManager.batch(TimerManager.java:230)
    at org.objectweb.jotm.Batch.run(TimerManager.java:87)
Caused by: java.lang.ClassNotFoundException: org.objectweb.jotm.SubCoordinator_Stub
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1892)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1735)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)
    at sun.rmi.server.Util.createStub(Util.java:292)
    ... 16 more
4

1 回答 1

2

很难找出确切的原因,但ClassNotFoundException很可能意味着您的项目的运行时依赖项配置不正确。一些库代码尝试按其名称加载类,但该类不在类路径中。

接下来的步骤将有助于解决它:

1) 找到包含 SubCoordinator_Stub 的 jar,并确保该 jar 包含在项目的运行时依赖项中。

2)如果第一个选项已经完成,但它没有帮助,您的应用程序中可能有不同的 ClassLoader。找出哪个用于加载类并尝试理解为什么它没有依赖关系。


最终答案: 丢失的 jar 是 jotm-core.jar,可以使用谷歌搜索轻松找到。但是,我错过了这一点,因为我认为 jotm 是包含所有内容的独立库,这是错误的。

于 2017-02-16T09:13:31.690 回答