我使用WSO2 Developer Studio创建了该项目。
在src/main/java
下,我创建了包samples.mediators
在该包中,类UnzipFileMediator
:
package samples.mediators;
import org.apache.synapse.MessageContext;
import org.apache.synapse.mediators.AbstractMediator;
public class UnzipFileMediator extends AbstractMediator {
public boolean mediate(MessageContext context) {
// TODO Implement your mediation logic here
System.out.println("UnzipFile Mediation entered");
return true;
}
}
要按照以下说明部署代码:
右键单击该项目,然后选择Export Project as Deployable Archive。
它创建了名为Unzip.jar
我将Jar文件部署到<ESB_HOME>/repository/components/lib
。目录
在synapse配置中,我像这样调用类
<class name="samples.mediators.UnzipFileMediator"></class>
但是当我尝试保存它时。它会产生以下错误:
org.apache.axis2.AxisFault:在路径中找不到类samples.mediators.UnzipFileMediator
我在这里做错了什么?
答案 0 :(得分:4)
使用其他包名称。
因为WSO2已经在另一个jar中使用了命名空间(或包)samples.mediators
。您现在已经部署了具有相同包名的第二个jar,这些类将不会在WSO2的Classpath中找到。
使用您的公司名称com.mycompany.mediators
为您自己的班级选择正确的包(名称空间)。