我有一个外部Web服务,它可以通过https工作,我可以使用wsimport生成java类但是当我调用该服务时,我会收到以下异常:
Exception in thread "main" com.sun.xml.internal.ws.client.ClientTransportException: HTTP transport error: java.net.UnknownHostException: ECM01
at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.getOutput(Unknown Source)
at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(Unknown Source)
at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(Unknown Source)...
Caused by: java.net.UnknownHostException: ECM01
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
Run Code Online (Sandbox Code Playgroud)
我调用服务的类是这样的:
public static void main(String[] args) {
ColleagueServiceService cs = new ColleagueServiceService();
ColleagueService service = cs.getColleagueServicePort();
try {
service.getColleagues("user", "password", 1);
} catch (Exception_Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用SoapUI来调用webservice,但它显示了另一个异常:
Tue Dec 18 09:40:06 BRST 2012:ERROR:org.apache.http.conn.HttpHostConnectException: …Run Code Online (Sandbox Code Playgroud) 我知道这不是提出问题的正确方法,但我遇到了问题:
我有一个本地存储的wsdl,我需要创建一个Web服务客户端来调用该Web服务.问题是服务是在防火墙后面,我必须通过代理连接到它,然后我必须验证连接到WS.
我所做的是使用Apache CXF 2.4.6生成WS客户端,然后设置系统范围的代理
System.getProperties().put("proxySet", "true");
System.getProperties().put("https.proxyHost", "10.10.10.10");
System.getProperties().put("https.proxyPort", "8080");
Run Code Online (Sandbox Code Playgroud)
我知道这不是最好的做法,所以请提出一个更好的解决方案,如果有人能给我一个关于如何设置验证的提示我真的很感激它
java web-services jax-ws webservices-client jax-ws-customization
我需要连接到内部Intranet Web服务.我公司使用代理服务器访问互联网,但内部网站点不通过代理.我可以在IE和Firefox中导航到WSDL,但我必须在两个浏览器中将地址添加到代理例外列表中.
当我使用wsimport时,由于代理服务器,我无法获得WSDL.添加或删除-httpproxy arg给我一个错误"无法通过代理隧道"所以我猜这不是我需要这样做的方式.
有没有人知道我可以告诉wsimport忽略这个网址的代理服务器?
尼尔