我应该在哪里将包含 WSO2 ESB 自定义消息处理器的 jar 文件放入我的 WSO2 EI 安装中?
Where have I to put the jar file containing a WSO2 ESB custom message processor into my WSO2 EI installation?
我是 WSO2 EI 的新手,我正在尝试开发一个 自定义消息处理器 ,我必须将其用于 ESB流.
此时我只扩展了SamplingProcessorclass,这个: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 class 编译版本的 jar 文件。
我的疑问是:我要把生成的 SamplingProcessorHeaderRateLimitation-0.0.1-SNAPSHOT.jar 文件放到我的 WSO2 EI 6.0.0 的什么地方 安装?
你应该把它放在 wso2ei-6.0.0\lib。然后,您应该能够在 XML 中将其引用为 com.mycompany.toolkit.messageprocessor.SamplingProcessorHeaderRateLimitation.
但是,我认为您不能将其设为抽象 class,因为这样做会阻止 WSO2 实例化它。因此,您应该从 class.
中删除 'abstract' 关键字
将JAR文件放在WSO2 EI的lib
目录下。
<EI_HOME>/lib
另一个选项:
工件也可以通过管理控制台上传。参考以下link
https://docs.wso2.com/display/EI600/Uploading+Artifacts
我是 WSO2 EI 的新手,我正在尝试开发一个 自定义消息处理器 ,我必须将其用于 ESB流.
此时我只扩展了SamplingProcessorclass,这个: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 class 编译版本的 jar 文件。
我的疑问是:我要把生成的 SamplingProcessorHeaderRateLimitation-0.0.1-SNAPSHOT.jar 文件放到我的 WSO2 EI 6.0.0 的什么地方 安装?
你应该把它放在 wso2ei-6.0.0\lib。然后,您应该能够在 XML 中将其引用为 com.mycompany.toolkit.messageprocessor.SamplingProcessorHeaderRateLimitation.
但是,我认为您不能将其设为抽象 class,因为这样做会阻止 WSO2 实例化它。因此,您应该从 class.
中删除 'abstract' 关键字将JAR文件放在WSO2 EI的lib
目录下。
<EI_HOME>/lib
另一个选项:
工件也可以通过管理控制台上传。参考以下link https://docs.wso2.com/display/EI600/Uploading+Artifacts