带有javax问题的Web服务soap认证

带有javax问题的Web服务soap认证,java,web-services,soap,Java,Web Services,Soap,我在这个地址有一个名为FCSAPreval的web服务 我能够使用wsimport命令从web服务的WSDL获取所有类。 我在尝试使用soap访问此服务时遇到问题,我的代码是: URL url = new URL("https://fcsa-test-preval-ws.gaa.qc.ca/fcsa-preval.svc?wsdl"); QName qname = new QName("https://fcsa-test-preval-ws.gaa.qc.ca/",

我在这个地址有一个名为FCSAPreval的web服务

我能够使用wsimport命令从web服务的WSDL获取所有类。

我在尝试使用soap访问此服务时遇到问题,我的代码是:

       URL url = new URL("https://fcsa-test-preval-ws.gaa.qc.ca/fcsa-preval.svc?wsdl");
       QName qname = new QName("https://fcsa-test-preval-ws.gaa.qc.ca/", "FCSAPreval");

       Service service = Service.create(url, qname);
       FCSAPreval hello = service.getPort(FCSAPreval.class);
它不断抛出以下错误:

xception in thread "main" javax.xml.ws.WebServiceException: {https://fcsa-test-preval-ws.gaa.qc.ca/}fcsa-preval.svc is not a valid service. The valid services are : {http://tempuri.org/}FCSAPreval
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:310)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:215)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:196)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:192)
at com.sun.xml.internal.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:104)
at javax.xml.ws.Service.<init>(Service.java:77)
at javax.xml.ws.Service.create(Service.java:707)
at test.test.main(test.java:39)
线程“main”javax.xml.ws.WebServiceException中的异常:{https://fcsa-test-preval-ws.gaa.qc.ca/}fcsa-preval.svc不是有效的服务。有效服务包括:{http://tempuri.org/}FCSAPreval 在com.sun.xml.internal.ws.client.WSServiceDelegate上。(WSServiceDelegate.java:310) 在com.sun.xml.internal.ws.client.WSServiceDelegate上。(WSServiceDelegate.java:215) 在com.sun.xml.internal.ws.client.WSServiceDelegate上。(WSServiceDelegate.java:196) 在com.sun.xml.internal.ws.client.WSServiceDelegate上。(WSServiceDelegate.java:192) 位于com.sun.xml.internal.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:104) 位于javax.xml.ws.Service。(Service.java:77) 位于javax.xml.ws.Service.create(Service.java:707) 位于test.test.main(test.java:39)
谢谢你的帮助

您必须使用wsdl中定义的正确命名空间:

<wsdl:definitions .... name="FCSAPreval" targetNamespace="http://tempuri.org/">

我想是的,这看起来像是命名空间问题
QName qname = new QName("http://tempuri.org/", "FCSAPreval");