org.apache.axis2.AxisFault:错误,麻烦各位帮忙看下!

ericericwang ericericwang 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
具体的错误信息如下:
org.apache.axis2.AxisFault: A required header representing a Message Addressing Property is not present

错误产生的场景:
我用同一WSDL文件生成的服务端和客户端,用客户端调服务端时报的错,DEBUG跟进去调试,发现参数都有,只是在向服务端发请求的那个方法那出的错,方法如下:(具体出错的地方我标记成红色了)


package com.chinamobile.www.vgop.serviceorder.v1_0;
import java.rmi.RemoteException;

import org.apache.axis2.AxisFault;
import org.apache.axis2.transport.http.HTTPConstants;
import com.chinamobile.www.vgop.serviceorder.v1_0_sub.OrderServiceStub;
import com.chinamobile.www.vgop.serviceorder.v1_0_sub.OrderServiceStub.SyncOrderRelationCfmResponse;

public class TaskObject implements Runnable
{

private MsgHeaderClient msgHeaderClient = null;

public MsgHeaderClient getMsgHeaderClient()
{
return msgHeaderClient;
}

public void setMsgHeaderClient(MsgHeaderClient msgHeaderClient)
{
this.msgHeaderClient = msgHeaderClient;
}

public void run()
{
try
{
//睡眠1s,防止任务添加进来就执行,导致服务端还没有响应的时候就任务就已经执行了。
Thread.sleep(1000L);
}
catch (InterruptedException e2)
{
e2.printStackTrace();
}
OrderServiceStub stub = null;
try
{
stub = new OrderServiceStub("http://10.40.55.23:8080/bmp/services/OrderService");
}
catch (AxisFault e1)
{
// TODO Auto-generated catch block
e1.printStackTrace();
}
stub._getServiceClient().getOptions().setProperty(HTTPConstants.CHUNKED, false);
stub._getServiceClient().getOptions().setTimeOutInMilliSeconds(1600000);

OrderServiceStub.SyncOrderRelationCfmReq req = new OrderServiceStub.SyncOrderRelationCfmReq();

OrderServiceStub.SyncOrderRelationCfm syncOrderRelationCfm = new OrderServiceStub.SyncOrderRelationCfm();

// 开户
SyncOrderRelationCfmResponse syncOrderRelationCfmResp =
new OrderServiceStub.SyncOrderRelationCfmResponse();

req.setMsgTransactionID(msgHeaderClient.getTransactionID().getTransactionID());
req.setCfmResult(msgHeaderClient.getProcResult());
syncOrderRelationCfm.setSyncOrderRelationCfmReq(req);

try
{
syncOrderRelationCfmResp =
stub.syncOrderRelationCfm(syncOrderRelationCfm,
msgHeaderClient.getMsgName(),
msgHeaderClient.getTransactionID(),
msgHeaderClient.getVersion(),
msgHeaderClient.getSendAddress(),
msgHeaderClient.getDestAddress(),
msgHeaderClient.getOriginalAddress(),
msgHeaderClient.getTimeStamp());
}
catch (RemoteException e)
{
e.printStackTrace();
}

System.out.println(syncOrderRelationCfmResp.getSyncOrderRelationCfmResp().getResult());

msgHeaderClient = null;
}

}
...全文
评论 8
收藏 已收藏
分享
返回顶部
ericericwang
Java EE 67,535 成员 225,843 内容