我必须将包含 WSO2 ESB 自定义消息处理器的 jar 文件放到我的 WSO2 EI 安装中?



我在WSO2 EI中很新,我正在尝试开发一个自定义消息处理器,我必须在ESB流中使用。

目前我只扩展了采样处理器类,这个:https://github.com/wso2/wso2-synapse/blob/master/modules/core/src/main/java/org/apache/synapse/message/processor/impl/sampler/SamplingProcessor.java

进入一个 Maven 项目。

我正在尝试使用一种简约的场景,其中我只覆盖插入简单日志的setParameters((方法,这是我的代码:

package com.mycompany.toolkit.messageprocessor;
import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.synapse.message.processor.impl.ScheduledMessageProcessor;
import org.apache.synapse.message.processor.impl.sampler.SamplingProcessor;
public abstract class SamplingProcessorHeaderRateLimitation extends SamplingProcessor {
private static final Log logger = LogFactory.getLog(ScheduledMessageProcessor.class.getName());

@Override
public void setParameters(Map<String, Object> parameters) {
logger.info("setParameters() START");
// TODO Auto-generated method stub
super.setParameters(parameters);
logger.info("setParameters() END");
}
}

我使用 Maven 创建包含 thi 类编译版本的 jar 文件。

我的疑问是:我在哪里将生成的SamplingProcessorHeaderRateLimit-0.0.1-SNAPSHOT.jar 文件放入我的WSO2 EI 6.0.0安装中?

将 JAR 文件放在 WSO2 EI 的lib目录中。

<EI_HOME>/lib

另一种选择:

还可以通过管理控制台更新项目。请参阅以下链接 https://docs.wso2.com/display/EI600/Uploading+Artifacts

你应该把它放在wso2ei-6.0.0\lib中。然后,您应该能够在XML中将其引用为com.mycompany.toolkit.messageprocessor.SamplingProcessorHeaderRateLimit。

但是,我相信您不能将其设置为抽象类,因为这样做会阻止 WSO2 实例化它。所以你应该从你的类中删除"abstract"关键字。

最新更新