请助:服务器未能识别 HTTP 头 SOAPAction 的值

[code="java"]
String res = "";
Service service = new Service();
Call call;
try {
call = (Call) service.createCall();
//this.webserviceURL是一个网址,我在DEBUG里面已经有了
call.setTargetEndpointAddress(new java.net.URL(this.webserviceURL));
// 填写你要调用的方法名称,我的方法是XXXX,这个别人写好的接口
call.setOperationName(mName);
//每次远程调 用别人的接口时,就到下面这一步就出错了,THROW RemoteException
res = (String) call.invoke(new Object[] { parameter1 });
} catch (ServiceException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RemoteException e) {
// 每次都在这里来了
e.printStackTrace();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
[/code]
各位帮一下,我的是那里有问题,谢谢了,如果有什么不清楚的,你们提出来我再补充
[b]问题补充:[/b]
我现在的问题,我要调用他们那边的方法
我改不了他们那边的文件,请问我的程序有什么错误没有啊
谢谢了
[b]问题补充:[/b]
在DAOFactory类里写个
String path;

Document doc = new SAXReader().read(new file(path+"/daoContext.xml"));
daoContext.xml文件在WEB-INF目录下

path路径怎么写?

尝试:
“/WEB-INF”
“WEB-INF”
“../WEB-INF”

都不对

根本就不需要WEB-INF,你去TOMCAT里面看一看文件在什么位置吧,应该直接就可以的new File("doaContext.xml");你看一下你这个XML文件在不在Classes文件下,如果是的话加加Classes
[b]问题补充:[/b]
上面的问题,我加了一个这样的方法就解决了,就不报错了
[code="java"]
call.setSOAPActionURI("http://xxxx.xxx/"+this.methodName);
[/code]
我现在遇到的问题是,但是现在只能调用远程没有参数的方法,有参数的方法就调用不了,返回的信息就是说参数不对或其它不对。。。

wsdl文件中有个元素的SOAPAction属性有没正确设置

http://www.cnsaturn.com/logs/2009/05/26/http-header-soapaction-value-cannot-recognized-by-server-errors

http://zhidao.baidu.com/question/86095717.html

http://blog.csdn.net/tukzer/archive/2008/02/24/2118039.aspx

首先确认他们的服务是正常的,这个可以用 soapUI 测试。如果 soapUI 没问题,那就说明服务没问题。

至于你这边的问题,建议把 exception stacktrace 贴出来看看。还有,确认一下你的url没写错。

在DAOFactory类里写个
String path;

Document doc = new SAXReader().read(new file(path+"/daoContext.xml"));
daoContext.xml文件在WEB-INF目录下

path路径怎么写?

尝试:
“/WEB-INF”
“WEB-INF”
“../WEB-INF”
都不对

返回的信息就是说参数不对,那就是参数有问题嘛,参数类型要匹配啊