Class WSO2 ESB使用自定义中介

Class WSO2 ESB使用自定义中介,class,wso2,esb,mediator,Class,Wso2,Esb,Mediator,我喜欢为WSO2 ESB编写自定义中介。 我找到了一些这方面的教程,但在WSO2 ESB中无法使用。我想我可能在类中介器所需的路径中有错误,但让我解释一下: 为了编写这个中介,我使用了EclipseJuno的WSO2开发人员工作室 在那里,我创建了一个名为“b64writer”的新ESB中介项目,内容如下: package org.wso2.carbon; import org.apache.synapse.MessageContext; import org.apache.synapse.m

我喜欢为WSO2 ESB编写自定义中介。 我找到了一些这方面的教程,但在WSO2 ESB中无法使用。我想我可能在类中介器所需的路径中有错误,但让我解释一下:

为了编写这个中介,我使用了EclipseJuno的WSO2开发人员工作室

在那里,我创建了一个名为“b64writer”的新ESB中介项目,内容如下:

package org.wso2.carbon;
import org.apache.synapse.MessageContext; 
import org.apache.synapse.mediators.AbstractMediator;
public class B64Mediator extends AbstractMediator { 
    public boolean mediate(MessageContext context) { 
        // TODO Implement your mediation logic here         
        String inhalt = context.getEnvelope().toString();
        trace.trace("Message: " + inhalt);
        return true;
    }
}
在下一步中,我创建了一个新的碳应用程序项目,并在“依赖项”上选择了调解人。其配置为:

  • 组ID:org.wso2.carbon.b64mediator
  • 工件ID:b64mediator
  • 版本:1.0.0
我用右边的按钮创建了一个存档。我将此存档复制到“C:\wso2esb\repository\carbonapps\0”

现在我的问题是:我如何使用这个中介? 它应该是这样工作的:

<class name="org.wso2.carbon.B64Mediator" />


但事实并非如此。WSO2 ESB找不到该类。我的错误在哪里?

将归档文件放在
存储库/组件/dropins
存储库/组件/lib(如果您不将其构建为osgi捆绑包)
目录中。

您应该将类中介部署为java库工件,并从类中介中引用它们。也就是说,从dev studio中取出您装箱的jar,并将taht保存在repository/components/lib文件夹中,然后重新启动服务器。 然后引用like

<class name="org.wso2.carbon.B64Mediator" />


从您的顺序来看,我遇到了与您相同的问题,我通过使用WSO2 Developer Studio插件for eclipse创建中介库,成功地添加了中介。(打开新建向导框,选择WSO2/扩展/项目类型/中介项目)

然后创建中介或放入项目中,并将其作为jar文件导出到/repository/components/lib文件夹。每次更新jar时,或者如果在添加jar时正在运行ESB,则必须重新启动ESB


我希望这有帮助

我不知道你的问题是否解决了。我也有同样的问题,但我能解决它

我使用EclipseKepler中的WSO2开发者工作室“中介项目”创建了我的中介。接下来,我在项目中右键单击并在属性中选择“导出生成的类文件和资源”,导出到Java/JAR文件


您必须将JAR文件放入repository/components/lib文件夹并重新启动ESB

尝试了这两种方法,但均无效。如果单击“加载类”按钮,我仍然在路径中找不到错误类。它仍然不起作用。ESB无法找到该类。请检查我的包路径,是否正确?您的r包/类名是正确的..您是否需要构建那个JAR?也就是说,当您尝试exposr您的中介项目时,它将创建一个jar。如果您提取并查看,您将在那里看到类fiels。因此,如果您将其放在提到的lib文件夹中,它应该在calsspath中可用。但是您需要重新启动服务器“expsor”是什么意思?我尝试右键单击我的项目,并将其导出为JavaJAR文件。我还尝试将其导出为可部署的WSO2 Archiv。我得到一个双向的jar文件,但在WSO2 ESB中找不到该类。