1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Deutsch
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

php soap client - wie mache ich das in java (zB axis)?

  • DerSchlitzerUSV
  • 8. Dezember 2009 um 12:59
  • Unerledigt
  • DerSchlitzerUSV
    1
    DerSchlitzerUSV
    Mitglied
    Punkte
    10
    Beiträge
    1
    • 8. Dezember 2009 um 12:59
    • #1

    Hallo zusammen!

    Ich habe folgendes php codestück zum Testen eines SOAP php servers:

    <?
    $arr_soapClient = array('exceptions' => 0,
    'login' => $USERNAME,
    'password' => $PASSWORD,
    'encoding' => "ISO-8859-1",
    'use' => SOAP_ENCODED);
    try {
    $client = new SoapClient($PATH_TO_WSDL_DATEI, $arr_soapClient);
    } catch (SoapFault $fault) {
    // error Handling
    }

    if (is_object($client)) {
    $client->__setCookie ("ID",$ID);
    $result = $client->test();
    ...


    Kann mir jemand helfen, für dieses Codestück einen äuquivalenten Java-SOAP-Client zu bauen? Ich verwende zurzeit Apache Axis:


    Call call =

    null;

    try {
    // URL des Web Service
    String endpoint =

    "path_to_php_server";

    //Service- und Aufruf-Objekt erzeugen
    Service service =

    new Service();

    call = (Call) service.createCall();
    // Adresse und Methode des Aufrufs
    call.setTargetEndpointAddress (
    new java.net.URL (endpoint));


    call.setUsername("username");
    call.setPassword("passwort");


    call.setProperty("exceptions", "0");
    call.setProperty("login", "username");
    call.setProperty("password", "password");
    call.setProperty("encoding", "ISO-8859-1");
    call.setProperty("use", "SOAP_ENCODED");


    Hashtable<String, Object> valueMap = new Hashtable<String, Object>();
    valueMap.put("exceptions", "0");
    valueMap.put("login", "username");
    valueMap.put("password", "password");
    valueMap.put("encoding", "ISO-8859-1");
    valueMap.put("use", "SOAP_ENCODED");

    call.setProperty(HTTPConstants.HEADER_COOKIE, "ID=1");
    QName operation =

    new QName("test");

    //call.setOperationName(operation);
    // Aufruf absenden und Rückgabewert speichern
    Object[] params =

    new Object[] { valueMap };

    String ergebnis = (String)call.invoke(operation, params);


    Ich bin mir nicht sicher, wie ich einen äuquivalentes SoapClient-object in Java erzeuge, und wie ich Cookies setzen kann.


    Ich hab es auch mit wsdltojava probiert, um die Java Klassen erstellen zu lassen, hat aber mit der gegebenen WSDL nicht funktioniert.


    Kann mir jemand helfen, den php-code in java umzumünzen?

  • sutupud
    13
    sutupud
    Mitglied
    Reaktionen
    59
    Punkte
    1.659
    Beiträge
    320
    • 9. Dezember 2009 um 00:06
    • #2

    schau dir mal das package javax.xml.soap an, das sollte die einfachste möglichkeit sein soap messages zu verschicken:

    PHP
    MessageFactory msgfact = MessageFactory.newInstance();
    SOAPMessage msg = msgfact.createMessage();
    
    
    msg.setProperty("key","value");
    msg.getSOAPHeader().add...(...); // headerelemente hinzufügen
    msg.getSOAPBody().add...(...); // bodyelemente hinzufügen
    ...
    
    
    SOAPConnectionFactory confact = SOAPConnectionFactory.newInstance();
    SOAPConnection conn = confact.createConnection();
    
    
    SOAPMessage response = conn.call(msg, "path_to_server");
    Alles anzeigen

    "All through my life I've had this strange unaccountable feeling that something was going on in the world, something big, even sinister, and no one would tell me what it was."
    "No," said the old man, "that's just perfectly normal paranoia. Everyone in the Universe has that."

    &#128513;&#128514;&#128515;&#128516;&#128517;&#128518;&#128519;&#128520;&#128521;&#128522;&#128523;&#128524;&#128525;&#128526;&#128527;&#128528;&#128530;&#128531;&#128532;&#128534;&#128536;&#128538;&#128540;&#128542;&#128544;&#128545;&#128546;&#128547;&#128549;&#128552;&#128553;&#128554;&#128555;&#128557;&#128560;&#128561;&#128562;&#128563;&#128565;&#128566;&#128567;

  • Maximilian Rupp 27. Dezember 2024 um 00:26

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung

  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  • Deutsch
  • English
Zitat speichern