我必须使用在.NET 2.0中实现的第三方Web服务(当然是在IIS上)。
我必须制作一个Java客户端。我正在使用wsdl2java生成SOAP存根。
由于最初的ApacheAxis项目现在看起来是未维护的,并且在解析服务的某些响应时遇到了一些问题,所以我将客户机转换为使用最新(1.5)版本的Axis2。现在,.NET服务甚至无法识别我的请求。
我设法关闭了“chunking”(chunking)(其中“stub”是wsdl2java生成的mumblestub类型的变量,我在这里将几行代码显示为一行可怕的代码):
stub._getServiceClient().getOptions().setProperty( HTTPConstants.CHUNKED, Boolean.FALSE);
…所以至少服务可以识别我的请求
AS
一个请求,尽管很糟糕:“
HTTP/1.1 400 Bad Request
“是现在的响应(而不是提供给我一个到WSDL的链接的“简介/摘要”页面)。
我注意到axis(“1”)请求有一个不同的内容类型头(text/xml,vs application/soap xml),我想知道如何更改这个请求头,如果这实际上是问题所在。
另外,还有其他人遇到过这个问题吗?问题是真的吗(在这里不可播放,因为它看起来像是博客引擎的“元素注入”)…XML版本-“1.0”…XML meta intro标记“axis2添加到请求的开头?
是的,死亡之星。