![](/img/trans.png)
[英]Java WSImport tool fails to generate JAX-WS SOAP client from WSDL
[英]How to Create SOAP WS Client (with authentication) from WSDL in Netbeans
我必須創建一個Web服務客戶端以在netbeans中使用Web服務。 我有該Web服務的WSDL。 我需要在客戶端中進行搶占式身份驗證。 這是我給那個客戶的代碼。
public static void main(String[] args) {
// TODO code application logic here
try
{
FidelioDto fd=G_jar.getInfoFidelioByND("212642098640");
System.out.println(fd.getQualite()+" Get Qualite");
System.out.println(fd.getCodeFidelio()+"Code Fielio");
System.out.println(fd.getDateMaj()+" Get Date");
}
catch(Exception e)
{
e.printStackTrace();
}
}
private static FidelioDto getInfoFidelioByND(java.lang.String nd) throws AppBusinessException_Exception {
ma.iam.wsgold.ws.impl.FidelioWebServiceImplService service = new ma.iam.wsgold.ws.impl.FidelioWebServiceImplService();
ma.iam.wsgold.ws.impl.FidelioWebServiceImpl port = service.getFidelioWebServiceImplPort();
BindingProvider prov = ((BindingProvider)port);
prov.getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "ivr_ebou_user");
prov.getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, "ivr+2014");
return port.getInfoFidelioByND(nd);
}
}
當我在服務器上部署了此客戶端時。 我收到以下錯誤。
com.sun.xml.internal.ws.client.ClientTransportException: HTTP transport error: j
ava.net.ConnectException: Connection timed out: connect
at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.get
Output(HttpClientTransport.java:121)
at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.proce
ss(HttpTransportPipe.java:142)
at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.proce
ssRequest(HttpTransportPipe.java:83)
at com.sun.xml.internal.ws.transport.DeferredTransportPipe.processReques
t(DeferredTransportPipe.java:105)
at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:587)
at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:546)
at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:531)
at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:428)
at com.sun.xml.internal.ws.client.Stub.process(Stub.java:211)
at com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:124
)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMetho
dHandler.java:98)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMetho
dHandler.java:78)
at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107)
at $Proxy30.getInfoFidelioByND(Unknown Source)
我該如何解決這個問題,任何幫助
您可以閱讀以下鏈接: https : //netbeans.org/kb/docs/websvc/jax-ws.html
特別是在“消費Web服務”部分中,您可以通過以下三種不同的方式來開發客戶端:1)您可以在Java SE應用程序中創建Java類; 2)可以創建一個JSP文件; 3)可以創建一個Servlet。
成癮的是,存在此鏈接: http : //docs.oracle.com/cd/E17802_01/webservices/webservices/interop/reference/tutorials/doc/ClientSecurity3.html
在這里您可以看到如何配置身份驗證之類的安全信息。
最后,您可以在以下鏈接中閱讀有關身份驗證的各種示例: http : //docs.oracle.com/javaee/5/tutorial/doc/bncbx.html
我希望這個回復對您有用
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.