我正在WSo2 ESB中研究Smooks中介逻辑。我相信我的smooks配置文件,代理和jar文件已经准备就绪,但是执行测试时出现以下错误:
2015-10-03 23:25:05,903 [-] [vfs-Worker-1] ERROR NativeWorkerPool Uncaught exception
java.lang.NoClassDefFoundError: org/milyn/Smooks
at org.wso2.carbon.mediator.transform.SmooksMediator.createSmooksConfig(SmooksMediator.java:197)
at org.wso2.carbon.mediator.transform.SmooksMediator.mediate(SmooksMediator.java:92)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77)
at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47)
at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131)
at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:166)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
我已经下载了smooks 1.5所有文件,并将jar文件复制到我的ESB目录中:
/opt/wso2esb-4.8.1/repository/components/lib
我相信这是我需要的jar文件,因此我对无法找到Smooks类的错误感到困惑。是否存在其他配置,错误的lib中的jars等?我一直在尝试不同的方法,但最终我总是遇到此错误。我的想法可能是ESB正在将罐子放在另一个地方?有人遇到过这个问题吗?我将不胜感激,可以提供任何帮助。谢谢你的时间。
您无需复制任何jar即可在WSO2 ESB中使用smooks调解器。您只需要将smooks配置文件放在注册表中并创建代理服务,该代理服务将引用上述smooks配置文件以执行转换。 WSO2 ESB提供了对Smooks的支持。有关更多信息,请参阅博客文章[1]
[1] http://ravindraranwala.blogspot.com/2015/03/smooks-mediator-in-wso2-esb.html