This page (revision-87) was last changed on 16-Aug-2019 12:51 by Dieter Käppel

This page was created on 18-Aug-2009 22:25 by Dieter Käppel

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
87 16-Aug-2019 12:51 53 KB Dieter Käppel to previous Technologie ==> Technologien
86 16-Aug-2019 12:51 53 KB Dieter Käppel to previous | to last
85 28-Nov-2015 11:16 53 KB Dieter Käppel to previous | to last
84 28-Nov-2015 11:16 53 KB Dieter Käppel to previous | to last
83 18-Feb-2015 09:14 52 KB Dieter Käppel to previous | to last
82 18-Feb-2015 08:51 52 KB Dieter Käppel to previous | to last
81 25-Jul-2014 11:27 52 KB Dieter Käppel to previous | to last

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 20 changed one line
Das XML-Paket kann unter [Maven 2|Maven] direkt aus dem [Intersult Maven Repository] bezogen werden. Für [Rechte|Rechtliches] und Einsatz in kommerziellen Anwendungen nehmen Sie bitte [Kontakt|Intersult] zu uns auf.
Das XML-Paket kann unter [Maven 2/3|Maven] direkt aus dem [Intersult Maven Repository] bezogen werden. Für [Rechte|Rechtliches] und Einsatz in kommerziellen Anwendungen nehmen Sie bitte [Kontakt|Intersult] zu uns auf.
At line 43 added 47 lines
!!Konfiguration
In der Maven-Definition wird festgelegt, wie Java-Klassen aus WSDL- oder XSD-Links generiert werden. Der Eintrag für eine WSDL folgt dem Aufbau:
{{{
<build>
...
<plugins>
...
<plugin>
<groupId>com.intersult</groupId>
<artifactId>abraxas-maven</artifactId>
<version>1.3-SNAPSHOT</version>
<executions>
<execution>
<goals>
<goal>generate-ws</goal>
</goals>
<configuration>
<services>
<service>
...
</service>
</services>
</configuration>
</execution>
<executions>
</plugin>
...
</plugins>
...
</build>
}}}
Unter <service> werden ein oder mehrere Services generiert. Unterhalb können weiter Parameter angegeben werden, die das Generieren der Servies steuern:
||Parameter||Bedeutung
|outputPath|Ausgabepfad für die generierten Klassen, in der Regel etwas wie ${project.build.directory}/generated-sources/weather
|wsdl|URL zur WSDL, zum Beispiel file:/${basedir}/src/main/resources/globalweather.wsdl oder kann auch direkt auf HTTP gehen. Durch Protocol-Plugins können auch weitere URLStreamHandler verwendet werden.
|packageName|Der Name der zu generierenden Packages. Falls er nicht angegeben wird, wird er aus dem Target-Namespace aus der WSDL generiert.
|ports *|Liste der zu generierenden "Ports", falls der Wert nicht angegeben wird, werden alle WSDL-Ports generert. Beispiel <ports><port>GlobalWeatherSoap</port></ports>
|operations* |Zu generierende WSDL-Operations. Wird der Wert nicht angegeben, werden alle Operations generiert. Beispiel wäre <operations><operation>GetWeather</operation></operations>
|xmlConfig|Konfiguration der XML-Verarbeitung durch Abraxas-XML, wie unter dem Abschnitt XML-Konfiguration beschrieben ist.
|protocol|Zu verwendender URLStreamHandler für den WSDL-URL, zum Beispiel <protocol implementation="com.intersult.testing.ServletUnitProtocol">
|mappings|Hier können zusätzliche Mappings beim Erzeugen der Java-Klassen definiert werden. Dies ist ein sehr fortgeschrittenes Feature und für gewöhnlich nicht notwendig, da die generierten Klassen abgeleitet und im RemoteClient registriert werden können.
Bei der Angabe von Ports und Operations werden (momentan) trotzdem alle Klassen aus dem eingebetteten XSD-Schema generiert.
At line 51 changed one line
!Datentypen
!!Datentypen
At line 139 added 35 lines
!!XML-Konfiguration
Die XmlConfig-Klasse wird verwendet, um das XML-Marshalling und -Unmarshalling zu steuern. Es stehen folgende Parameter zur Verfügung:
||Parameter||Default||Bedeutung
|validate|true|Damit kann das validieren gelesener XML-Dateien durch angegebene XSD- und DTD-Dateien abgeschaltet werden.
|writeEmpty|false|Legt fest, ob Null-Objekte geschrieben werden sollen.
|useDefault|false|Damit kann das Verarbeiten von Default-Annotationen eingeschaltet werden.
|writeId|false|Legt fest ob extra Attribute für IDs bei Arrays und Maps geschrieben werden sollen.
|encoding|UTF-8|Legt das Encoding fest.
|writeType|NONE|Legt fest ob Java-Class-Namen geschrieben werden sollen. Bei NONE werden nur die einfachen Namen der Java-Properties geschrieben, außer beim Wurzel-Element falls dies keine Name- oder Namespace-Annotation enthält. Bei DERIVATES werden Klassennamen geschrieben, falls das Attribut von der Definition abweicht, also abgeleitet ist. Bei ALL werden die Typnamen immer geschrieben.
|throwUnknown|true|Damit können Exceptions abgeschaltet werden, die erzeugt werden wenn Attribut- und Elementnamen nicht auf die Java-Klassen gemappt werden können.
|mapping|-|Mappings für das Marshalling/Unmarshalling
|classLoader|XmlUnmarshaller.class.getClassLoader()|ClassLoader zum Laden von Klassen.
|attributeHandlers|Interne Handler|Handler welche die XML-Attribute verarbeiten, wie Namespace-Includes.
|pretty|true|Damit kann das Formattieren des generierten XML-Codes abgeschaltet werden.
|formatMap|Interne Formate|Registrierung von Klassen zur Formatierung von speziellen Objekten.
|namespaceStack|-|Zugriff auf den NamespaceStack der XML-Verarbeitung
|processIncludes|true|Damit können Schema-Include-Anweisungen komplett abgeschaltet werden.
|absoluteIncludes|true|Damit können absolute URLs bei Schema-Includes ausgeschaltet werden.
|throwDuplicate|true|Damit können die Exceptions bei konourrierenden Array- und Map-Einträgen abgeschaltet werden.
|usePrefix|false|Legt fest, ob die SOAP-Message ein Namespace-Prefix bekommen soll.
|processEnum|true|Legt fest, ob Enums generiert werden sollen.
|throwFault|true|Möglichkeit zum Abschalten von Exceptions bei SOAP-Faults.
|serializable|false|Damit können alle generierten Klassen serialisierbar gemacht werden.
|handleIds|true|Legt fest, ob ID-Angaben in Arrays und Maps verarbeitet werden.
|autoCdata|true|Legt fest, ob bei Bedarf automatisch CDATA-Elemente generiert werden sollen.
|logging|false|Legt fest, ob die XML-Kommunikation mitgeloggt werden soll.
|annotations|true|Legt fest ob Annotations generiert werden sollen.
|proxy|-|Zu verwendendes java.net.Proxy
|connectTimeout|-|Timeout für die TCP-Connection.
|readTimeout|-|Timeout für das Lesen von der TCP-Connection.
|collectNamespace|true|Legt fest ob beim Generieren von XML die Namespace-Definitionen zuerst gesammelt werden und auf Dokumentenebene ausgegeben werden. Das reduziert Namespace-Definitionen und verkürzt damit das generierte XML.
|unwrap|false|Auspacken von Response-Klassen. Kann zu Fehlern führen, wenn die SOAP-Response-Messages mehrere Elemente enthalten.
|transparentNtlm|true|Experimentelles Feature zum Unterbinden von transparenter NTLM-Authentifizierung, falls der Client auf Windows-Rechnern läuft.
At line 108 changed one line
<artifactId>com.intersult.maven</artifactId>
<artifactId>abraxas-maven</artifactId>