CIB documentServer technical documentation (EN)
Appendix
Überblick CIB Module
Beispielaufruf SOAP Webservice mit VB.net
Beispielaufruf SOAP Webservice mit C#
Beispiel für einen XML request
Beispiel für eine XML response
Fehlercodes der Socketserver
Fehlercodes des CIB documentserver
Fehlercodes des Servermanagers
WSDL Webservice Description
Overview CIB Module
Components |
Software scope |
|
CIB job
|
WIN32 |
|
CibJob32.dll |
CIB Job-DLL for WIN32, interface to the application |
|
CibJob32.lib |
Library for CIB job |
|
CibJob.h |
Include file for CIB job |
|
CoMod.h |
General include file for CoMod modules |
|
Linux/Unix |
||
libcibjobux.so |
shared library for Unix(e) |
|
libcibjobux.sl |
shared library for HP Ux |
|
CIB merge
|
WIN32 |
|
cibmrg32.dll |
CIB merge-DLL für Win32, interface to the application |
|
Linux/Unix |
||
libcibmrgux.so |
shared library für unix Plattformen |
|
libcibchart.so |
loader for CIB chart |
|
libcibscan.so |
|
|
libzlib.so |
|
|
libgcc_s.so |
|
|
libstdc++.so.6 |
|
|
CIB format/output
|
WIN32 |
|
CibPrt32.dll |
CIB format/output-DLL for WIN32, interface to the application |
|
Unix |
||
libcibprtux.so |
shared library for Unix(e) |
|
libcibprtux.sl |
shared library for HP Ux |
|
CIB pdf toolbox
|
CibPdf32.dll |
CIB pdf toolbox-DLL for Win32, interface to the application |
CibPdf32.lib |
Library for CIB pdf toolbox |
|
CibPdf32.h |
Include file for CIB pdf toolbox |
|
libcibpdfux.so |
CIB pdf toolbox shared library for various Unix systems |
|
libcibpdfux.sl |
CIB pdf toolbox shared library for HP Unix systems |
|
CIB mail
|
WIN32 |
|
CibMail32.dll |
CIB mail-DLL for WIN32, interface to the application |
|
CibMail32.lib |
Library for CIB mail |
|
CibMail.h |
Include file for CIB mail |
|
CoMod.h |
General Include file for CoMod Module |
|
Unix |
||
libcibmailux.so |
shared library for Unix(e) |
|
libcibmailux.sl |
shared library for HP Ux |
|
CibDataCsv.dll |
Zugriffs Dll for Csv Daten |
|
CibDataXml.dll |
Zugriffs Dll for Xml Daten |
|
CIBCache.dll |
Tool Dll |
|
Xalan-C_1_5_0.dll |
Tool Dll Xml |
|
xerces-c_2_2_0.dll |
Tool Dll Xml |
|
CIB
runshell |
WIN32 |
|
cibrsh.exe |
CIB runshell, Command line shell WIN32 |
|
Unix |
||
cibrshux |
CIB runshell, Command line shell for Unix(e) |
|
Examples
|
jobs/basic |
Examples of commands (recognizable by name) |
jobs/customer |
Real orders from CIB documentServer customers (anonymous) |
|
jobs/examples |
General examples of a technical nature |
|
jobs/soap |
Examples of Web Service Jobs |
|
jobs/stylesheet |
Examples for Namespaces and Schemes |
|
templates |
Rtf and Pdf template for the example Job files |
Example call SOAP Web service with VB.net
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim service As New de.cib.docserv.web.CibDocumentServer
Dim request As New de.cib.docserv.web.Request
Dim comodtype As New de.cib.docserv.web.ComodType
Dim testjob As New de.cib.docserv.web.JobType
Dim testjobs As New de.cib.docserv.web.JobsType
Dim formatStep As New de.cib.docserv.web.StepType
Dim formatProps(1) As de.cib.docserv.web.PropertyType
Dim stepArray(2) As de.cib.docserv.web.StepType
Dim comodArray(1) As Object
Dim jobsArray(1) As de.cib.docserv.web.JobType
Dim mergeStep As New de.cib.docserv.web.StepType
Dim mergeProps(4) As de.cib.docserv.web.PropertyType
mergeStep.name = "step1"
mergeStep.command = "merge"
mergeStep.properties = New de.cib.docserv.web.PropertiesType()
mergeStep.properties.property = mergeProps
mergeStep.properties.property(0) = New de.cib.docserv.web.PropertyType()
mergeStep.properties.property(0).name = "-i"
mergeStep.properties.property(0).Value = "Test.rtf"
mergeStep.properties.property(1) = New de.cib.docserv.web.PropertyType()
mergeStep.properties.property(1).name = "-h"
mergeStep.properties.property(1).Value = "XML:$(inline)"
mergeStep.properties.property(2) = New de.cib.docserv.web.PropertyType()
mergeStep.properties.property(2).name = "-d"
mergeStep.properties.property(2).Value = "//Data/Person"
mergeStep.properties.property(3) = New de.cib.docserv.web.PropertyType()
mergeStep.properties.property(3).name = "-l"
mergeStep.properties.property(3).Value = "!merge.log"
mergeStep.trace = "merge.log"
formatStep.name = "step2"
formatStep.command = "format"
formatStep.properties = New de.cib.docserv.web.PropertiesType()
formatStep.properties.property = formatProps
formatStep.properties.property(0) = New de.cib.docserv.web.PropertyType()
formatStep.properties.property(0).name = "OutputFormat"
formatStep.properties.property(0).Value = "FormatPdf"
testjob.steps = stepArray
testjob.steps(0) = mergeStep
testjob.steps(1) = formatStep
comodtype.Items = comodArray
testjobs.job = jobsArray
testjobs.job(0) = testjob
comodtype.Items(0) = testjobs
comodtype.producer = "VB.net"
request.Comod = comodtype
Dim XmlString As String = "<Person><Vorname>Otto</Vorname><Name>Krause</Name><Strasse> Musterstrasse</Strasse><Nummer>1</Nummer><PLZ>12345</PLZ><Ort>Musterstadt</Ort></Person>"
Dim xmldata As New System.Xml.XmlDocument
xmldata.LoadXml(XmlString)
request.Data = xmldata.DocumentElement
Dim response As de.cib.docserv.web.Response
response = service.generate(request)
Dim jobResults As de.cib.docserv.web.JobResultsType
jobResults = CType(response.Comod.Items(0), de.cib.docserv.web.JobResultsType)
If (jobResults.jobresult(0).jobresultcode = 0) Then
' Success
Dim stepData As de.cib.docserv.web.StepDataType
stepData = jobResults.jobresult(0).stepresults(1).stepdata
Debug.Print(stepData.mimetype)
Debug.Print(stepData.encoding)
' TODO: Extract base64 encoded pdf from here: stepData.Value
Else
' A step failed
Debug.Print("Error " & jobResults.jobresult(0).jobresultcode & ": " _
& jobResults.jobresult(0).jobresulttext)
Debug.Print("Failed step(s): " _
& jobResults.jobresult(0).failed(0).name)
' TODO loop step results to find error code of failed step.
' TODO in case of merge extract content of trace property
End If
End Sub
End Class
Beispielaufruf SOAP Webservice mit C#
using Webservice2.de.cib.docserv.web;
…
private void button1_Click(object sender, EventArgs e)
{
CibDocumentServer service = new CibDocumentServer();
Request request = new Request();
StepType mergeStep = new StepType();
StepType formatStep = new StepType();
ComodType comodtype = new ComodType();
JobsType testjobs = new JobsType();
JobType testjob = new JobType();
PropertyType[] formatProps = new PropertyType[1];
StepType[] stepArray = new StepType[2];
Object[] comodArray = new Object[1];
JobType[] jobsArray = new JobType[1];
PropertyType[] mergeProps = new PropertyType[4];
mergeStep.name = "step1";
mergeStep.command = "merge";
mergeStep.properties = new PropertiesType();
mergeStep.properties.property = mergeProps;
mergeStep.properties.property[0] = new PropertyType();
mergeStep.properties.property[0].name = "-i";
mergeStep.properties.property[0].Value = "Test.rtf";
mergeStep.properties.property[1] = new PropertyType();
mergeStep.properties.property[1].name = "-h";
mergeStep.properties.property[1].Value = "XML:$(inline)";
mergeStep.properties.property[2] = new PropertyType();
mergeStep.properties.property[2].name = "-d";
mergeStep.properties.property[2].Value = "//Data/Person";
mergeStep.properties.property[3] = new PropertyType();
mergeStep.properties.property[3].name = "-l";
mergeStep.properties.property[3].Value = "!merge.log";
mergeStep.trace = "merge.log";
formatStep.name = "step2";
formatStep.command = "format";
formatStep.properties = new PropertiesType();
formatStep.properties.property = formatProps;
formatStep.properties.property[0] = new PropertyType();
formatStep.properties.property[0].name = "OutputFormat";
formatStep.properties.property[0].Value = "FormatPdf";
testjob.steps = stepArray;
testjob.steps[0] = mergeStep;
testjob.steps[1] = formatStep;
comodtype.Items = comodArray;
testjobs.job = jobsArray;
testjobs.job[0] = testjob;
comodtype.Items[0] = testjobs;
comodtype.producer = "C#.net";
request.Comod = comodtype;
String xmlString = "<Person><Vorname>Otto</Vorname><Name>Krause</Name><Strasse>Musterstrasse</Strasse>
<Nummer>1</Nummer><PLZ>12345</PLZ><Ort>Musterstadt</Ort></Person>";
System.Xml.XmlDocument xmldata = new System.Xml.XmlDocument();
xmldata.LoadXml(xmlString);
request.Data = xmldata.DocumentElement;
Response response = service.generate(request);
JobResultsType jobResults = (JobResultsType)response.Comod.Items[0];
if (jobResults.jobresult[0].jobresultcode == 0) {
// Success
StepDataType stepData = jobResults.jobresult[0].stepresults[1].stepdata;
System.Console.Out.WriteLine(stepData.mimetype);
System.Console.Out.WriteLine(stepData.encoding);
// TODO: Extract base64 encoded pdf from here: stepData.Value
}
else {
// A step failed
System.Console.Out.WriteLine("Error " + jobResults.jobresult[0].jobresultcode + ": "
+ jobResults.jobresult[0].jobresulttext);
System.Console.Out.WriteLine("Failed step(s): "
+ jobResults.jobresult[0].failed[0].name);
// TODO loop step results to find error code of failed step.
// TODO in case of merge extract content of trace property
}
}
Example for an XML request
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<Generate xmlns="http://www.cib.de/schemas/soap/job/1.1">
<Comod xmlns="">
<producer>VB.net</producer>
<jobs>
<job>
<steps>
<step name="step1" command="merge">
<properties>
<property name="-i">
Test.rtf
</property>
<property name="-h">
XML:$(inline)
</property>
<property name="-d">
//Data/Person
</property>
<property name="-l">
!merge.log
</property>
</properties>
<trace>merge.log</trace>
</step>
<step name="step2" command="format">
<properties>
<property name="OutputFormat">
FormatPdf
</property>
</properties>
</step>
</steps>
</job>
</jobs>
</Comod>
<Data xmlns="">
<Person>
<Vorname>Otto</Vorname>
<Name>Krause</Name>
<Strasse>Musterstrasse</Strasse>
<Nummer>1</Nummer>
<PLZ>12345</PLZ>
<Ort>Musterstadt</Ort>
</Person>
</Data>
</Generate>
</soap:Body>
</soap:Envelope>
Example for an XML response
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.cib.de/schemas/job/1.1 http://www.cib.de/schemas/job/1.1/cibjob.xsd
http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope/
http://www.cib.de/schemas/soap/job/1.1 http://www.cib.de/schemas/soap/job/1.1/cibjobsoap.xsd
">
<soap:Body>
<cibjobsoap:GenerateResult
xmlns:cibjobsoap="http://www.cib.de/schemas/soap/job/1.1">
<Comod xmlns="">
<!--CIB job Ausgabe 07.11.2007 10:01:15 -->
<version>1.1</version>
<producer>CIB job 1.3.12b</producer>
<job-results>
<job-result name="">
<job-result-code>0</job-result-code>
<job-result-text>Erfolgreich</job-result-text>
<job-timing>0:00:00,156</job-timing>
<!--Liste aller Ergebnisse-->
<step-results>
<!-- step1 -->
<step-result name="step1">
<step-result-code>0</step-result-code>
<step-result-text>
Erfolgreich
</step-result-text>
<step-timing>0:00:00,015</step-timing>
</step-result>
<!-- step2 -->
<step-result name="step2">
<step-result-code>0</step-result-code>
<step-result-text>
Erfolgreich
</step-result-text>
<step-timing>0:00:00,141</step-timing>
<step-data encoding="base64"
mimetype="application/pdf">
JVBERi0xLjQNCiXi48/TCjYgMCBvYmoKPDwKL0xlbmd0aCA3IDAgUgovRmls
dGVyIC9GbGF0ZURlY29kZQo+PgpzdHJlYW0KeJydjb0KwjAQgPc8xY26nLkk
bdNRQR1EBMkLVJsKDgpJiuDTmx+qs70b7rif7yOgmO7GKDfnPdsYxiFlHK52
HEggBzMwjjwGmCujVN7xyrh49mINR11BU7WpmB4W64u3j966JZg725qE/Isk
BYpCOoXwhIwRCqWC9JoXB9eN3s4VkEZVBMfRB+t8cJ33tphqja3+mWiuhCus
i4SEjLrMkTJxv/BJ3/Vh0nwAR/BbawplbmRzdHJlYW0KZW5kb2JqCjcgMCBv
YmoKMTc1DQplbmRvYmoKNSAwIG9iago8PAovVHlwZSAvUGFnZQovUGFyZW50
IDMgMCBSCi9NZWRpYUJveCBbMCAwIDU5NSA4NDJdCi9SZXNvdXJjZXMgOSAw
IFIKL0NvbnRlbnRzIFs2IDAgUiBdCj4+CmVuZG9iago0IDAgb2JqCjw8Ci9U
eXBlIC9DYXRhbG9nCi9QYWdlcyAzIDAgUgo+PgplbmRvYmoKMTAgMCBvYmoK
PDwNCi9Qcm9kdWNlciAoQ0lCIGZvcm1hdC9wZGYgNS4zLjIwMyAtIHd3dy5j
aWIuZGUpCi9BdXRob3IgKEhvbGdlcikKL1RpdGxlIChBYnNlbmRlcikKL0Ny
ZWF0aW9uRGF0ZSAoRDoyMDA3MTEwNzEwMDExNSswMScwMCcpCi9Nb2REYXRl
IChEOjIwMDcxMTA3MTAwMTE1KzAxJzAwJykKPj4KZW5kb2JqCjEgMCBvYmoK
PDwgL0YwIDggMCBSID4+CmVuZG9iago5IDAgb2JqCjw8L0ZvbnQgMSAwIFIg
IC9Qcm9jU2V0IFsvUERGL1RleHRdID4+CmVuZG9iagozIDAgb2JqCjw8Ci9U
eXBlL1BhZ2VzCi9Db3VudCAxCi9LaWRzIFsgNSAwIFIgXQo+PgplbmRvYmoK
OCAwIG9iago8PAovVHlwZS9Gb250Ci9TdWJ0eXBlL1RydWVUeXBlCi9OYW1l
L0YwCi9CYXNlRm9udC9UaW1lc05ld1JvbWFuUFNNVAovRW5jb2RpbmcvV2lu
QW5zaUVuY29kaW5nCi9GaXJzdENoYXIgMzIKL0xhc3RDaGFyIDExNwovV2lk
dGhzIFsgMjUwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNTAw
IDUwMCA1MDAgNTAwIDUwMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNzIyIDAg
MCAwIDAgMCAwIDAgMCAwIDcyMiAwIDg4OSAwIDcyMiAwIDAgMCAwIDAgMCAw
IDAgMCAwIDAgMCAwIDAgMCAwIDAgNDQ0IDUwMCAwIDUwMCA0NDQgMCAwIDAg
MCAwIDAgMCAwIDUwMCA1MDAgMCAwIDMzMyAzODkgMjc4IDUwMCBdCi9Gb250
RGVzY3JpcHRvciAxMSAwIFIKPj4KZW5kb2JqCjExIDAgb2JqCjw8Ci9UeXBl
L0ZvbnREZXNjcmlwdG9yCi9Gb250TmFtZS9UaW1lc05ld1JvbWFuUFNNVAov
RmxhZ3MgMzQvRm9udEJCb3ggWy03NiAtMjE2IDEwMDkgOTMzXQovQXNjZW50
IDg5MS9EZXNjZW50IC0yMTYKL0l0YWxpY0FuZ2xlIDAvQ2FwSGVpZ2h0IDEy
MDAvU3RlbVYgODAKPj4KZW5kb2JqCnhyZWYNCjAgMTINCjAwMDAwMDAwMDIg
NjU1MzUgZg0KMDAwMDAwMDYyMiAwMDAwMCBuDQowMDAwMDAwMDAwIDAwMDAw
IGYNCjAwMDAwMDA3MDcgMDAwMDAgbg0KMDAwMDAwMDM5MiAwMDAwMCBuDQow
MDAwMDAwMjg1IDAwMDAwIG4NCjAwMDAwMDAwMTYgMDAwMDAgbg0KMDAwMDAw
MDI2NSAwMDAwMCBuDQowMDAwMDAwNzY1IDAwMDAwIG4NCjAwMDAwMDA2NTMg
MDAwMDAgbg0KMDAwMDAwMDQ0MSAwMDAwMCBuDQowMDAwMDAxMTUzIDAwMDAw
IG4NCnRyYWlsZXIKPDwNCi9TaXplIDEyCi9Sb290IDQgMCBSCi9JbmZvIDEw
IDAgUgovSURbPGY4ZDVmNjA1YjEzNjBiMGRmZmVjZjg2YWU1ZGVhMmFhPjxm
OGQ1ZjYwNWIxMzYwYjBkZmZlY2Y4NmFlNWRlYTJhYT5dCj4+CnN0YXJ0eHJl
ZgoxMzI3CiUlRU9GCg==
</step-data>
</step-result>
</step-results>
</job-result>
</job-results>
</Comod>
</cibjobsoap:GenerateResult>
</soap:Body>
</soap:Envelope>
Error codes of the Socketserver
The specified return values can be read in the logs of the application server (processor native CIB socketserver process at localhost:5000x terminated with exit code nnn) as well as in the socketserver.log if necessary.
The following list gives an overview of possible error returns by the socket server.
The error numbers have the following meaning:
Return value |
Description of the return values |
414 |
SocketServer has terminated because the maximum execution time has been exceeded. See en.cib.docserv.job.MaxJobExecutionTime |
440 |
SocketServer has received termination signal (TERMINATION MESSAGE) |
441 |
SocketServer: Too few or no arguments (NOARGUMENTS) |
442 |
SocketServer: Non-permitted port number (INVALIDPORT) |
443 |
SocketServer: CIB Job Library not available (JOBLIBRARYNOTAVAILABLE) |
444 |
SocketServer: Invalid Content Type (INVALIDCONTENTTYPE) |
445 |
SocketServer: general error with description (EXCEPTION). For example a socket timeout due to too long processing time, or other socket errors. |
446 |
SocketServer: general error (UNEXPECTEDEXCEPTION) |
447 |
SocketServer: The url in the http header is invalid. Allowed are /job and /terminates (INVALIDREQUESTURL) |
448 |
SocketServer: Due to the idle time ("IdleShutdownTime") the SocketServer has stopped. |
454 |
SocketServer: Maximum working memory reached. See en.cib.docserv.socket.MaxMemory. |
458 |
SocketServer: Maximum working memory reached. Error during allocation ("malloc()"). See de.cib.docserv.socket.MaxMemory. |
459 |
SocketServer: Maximum working memory reached. Error during allocation ("new"). See de.cib.docserv.socket.MaxMemory. |
457 |
SocketServer should be (re)configured (CONFIGURATIONMESSAGE) |
Note: Under Unix/Linux it can happen that error codes are output shifted by a multiple of 256.
Example: The return value 440 is thus output as 184 or even as -72.
Error codes of the CIB documentserver
Return value |
Description of the return values |
401 |
Job: Error during XML parsing. All Xerces Errors (XMLPARSER) |
402 |
Job: Not implemented (NOTIMPLEMENTED) |
403 |
Job: Internal error (INTERNALPROGRAMERROR) |
404 |
Job: An error was reported by an execution step (JOBEXECUTIONFAILED) |
405 |
Job: Empty input (INPUTFILEEMPTY) |
406 |
Job: The information for a job or step is incorrect. (INVALIDJOB) |
409 |
Job: No input (NOINPUTFILE) |
410 |
Java: Exception occurred in Java (JAVAEXCEPTION). Deprecated. |
411 |
Job: A step was not even executed due to a previous error (STEPNOTEXECUTED) |
412 |
Job: Maximum execution time exceeded. See en.cib.docserv.job.MaxJobExecutionTime |
413 |
Job: Maximum execution time exceeded. See en.cib.docserv.job.MaxJobExecutionTime |
414 |
Job: Maximum execution time exceeded. See en.cib.docserv.job.MaxJobExecutionTime |
415 |
Job: Reserved |
433 |
Java: The SocketServer hangs due to a general resource problem (e.g. maximum memory of the operating system exceeded). The SocketServer is automatically restarted after the socket timeout is exceeded. See en.cib.docserv.job.SocketTimeout |
434 |
Java: No response from the socket server after the time specified in the SocketTimeout property has expired. The SocketServer is restarted automatically. See en.cib.docserv.job.SocketTimeout |
435 |
Java: Exitcode of natives could not be read (NOEXITCODE) |
436 |
Java: DocumentServer: no asynchronous job result available after several tries (ASYNCRESULTMISSING) |
437 |
Java: General exception (GENERALEXCEPTION) |
438 |
Java: No server available (NOSERVER) |
439 |
Java: Timeout when reading from native socket (TIMEOUT) |
|
LibreOffice-Konverter: |
1000 |
invalid license (not supported) |
1001 |
LibreOffice could not be loaded |
1002 |
unknown error (not yet supported) |
1003 |
general I/O error (not yet supported) |
1004 |
Error while loading the InputFile |
1005 |
Error while saving the OutputFile |
1006 |
invalid parameter |
Error codes of the Servermanager
Return value |
Description of the return values |
450 |
ServerManager has received termination signal (TERMINATIONSIGNAL) |
451 |
ServerManager: Too few or no arguments (NOARGUMENTS) |
452 |
ServerManager: Wrong argument (INVALIDARGUMENT) |
453 |
ServerManager: Non-permitted port number (INVALIDPORT) |
454 |
Reserved |
455 |
Server manager: general error with description (EXCEPTION) |
456 |
Server manager: general error (UNEXPECTEDEXCEPTION) |
WSDL Webservice Description
This section contains the WSDL file for the SOAP interface.
The current version can be obtained at any time from http://www.cib.de/schemas/soap/job/1.1/CibDocumentServer.wsdl.
<?xml version="1.0" encoding="UTF-8"?>
<!--
CIB job/SOAP XML Schema/WSDL 1.1 for CIB job from Version 1.4.x. onwards
(c) CIB software GmbH 2005-2006
$Revision: 2 $
INTRODUCTION:
This schema formally describes the XML structure of the SOAP Envelope, into which
CIB job job files and job result files can be embedded.
EXAMPLE:
A SOAP message to execute the "generate" operation contains, in addition to the
Envelope a "Generate" element that contains the nodes "Comod" and "Data".
The namespaces are left out. <envelope>
<header/>
<body>
<Generate>
<Comod>
<jobs>...</jobs>
</Comod>
<Data>...</Data>
</Generate>
</body>
</envelope>
And the response:
<envelope>
<header/>
<body>
<GenerateResult>
<Comod>
<job-results>...</job-results>
</Comod>
</GenerateResult>
</body>
</envelope>
$Header: /CIB documentserver/jobs/soap/cibjob.wsdl 2 7.08.06 12:15 Georg $
-->
<wsdl:definitions name="CibDocumentServer"
targetNamespace="http://www.cib.de/schemas/soap/job/1.1"
xmlns:soapjob="http://www.cib.de/schemas/soap/job/1.1"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!-- Define types for the messages -->
<wsdl:types>
<xsd:scheme
targetNamespace="http://www.cib.de/schemas/soap/job/1.1"
xmlns:pref="http://www.cib.de/schemas/job/1.1">
<!-- Import the cibjob syntax -->
<xsd:import namespace="http://www.cib.de/schemas/job/1.1"
schemaLocation="http://www.cib.de/schemas/job/1.1/cibjob.xsd">
</xsd:import>
<!-- Define the structure of the messages -->
<xsd:complexType name="Request">
<xsd:sequence>
<xsd:element name="Comod" type="pref:ComodType">
</xsd:element>
<xsd:element name="Data" type="pref:UserData"></xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Response">
<xsd:sequence>
<xsd:element name="Comod" type="pref:ComodType">
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- These two element names appear in the body of Request and
Response, and each has a comod element. -->
<xsd:element name="Generate" type="soapjob:Request" />
<xsd:element name="GenerateResult" type="soapjob:Response" />
</xsd:schema>
</wsdl:types>
<!-- Declare messages of the operation described below. -->
<wsdl:message name="generateMessage">
<wsdl:part name="parameter"
element="soapjob:Generate" />
</wsdl:message>
<wsdl:message name="generateResultMessage">
<wsdl:part name="parameter"
element="soapjob:GenerateResult" />
</wsdl:message>
<!-- Declare concrete operation -->
<wsdl:portType name="cibjobInterface">
<wsdl:operation name="generate">
<wsdl:input message="soapjob:generateMessage" />
<wsdl:output message="soapjob:generateResultMessage" />
</wsdl:operation>
</wsdl:portType>
<!-- Declare concrete operation. Because of use="literal", the SOAP
Messages the elements assigned to the messages (Generate and ~Result) expected. -->
<wsdl:binding name="cibjobBinding" type="soapjob:cibjobInterface">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="generate">
<soap:operation
soapAction="http://www.cib.de/soap/job/generate" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<!-- Declare the service to the concrete operations -->
<wsdl:service name="CibDocumentServer">
<wsdl:port binding="soapjob:cibjobBinding"
name="cibjobService">
<!-- The implementing address -->
<soap:address location="http://desiderata:8080/CibDocumentServer/soap/Generate" />
</wsdl:port>
</wsdl:service>