2010-01-22 13 views
5

Sto consumando un servizio Web con asse. Ricevo una NoEndpointException da qualsiasi metodo webservice che chiamo.Java Axis Webservice stub che lancia una NoEndPointException

Viene da questo codice generato.

if (super.cachedEndpoint == null) { 
    throw new org.apache.axis.NoEndPointException(); 
} 

Quindi sembra suggerire che non ho impostato correttamente l'endpoint.

Questo è il modo che ho istanziato gli stub:

MyService_ServiceLocator myService_ServiceLocator = new MyService_ServiceLocator(); 
MyService_PortType webservice = new MYServiceSOAPStub(myService_ServiceLocator); 

presumo che qualcosa non va con questo. Devo passare l'indirizzo webservice? Sembra già essere integrato negli stub.

risposta

7

Potrebbe dipendere dalla versione dell'Asse (sto usando la versione 1.4) ma ti suggerisco di utilizzare il metodo getYourPortType() dal localizzatore. Non dovrai fornire l'URL del tuo servizio web (poiché è archiviato nei file generati).

Utilizzando il campione sarebbe qualcosa di simile:

MyService_ServiceLocator myService_ServiceLocator = new MyService_ServiceLocator(); 
MyService_PortType webservice = myService_ServiceLocator.getMyService_PortType(); 
+1

c'è qualche tutorial su come accedere a qualsiasi servizio web dopo aver creato file Java da WSDL. ? –

Problemi correlati