2012-03-29 10 views
0

Ich versuche derzeit, einen Webdienst über eine Webanwendung aufzurufen, die ich geschrieben habe. Meine Webanwendung hat einfach ein Formularfeld, das den Benutzer nach einer E-Mail-Adresse in einer JSP-Seite fragt und sie zur Verarbeitung an eine andere JSP-Seite namens process.jsp sendet. In process.jsp möchte ich einen Webservice aufrufen, der die Gültigkeit der E-Mail-Adresse bestätigt.So verwenden Sie Webservices mit Axis2

ich versucht habe zu dieser URL der folgenden Web-Dienst aufzurufen gefunden:

http://www.xmethods.com/ve2/ViewListing.po?key=uuid:4506DD11-6A4F-2BF3-2DBE-EED251ABAA2A

unter Mein Code ist wie folgt:

import javax.xml.namespace.QName; 
import org.apache.axis2.AxisFault; 
import org.apache.axis2.addressing.EndpointReference; 
import org.apache.axis2.client.Options; 
import org.apache.axis2.rpc.client.RPCServiceClient; 

public class ClientEmailValidate { 

public static void main(String[] args) throws AxisFault { 

    RPCServiceClient serviceClient = new RPCServiceClient(); 
    Options options = serviceClient.getOptions(); 

    // Setting the endpoint resource 
    EndpointReference targetEPR = new EndpointReference 
    ("http://ws.cdyne.com/emailverify/Emailvernotestemail.asmx"); 
    options.setTo(targetEPR); 

    // Getting the operation based on the targetnamespace 
    QName opGetExchange = new QName        
      ("http://ws.cdyne.com", "VerifyEmail"); 

    String email = "[email protected]"; 

    // preparing the arguments 
    Object[] opGetExchangeArgs = new Object[] { email }; 

    // preparing the return type 
    Class[] returnTypes = new Class[] { String.class }; 

    // invoking the service passing in the arguments and getting the 
    // response 
    Object[] response = serviceClient.invokeBlocking(opGetExchange, 
      opGetExchangeArgs, returnTypes); 
    // obtaining the data from the response 
    String result = (String) response[0]; 

    // Displaying the result 
    System.out.println("Result : " + result); 
} 
} 

Gibt es etwas, was ich tue, falsch hier? Ich bin sehr neu im Umgang mit Web-Services, also bitte sei geduldig mit mir.

Danke!

+0

einfach, wenn Sie die Wahl haben, i jaxws statt Achse verwenden würde, es neigt dazu, ein bisschen einfacher zu bedienen und es ist mit dem jdk gebündelt. – jtahlborn

Antwort

1

können Sie die folgende commond verwenden, um einen Stub zu erzeugen, dann ist alles

WSDL2Java -uri wsdl-url -p package-of-stub -d adb -s