GOV/Webservice: Unterschied zwischen den Versionen

aus GenWiki, dem genealogischen Lexikon zum Mitmachen.
< GOV
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
== Client ==
== Client ==
=== PHP 5 ===
=== PHP 5 ===
Mit PHP 5 ist ein Client für den GOV-Webservice ganz schnell geschrieben:
  <?php
  <?php
  $soapclient = new SoapClient('http://gov.genealogy.net/services/ComplexService?wsdl');
  $soapclient = new SoapClient('http://gov.genealogy.net/services/ComplexService?wsdl');
  $list =$soapclient->searchByName('Heidkate');
  $list =$soapclient->searchByName('Heidkate');
  ?>
  ?>
Ja, das ist alles! :-)


=== Axis 1.4 ===
=== Axis 1.3, Axis 1.4 ===
WSDL2Java hat Probleme mit dem Element-Namen "last-modification". Komischerweise funktioniert es richtig, wenn man WSDL2Java die Option "-w" mitgibt.
WSDL2Java hat Probleme mit dem Element-Namen "last-modification". Komischerweise funktioniert es richtig, wenn man WSDL2Java die Option "-w" mitgibt.
Generieren der Java-Klassen:
java org.apache.axis.wsdl.WSDL2Java -w http://gov.genealogy.net/services/ComplexService?wsdl
Ein kleiner Test-Client:
<pre>
import net.genealogy.gov.ws.ComplexService_PortType;
import net.genealogy.gov.ws.ComplexService_ServiceLocator;
public class Client {
    public static void main(String[] args) throws Exception {
        ComplexService_PortType cs = new ComplexService_ServiceLocator()
                .getComplexService();
        cs.searchByName("Heidkate");
    }
}
</pre>


== SOAP-Nachrichten ==
== SOAP-Nachrichten ==

Version vom 27. Mai 2006, 10:26 Uhr

Client

PHP 5

Mit PHP 5 ist ein Client für den GOV-Webservice ganz schnell geschrieben:

<?php
$soapclient = new SoapClient('http://gov.genealogy.net/services/ComplexService?wsdl');
$list =$soapclient->searchByName('Heidkate');
?>

Ja, das ist alles! :-)

Axis 1.3, Axis 1.4

WSDL2Java hat Probleme mit dem Element-Namen "last-modification". Komischerweise funktioniert es richtig, wenn man WSDL2Java die Option "-w" mitgibt.

Generieren der Java-Klassen:

java org.apache.axis.wsdl.WSDL2Java -w http://gov.genealogy.net/services/ComplexService?wsdl

Ein kleiner Test-Client:

import net.genealogy.gov.ws.ComplexService_PortType;
import net.genealogy.gov.ws.ComplexService_ServiceLocator;

public class Client {
    public static void main(String[] args) throws Exception {
        ComplexService_PortType cs = new ComplexService_ServiceLocator()
                .getComplexService();

        cs.searchByName("Heidkate");
    }
}

SOAP-Nachrichten

Zum Debuggen habe ich hier die übertragenen SOAP-Nachrichten eingefügt, wie sie von verschiedenen Webservice-Frameworks generiert werden.

Axis 1.4

<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soapenv:Body>
    <searchByName xmlns="http://gov.genealogy.net/ws">
      <placename xmlns="">Heidkate</placename>
    </searchByName>
  </soapenv:Body>
</soapenv:Envelope>

PHP 5

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns1="http://gov.genealogy.net/ws">
  <SOAP-ENV:Body>
    <ns1:searchByName>
      <placename>Heidkate</placename>
    </ns1:searchByName>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>