Java WSO2迭代中介查询
实际上,我正在使用代理服务,并给出了其要点,如下所示:-Java WSO2迭代中介查询,java,wso2esb,Java,Wso2esb,实际上,我正在使用代理服务,并给出了其要点,如下所示:- <iterator> <target> <sequence> <class name="mediator.code.SampleCustomMediator"></class> <log
<iterator>
<target>
<sequence>
<class name="mediator.code.SampleCustomMediator"></class>
<log level="full" separator=",**after updatedb call**">
<property name="Response" expression="get-property('status')"></property>
</log>
</sequence>
</target>
</iterator>
Class mediator code;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
public class SampleCustomMediator extends AbstractMediator {
String updateQuery = "Update Table.440 Set DSP = '"+DSP+"',USER = '"+USER+"',PID = '"+PID+"',PMJ="+PMJ+",PMT="+PMT+" Where DSP<>'Y' AND PO='"+PO+"' AND PD='"+PD+"' AND SD="+SD;
System.out.println("Query String: "+updateQuery);
result = stmt.executeUpdate(updateQuery);
if(result>0){
String response = "successfully updated "+result+" rows";
System.out.println("successfully added "+result);
context.setProperty("status",response);
return true;
}
else{
System.out.println("failed");
context.setProperty("status","0 rows were updated");
return true;
}
}
类中介代码;
导入java.text.simpleDataFormat;
导入java.util.Date;
导入java.sql.Connection;
导入java.sql.DriverManager;
导入java.sql.ResultSet;
导入java.sql.ResultSetMetaData;
导入java.sql.Statement;
公共类SampleCustomMediator扩展了AbstractMediator{
字符串updateQuery=“Update Table.440设置DSP=”“+DSP+”,USER=”“+USER+”,PID=”“+PID+”,PMJ=“+PMJ+”,PMT=“+PMT+”,其中DSP'Y'和PO=”“+PO+”,PD=”“+PD+”,和SD=“+SD;
System.out.println(“查询字符串:“+updateQuery”);
结果=stmt.executeUpdate(updateQuery);
如果(结果>0){
String response=“已成功更新”+结果+“行”;
System.out.println(“成功添加”+结果);
context.setProperty(“状态”,响应);
返回true;
}
否则{
System.out.println(“失败”);
setProperty(“状态”,“0行已更新”);
返回true;
}
}
代理工作正常
但是,无法记录响应的值
每次它都显示为空
我希望每次迭代器中介器执行时都能看到Response的值
我尝试过使用payloadFactory中介器“$ctx:status”(在args中使用相同的表达式)
但它不起作用
我将如何做?如何创建上下文?中介类的可能重复是java代码的一部分,您如何定义“mediate”方法,“stmt”来自何处,您是否使用了try/catch来解释“if(result>0)”从未执行过?重复。检查此项:这不是的重复项,他不想从java部分登录,只需初始化一个可在其中介中使用的属性(好的,在log mediator中,但这并不重要)如何创建上下文?中介类的可能重复项是一段java代码,您如何定义“mediate”方法,“stmt”从何而来,您是否使用了try/catch来解释“if(result>0)”从未执行过?重复。检查:这不是的副本,他不想从java部分登录,只需初始化一个可在其中介中使用的属性(好的,在log mediator中,但这并不重要)