Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何避免在CXF库(SOAP)中使用CONNECT http方法_Java_Soap_Cxf_Soap Client_X Http Method Override - Fatal编程技术网

Java 如何避免在CXF库(SOAP)中使用CONNECT http方法

Java 如何避免在CXF库(SOAP)中使用CONNECT http方法,java,soap,cxf,soap-client,x-http-method-override,Java,Soap,Cxf,Soap Client,X Http Method Override,我正在使用CXF库编写一个SOAP客户机,这里我的要求是将SOAP请求转移到另一个web服务,该服务充当我的代理 WebService ss = new WebService(); WebServiceSoap port=ss.WebServiceSoap(); Client client = ClientProxy.getClient(port); HTTPConduit http = (HTTPConduit) client.getConduit(); HTTPClientPolic

我正在使用CXF库编写一个SOAP客户机,这里我的要求是将SOAP请求转移到另一个web服务,该服务充当我的代理

WebService ss = new WebService();

WebServiceSoap port=ss.WebServiceSoap();

Client client = ClientProxy.getClient(port);

HTTPConduit http = (HTTPConduit) client.getConduit();

HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
httpClientPolicy.setProxyServer(System.getProperty("http.proxyHost","proxyserver.com"));
httpClientPolicy.setProxyServerPort(Integer.valueOf(System.getProperty("http.proxyPort","8080")).intValue());

httpClientPolicy.setConnectionTimeout(36000);

http.setClient(httpClientPolicy);

byte[] fileContent={'b','b'};

String res=port.submiFile(fileContent");
但是这段代码抛出了下面的错误

“java.io.IOException:无法通过代理进行隧道传输。代理返回 “不允许使用HTTP/1.1 405方法”

根据我的调查,这个错误是因为CXF库使用了“CONNECT”

http方法来隧道SOAP请求,但此连接方法

代理服务器(proxyserver.com)上没有实现。现在是代理服务器

服务器团队说我们只能提供“GET”和“POST”HTTP方法

这意味着我必须手动创建SOAP请求,并使用POST或GET方法发送。但这是我们希望避免手动创建SOAP请求的方式

所以我的问题是,有没有办法摆脱这个问题,或者我可以重写


“连接“方法?任何答案链接都会很有帮助。更多详细信息,请参阅附件

您没有在任何地方添加SOAPAction

您没有在任何地方添加SOAPAction

抱歉,无法发表评论。我想这不是因为SOAPAction。我需要取消连接方法。您使用的IDE是什么?抱歉,无法评论。我想这不是因为SOAP操作。我需要抑制CONNECT方法,你用的是什么IDE?