Konfiguration von Web Services zur Ausführung von Jobs

Größe: px
Ab Seite anzeigen:

Download "Konfiguration von Web Services zur Ausführung von Jobs"

Transkript

1 Web Services Konfiguration von Web Services zur Ausführung von Jobs JOB SCHEDULER Tutorial März 2006 Software- und Organisations-Service GmbH Giesebrechtstr. 15 D Berlin Telefon (030) Telefax (030)

2 Konfiguration von Web Services zur Ausführung von Jobs 2 Impressum Software- und Organisations-Service GmbH Giesebrechtstr. 15 D Berlin Telefon (030) Telefax (030) Mail Web Letzte Aktualisierung: 11. März 2006

3 Konfiguration von Web Services zur Ausführung von Jobs 3 Inhaltsverzeichnis 1 Einleitung Einsatz des Job Schedulers für Web Services Web Service Fähigkeit für eigene Programme und Skripte Orchestrierung von Jobs mit Web Services Routing von Web Service Requests Ablauf eines asynchronen Web Service Ablauf eines synchronen Web Service Einfache Web Service Steuerung Starten eines Jobs Erzeugen eines Auftrags Konfiguration eines asynchronen Web Service Bereitstellen einer Job-Kette als asynchronen Web Service Das request_xslt_stylesheet Das response_xslt_stylesheet Das forward_xslt_stylesheet Konfiguration eines synchronen Web Service Erstellen von Jobs für synchrone Web Services Anhang A: execute_file_request.xslt Anhang B: execute_file_response.xslt Anhang C: execute_file_forward.xslt

4 Einleitung 4 1 Einleitung Der Job Scheduler bietet eine Schnitstelle um Jobs und Job-Ketten als Web Services zur Verfügung zu stellen. Hierbei wird zwischen zwei Verfahren unterschieden: Asynchrone Web Services: Mit Hilfe von XSLT-Stylesheets kann die Annahme von Web Service Anfragen, sowie deren Beantwortung konfiguriert werden. Der Job Scheduler ist oberhalb von HTTP auf kein spezielles Protokoll (z.b. SOAP) festgelegt. Die Implementierung dieses Protokolls ist nicht im Job Scheduler enthalten, sondern wird in den Stylesheets vorgenommen. Mit dieser Methode können vorhandene Job-Ketten zur Verwendung als Web Service angepasst werden. Das Ergebnis nach der Auftragsverarbeitung kann bei dieser Technik nur asynchron weitergeleitet werden. Es gibt zwar auch bei dieser Methode eine synchrone Antwort, diese dient aber nur der Quittierung, dass ein Auftrag angenommen wurde. Synchrone Web Services: Wird eine synchrone Antwort benötigt, in der das Ergebnis der Job-Verarbeitung enthalten ist, so müssen Jobs dazu entsprechende Schnittstellen implementieren. Die sychrone Antwort wird von einem Job mittels Job Scheduler API verschickt. Die Interpretation der Web Service Anfrage erfolgt im Job. Es werden keine Stylesheets verwendet, stattdessen wird konfiguriert, welche Job-Kette den Web Service beantworten soll. Für das Verständnis dieses Tutorials gelten folgende Voraussetzungen: Kentnisse über den Aufbau von SOAP Nachrichten Verständnis von Jobs und Job-Ketten im Job Scheduler Grundlegende Kenntnisse der XML-Kommandos des Job Schedulers Grundlegende XSLT Kenntnisse. (Für asynchrone Web Services) Kenntnisse der Job Scheduler Java API für die Job Implementierung. (Für synchrone Web Services)

5 Einsatz des Job Schedulers für Web Services 5 2 Einsatz des Job Schedulers für Web Services Mit dem Job Scheduler können Jobs automatisch als Web Services bereitgestellt werden. Nachstehend einige Beispiel für Einsatzgebiete dieser Schnittstelle. 2.1 Web Service Fähigkeit für eigene Programme und Skripte Beliebige ausführbare Programme und Shell Skripte werden automatisch als Web Services verfügbar. Ihre Applikationen steuern mittels Web Service Aufrufen beliebige Jobs, die ausführbare Programme, Shell Skripte oder Java-Klassen starten.

6 Einsatz des Job Schedulers für Web Services Orchestrierung von Jobs mit Web Services Eigene Programme und Skripte können mit dem Job Scheduler Web Service in das Business Process Management eingebunden werden. Der Job Scheduler liefert synchrone und asynchrone Antworten an Ihre BPM Engine.

7 Einsatz des Job Schedulers für Web Services Routing von Web Service Requests Der Job Scheduler kann Web Service Requests vom Internet in das Intranet routen. Die Requests werden empfangen, authentifiziert und validiert. Valide Requests werden zur Weiterverarbeitung an einen weiteren Job Scheduler im Intranet übertragen.

8 Ablauf eines asynchronen Web Service 8 3 Ablauf eines asynchronen Web Service A n a l o g z u m n a c h f o l g e n d e n B e i s p i e l s e i i m J o b S c h e d u l e r f ü r d i e U R L ein Web Service konfiguriert. Ein Client schickt per HTTP POST an den Job Scheduler (Host und TCP Port des Job Schedulers) einen Web Service Aufruf. Den ankommenden Aufruf kann der Job Scheduler so nicht verstehen. Er verwendet daher das für den Web Service konfigurierte request_xslt_stylesheet, um den unbekannten Aufruf in ein für ihn verständliches XML-Kommando zu transformieren. Das transformierte XML-Kommando führt der Job Scheduler aus. Die HTTP-Verbindung wird währenddessen offengehalten. Das Ausführen eines XML-Kommandos im Job Scheduler liefert eine XML-Antwort. Beispielsweise liefert der Job Scheduler auf einen erfolgreichen <kill_task> Befehl die XML-Antwort: <spooler> <answer> <ok/> </answer> </spooler> Der (SOAP-)Client am anderen Ende der offenen HTTP-Verbindung erwartet eine (synchrone) Antwort, würde jedoch die Antwort des Job Schedulers nicht verstehen, da sie noch keine SOAP-Nachricht ist. Deswegen transformiert der Job Scheduler mit Hilfe des response_xslt_stylesheet die XML-Antwort in eine Antwort, die vom Client verstanden wird. Diese Antwort schickt der Job Scheduler an den Client und schließt die HTTP-Verbindung. Diese synchronen Antworten beinhalten in der Regel nur sehr einfache Informationen, zum Beispiel, ob ein Auftrag erfolgreich übergeben wurde, und welche ID er erhalten hat. Möchte man jedoch einen Web Service bereitstellen, dessen Antwort das Ergebnis der Ausführung eines Auftrags beinhaltet, so erfordert dies eine asynchrone Antwort, falls die Ausführung des Auftrags längere Zeit in Anspruch nimmt. Dazu werden die (beim Durchlaufen der Job-Kette veränderten) Parameter des Auftrags mit dem forward_xslt_stylesheet transformiert. Das Ergebnis wird als asynchrone Antwort mit einer neuen HTTP Verbindung zurück an den (SOAP-)Client (oder an einen anderen Empfänger) geschickt.

9 Ablauf eines asynchronen Web Service 9

10 Ablauf eines synchronen Web Service 10 4 Ablauf eines synchronen Web Service Für die URL sei ein Web Service konfiguriert. Dieser verwendet eine Job-Kette, um Web Service Anfragen synchron zu beantworten. Ein Client schickt per HTTP POST an den Job Scheduler (Host und TCP Port des Job Schedulers) einen Web Service Aufruf. Der Job Scheduler versucht nicht, diese Anfrage zu verstehen, sondern erzeugt für die konfigurierte Job-Kette einen neuen Auftrag, der die Anfrage enthält. Jobs in dieser Job-Kette haben die Möglichkeit, diese Anfrage aus dem Auftrag zu lesen und zu beantworten. Ein Job in der Kette muss die Anfrage mit der Web_service_response.send() Methode beantworten.

11 Einfache Web Service Steuerung 11 5 Einfache Web Service Steuerung Die Job Scheduler Distribution enthält zwei Standard Stylesheets, um Grundlegende Funktionen des Job Schedulers per SOAP bereitzustellen. Per default ist dieser Standard Web Service jedoch abgeschaltet. Um ihn zu aktivieren, müssen in der Datei config/scheduler.xml die XML-Kommentare um das <web_services>... </web_services> Element entfernt werden. Nach einem Neustart des Job Schedulers steht dann ein Web Service unter der url bereit. 5.1 Starten eines Jobs Z u m S t a r t e n e i n e s J o b s w i r d d i e S O A P M e t h o d e s t a r t J o b i m N a m e s p a c e zur Verfügung gestellt. Diese kennt folgende Parameter, die als Kind Elemente von <startjob> gesendet werden müssen: job: Jobname name: Name für die Task (optional) after: Eine Anzahl Sekunden, nach deren Ablauf erst die Task gestartet werden soll (optional) at: Zeitpunkt, zu dem die Task gestartet werden soll (optional) Außderdem können beliebig viele <param> Elemente gesendet werden, um Job Parameter zu setzen. <param> hat die Kind-Elemente <name> und <value>. Beispiel: startjob für Job scheduler_check_sanity <?xml version="1.0" encoding="utf-8"?> <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:body> <startjob xmlns="http://www.sos-berlin.com/scheduler"> <job>scheduler_check_sanity</job> <at> :05:00</at> </startjob> </soapenv:body> Als Antwort kommt ein SOAP Dokument zurück, das die vom Job Scheduler vergebene Task Id enhält. Beispiel: SOAP Antwort auf startjob <?xml version="1.0" encoding="utf-8"?> <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:body> <sos:taskid xmlns:sos="http://www.sos-berlin.com/scheduler">112491</sos:taskid> </soapenv:body>

12 Einfache Web Service Steuerung Erzeugen eines Auftrags Zum Erzeugen eines Auftrags wird die SOAP Methode addorder zur Verfügung gestellt. Diese kennt folgende Parameter, die als Kind Elemente von <addorder> gesendet werden müssen: jobchain: Jobkette des Auftrags id: ID des Auftrags (optional) title: Titel des Auftrags(optional) Außderdem können beliebig viele <param> Elemente gesendet werden, um Auftrags Parameter zu setzen. Beispiel: addorder für die Jobkette database_reports (aus dem Managed Jobs Paket) <?xml version="1.0" encoding="utf-8"?> <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:body> <addorder xmlns="http://www.sos-berlin.com/scheduler"> <jobchain>database_reports</jobchain> <title>soaptest</title> <param> <name>command</name> <value>select * FROM SCHEDULER_MANAGED_ORDERS</value> </param> <param> <name>database_connection</name> <value>scheduler</value> </param> <param> <name>scheduler_order_report_mailto</name> </param> <param> <name>scheduler_order_report_asbody</name> <value>1</value> </param> <param> <name>scheduler_order_report_subject</name> <value>webservice_test 1</value> </param> </addorder> </soapenv:body> Als Antwort kommt ein SOAP Dokument zurück, das die vom Job Scheduler vergebene Order Id enhält. Beispiel: SOAP Antwort auf addorder <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:body> <sos:orderid xmlns:sos="http://www.sos-berlin.com/scheduler">16120</sos:orderid> </soapenv:body>

13 Konfiguration eines asynchronen Web Service 13 6 Konfiguration eines asynchronen Web Service Damit der Job Scheduler die im folgenden Kapitel erstellten Stylesheets für einen Web Service verwendet, muss dieser zunächst in der Konfigurationsdatei scheduler.xml konfiguriert werden. Wenn noch nicht vorhanden, muss nach dem Element </process_classes> ein neues Element <web_services> eingefügt werden. Innerhalb von <web_services> wird für jeden Web Service ein <web_service> Element erstellt. Für das hier vorgestellte Beispiel wird die Konfiguration des Web Service wie folgt vorausgesetzt: <web_service debug = "yes" request_xslt_stylesheet = "samples/config/execute_file_request.xslt" response_xslt_stylesheet = "samples/config/execute_file_response.xslt" forward_xslt_stylesheet = "samples/config/execute_file_forward.xslt" name = "execute_file" url_path = "/execute_file" /> Der Parameter debug="yes" bewirkt, dass die Ergebnisse der XSL Transformationen im Verzeichnis logs des Job Schedulers abgelegt werden. Dies ist hilfreich, um zu prüfen, ob die Transformationen wie erwartet durchgeführt werden, sollte aber im produktiven Betrieb abgeschaltet werden, da sonst sehr viele Dateien entstehen. Die Verzeichnisangaben sind an die Verzeichnisse anzupassen, in denen die Stylesheets abgelegt wurden. Nachdem die Datei scheduler.xml geändert wurde, muss der Job Scheduler neu gestartet werden.

14 Bereitstellen einer Job-Kette als asynchronen Web Service 14 7 Bereitstellen einer Job-Kette als asynchronen Web Service Das folgende Beispiel setzt eine Installation des Job Schedulers mit dem Paket Managed Jobs voraus. Im Paket Managed Jobs ist eine vorkonfigurierte Job-Kette executable_files vorhanden. Diese enthält den Job JobSchedulerManagedExecutableJob, der auf dem Host des Job Schedulers vorhandene ausführbare Dateien startet. Das Managed Jobs Paket ist keine Voraussetzung für Web Services im Job Scheduler, sondern nur für dieses Beispiel. Für diese Job-Kette, soll eine SOAP-Schnittstelle bereitgestellt werden, die es ermöglicht, Executables auf dem Host des Schedulers aufzurufen. Als Beispielaufruf wird ein Unix "ls"-kommando übergeben, welches den Inhalt des Arbeitsverzeichnisses in die Standardausgabe (stdout) schreibt. Optional soll eine asynchrone Antwort möglich sein, die diese Ausgaben des Executable Files enthält. Die kompletten Quelltexte für die Stylesheets befinden sich im Anhang. 7.1 Das request_xslt_stylesheet Für die Entwicklung des Stylesheets, das die SOAP-Anfrage entgegennimmt und in ein für den Job Scheduler verständliches XML-Kommando umwandelt, gehen wir zunächst von der SOAP-Anfrage aus. Die SOAP-Schnittstelle benötigt eine Methode executefile mit einem Parameter file, der den Aufruf angibt. Beispiel: SOAP Anfrage Methode executefile <?xml version="1.0" encoding="utf-8"?> <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:header> <wsa:to xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"> </wsa:to> </soapenv:header> <soapenv:body> <executefile xmlns="http://www.sos-berlin.com/scheduler"> <file>ls</file> </executefile> </soapenv:body> Bevor der Job Scheduler den Aufruf transformiert, bettet er ihn in ein <service_request> Dokument ein, das weitere Meta-Informationen über die Anfrage transportiert.

15 Bereitstellen einer Job-Kette als asynchronen Web Service 15 Beispiel: service_request <?xml version="1.0" encoding="utf-8"?> <service_request url="http://localhost:4444/execute_file"> <web_service name="execute_file" url_path="/execute_file" request_xslt_stylesheet="samples/config/execute_file_request.xslt" response_xslt_stylesheet="samples/config/execute_file_response.xslt" debug="1"/> <content> <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">... </content> </service_request> Daher muss das Stylesheet von einer Wurzel <service_request> ausgehen: <xsl:template match="/service_request"> <xsl:apply-templates select="content/soapenv:envelope/soapenv:body"/> <xsl:template match="soapenv:body"> <xsl:apply-templates select="*" mode="soapbody"/> Das zweite Template selektiert noch nicht die erwartete Methode executefile, sondern alle Elemente im Mode "soapbody". Zum einen könnte es sein, dass man mit einem Stylesheet (und einem Web Service) unterschiedliche Methoden behandeln möchte. Dann würde man für jede Methode ein separates Template mit dem Mode "soapbody" schreiben. Zum anderen erlaubt es dieses select, für gültige SOAP Requests, die eine unbekannte Methode aufrufen, einen SOAP Fehler zurückzugeben. Dazu später mehr. In diesem Beispiel wird ein Template benötigt für <execute_file> Elemente. <xsl:template match="sos:executefile" mode="soapbody" priority="2"> <add_order job_chain="executable_files"> <xsl:attribute name="web_service"> <xsl:value-of </xsl:attribute> <params> <param name="command"> <xsl:attribute name="value"> <xsl:value-of select="sos:file"/> </xsl:attribute> </param> </params> </add_order> Das Template generiert einen <add_order> Befehl für die Job-Kette executable_files. Des weiteren erhält der <add_order> Befehl ein Attribut web_service, das den Namen (siehe Konfiguration) des aufgerufenen Web Service enthält: <?xml version="1.0" encoding="utf-8"?> <add_order job_chain="executable_files" web_service="execute_file"> <params> <param name="command" value="ls"/> </params> </add_order>

16 Bereitstellen einer Job-Kette als asynchronen Web Service 16 Die Übergabe des Web Service Namens an den Auftrag ist Voraussetzung, um später eventuell eine asynchrone Antwort oder Weiterleitung zu durchführen zu können. In <params> werden die Auftragsparameter gesetzt. Der Job JobSchedulerManagedExecutableJob kennt einen Parameter command, der den auszuführenden Befehl (in diesem Fall "ls") enthält. Für die Fehlerbehandlung gibt es ein weiteres Template. Dieses gilt für alle Methodenaufrufe, die nicht schon von einem anderen Template behandelt wurden. In diesem Fall also alle Methoden außer executefile. <xsl:template match="*" mode="soapbody" priority="0.5"> <!-- SOAP-Fehlermeldung an Web Service generieren --> <service_response> <content> <soapenv:envelope> <soapenv:body> <soapenv:fault> <faultcode>soap-env:client</faultcode> <faultstring>unknown command: <xsl:value-of select="name(.)"/> </faultstring> </soapenv:fault> </soapenv:body> </content> </service_response> Dieses Template erstellt das Scheduler Kommando <service_response>. Dieses schickt den Inhalt des Elements <content> als Antwort zurück. Damit wird für alle unbekannten Methodenaufrufe eine SOAP Fehlermeldung erzeugt. 7.2 Das response_xslt_stylesheet Nachdem der Job Scheduler den Auftrag angenommen hat, gibt er eine Antwort, die das Element <OK> und weitere Informationen über den neuen Auftrag enthält, oder das Element <ERROR> im Fehlerfall. Beispiel: Antwort vom Job Scheduler <?xml version="1.0" encoding="iso "?> <spooler> <answer time=" :19:46.342"> <ok> <order order="3823" id="3823" state="0" initial_state="0" job_chain="executable_files" job="scheduler_managed_executable_file" priority="0" created=" :19:46.342" web_service="execute_file"> <log level="debug9"/> </order> </ok> </answer> </spooler> Diese Antwort des Job Schedulers wird vom response_xslt_stylesheet umgewandelt, und als synchrone Antwort an den Client zurückgeschickt. Dafür muss ein <service_response> Kommando für den Job Scheduler generiert werden: <xsl:template match="/spooler/answer"> <service_response> <content>

17 Bereitstellen einer Job-Kette als asynchronen Web Service 17 <soapenv:envelope> <soapenv:body> <xsl:apply-templates select="error ok"/> </soapenv:body> </content> </service_response> Im Erfolgsfall kann dann z.b. die ID zurückgegeben werden, die an den neuen Auftrag vergeben wurde: <xsl:template match="ok[order]" priority="2"> <sos:orderid><xsl:value-of Es sind auch andere Rückgaben denkbar, wie zum Beispiel ein boolscher Wert, der über den Erfolg des Kommandos Auskunft gibt. 7.3 Das forward_xslt_stylesheet Nachdem ein Auftrag durchlaufen ist, ist es möglich mit einer weiteren XSLT-Transformation asynchron ein Ergebnis zu liefern beziehungsweise an einen anderen Emfänger weiterzuleiten. Transformiert wird in diesem Fall entweder ein <order> oder ein <task> Element, je nachdem, ob der Web Service ein add_order oder ein start_job ausgeführt hat. Das <order> Element enthält Informationen über den Auftrag inclusive der Auftragsparameter. Der Job JobSchedulerManagedExecutableJob setzt nach der Ausführung einen neuen Auftragsparameter std_out_output, der die Ausgaben des ausgeführten Kommandos (stdout) enthält. Diese Ausgaben soll das Stylesheet zu einer SOAP Antwort transformieren. <xsl:template match="order"> <service_request url="http://localhost:5555/webservice"> <content> <soapenv:envelope> <soapenv:body> <xsl:apply-templates "/> </soapenv:body> </content> </service_request> Es wird zunächst ein <service_request> Element erstellt. Dieses benötigt einen Parameter url für die Antwortadresse, da für die asynchrone Antwort eine neue Verbindung aufgebaut werden muss. In diesem Beispiel ist die Antwort URL fest im Stylesheet eingetragen. Diese ist nur dann sinnvoll, wenn die Antwort tatsächlich immer an dieselbe Adresse weitergeleitet werden soll. In der Praxis kommt es jedoch oft vor, dass die Antwortadresse bereits in der Anfrage an den Web Service enthalten ist. In diesem Fall müsste das request_xslt_stylesheet die Antwortadresse in einen Auftragsparameter schreiben, aus dem sie dann vom forward_xslt_stylesheet wieder ausgelesen werden kann. Das Template selektiert den Paramter mit dem Namen "std_out_output" und schreibt den Inhalt in ein neues Element der Antwort:

18 Bereitstellen einer Job-Kette als asynchronen Web Service 18 <xsl:template <sos:stdout> <xsl:value-of </sos:stdout> Dadurch kann der Inhalt der Standard-Ausgabe (stdout) von einer Anwendung weiterverarbeitet werden, die diese Antwort empfängt. Diese muss beachten, dass die Newlines im <sos:stdout> Element tatsächlich als Newlines und nicht als Whitespace zu interpretieren sind. Beispiel: Asynchrone Antwort des Web Service <?xml version="1.0"?> <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:body> <sos:stdout xmlns:sos="http://www.sos-berlin.com/scheduler">bin config jobs lib logs mail web </sos:stdout> </soapenv:body>

19 Konfiguration eines synchronen Web Service 19 8 Konfiguration eines synchronen Web Service Damit der Job Scheduler den im folgenden Kapitel vorgestellten Job für einen Web Service verwendet, muss dieser zunächst in der Konfigurationsdatei scheduler.xml in einer Job-Kette konfiguriert werden. Wenn noch nicht vorhanden, muss nach dem Element </jobs> ein neues Element <job_chains> eingefügt werden. Innerhalb von <job_chains> wird für jede Job-Kette ein <job_chain> Element erstellt. Für das im nächsten Kapitel vorgestellte Beispiel wird die Job-Kette wie folgt vorausgesetzt: <job_chain name="web_service_test"> <job_chain_node state="1" job="web_service_test_job" next_state="100" error_state="999" /> <job_chain_node state="100"/> <job_chain_node state="999"/> </job_chain> Job-Ketten bestehen oft aus mehreren Jobs, diese Beispiel verwendet eine Job-Kette mit nur einem Job web_service_test_job, der im <jobs> Abschnitt wie folgt konfiguriert wird: <job name = "web_service_test_job" order = "yes"> <script language = "java" java_class = "sos.scheduler.service.webservicetestjob"/> </job> Damit diese Job-Kette als synchroner Web Service verwendet werden kann, wird im <web_services> Element (siehe Konfiguration asynchroner Web Services) ein neuer Web Service angelegt: <web_service name="test" job_chain="web_service_test" url_path="/test"/> Nachdem die Datei scheduler.xml geändert wurde, muss der Job Scheduler neu gestartet werden.

20 Erstellen von Jobs für synchrone Web Services 20 9 Erstellen von Jobs für synchrone Web Services In diesem Kapitel wird gezeigt, wie neue Jobs implementiert werden können, die eine Web Service Anfrage auslesen und eine synchrone Antwort zurückschicken. Die Interpretation möglicher Protokolle (z.b. SOAP) ist Aufgabe des Jobs. Dieser erhält den Inhalt des Requests als String oder binär. Damit das Beispiel einfach bleibt, wird hier kein XML interpretiert, da dadurch der Code länger und komplizierter ausfallen würde. Die Verwendung von DOM ist nicht Gegenstand dieses Tutorials. Der folgende Job gibt daher nur den Inhalt des Requests im Protokoll aus und sendet einen String zurück, der seine Task ID enthält. Beispiel: WebServiceTestJob.java package sos.scheduler.service; import sos.spooler.job_impl; import sos.spooler.order; import sos.spooler.web_service_operation; import sos.spooler.web_service_request; import sos.spooler.web_service_response; public class WebServiceTestJob extends Job_impl { public boolean spooler_process() throws Exception { Order order = spooler_task.order(); Web_service_operation operation; try { operation = order.web_service_operation(); } catch (Exception e){ spooler_log.info("there is no Web Service operation attached to this order"); return true; } // read request Web_service_request request = operation.request(); spooler_log.info("content of Web Service Request:\n"+request.string_content()); // send reply Web_service_response response = operation.response(); } response.set_string_content("task ID: "+spooler_task.id()); response.send(); return true; } Zu Beginn der Job-Implementierung fällt auf, dass der Aufruf web_service_operation() in einem try-catch-block steht. Es kann sein, dass ein Job einen Auftrag zu verarbeiten hat, der in einem vorherigen Lauf des Job Schedulers angelegt aber noch nicht verarbeitet wurde. In diesem Fall würde der Job Scheduler beim Neustart den Auftrag aus der Datenbank laden, nur die HTTP Verbindung des Clients wäre inzwischen beendet. Dadurch gäbe es kein Web_service_operation Objekt mehr. Der Job sollte diesen Fehler abfangen und entscheiden, wie er den Auftrag behandelt. Aus dem Web_service_request Objekt wird der Inhalt der Anfrage gelesen und ins Protokoll geschrieben. Am Web_service_response Objekt wird die Antwort gesetzt und mit send() synchron an den Client zurückgegeben.

21 Erstellen von Jobs für synchrone Web Services 21 In der Praxis muss es nicht der gleiche Job sein, der das Web_service_request liest und die Web_service_response setzt. Es ist z.b. möglich eine Job-Kette zu erstellen, in der der erste Job das Web_service_request Objekt liest, auswertet und einige Parameter aus dem Request in die Payload des Auftrags schreibt. Die folgenden Jobs verarbeiten die Payload des Auftrags und nur der letzte Job schreibt in das Web_service_response Objekt und ruft die send() Methode auf. Im Samples Paket der Job Scheduler Distribution ist dieser Job auch in Javascript, VBScript und Perlscript Versionen im Verzeichnis samples/jobs enthalten unter unter den Dateinamen: web_service_test_job.js web_service_test_job.vbs web_service_test_job.pl In den Beispielkonfigurationsdateien des Samples Pakets werden dazu auch Jobketten und Web Services angelegt.

22 execute_file_request.xslt 22 Anhang A: execute_file_request.xslt <?xml version="1.0" encoding="iso "?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sos="http://www.sos-berlin.com/scheduler" exclude-result-prefixes="soapenv sos" version="1.0"> <xsl:output method="xml" indent="yes"/> <xsl:template match="/service_request"> <xsl:apply-templates select="content/soapenv:envelope/soapenv:body"/> <xsl:template match="soapenv:body"> <xsl:apply-templates select="*" mode="soapbody"/> <xsl:template match="*" mode="soapbody" priority="0.5"> <!-- SOAP-Fehlermeldung an Web Service generieren --> <service_response> <content> <soapenv:envelope> <soapenv:body> <soapenv:fault> <faultcode>soap-env:client</faultcode> <faultstring>unknown command: <xsl:value-of select="name(.)"/> </faultstring> </soapenv:fault> </soapenv:body> </content> </service_response> <xsl:template match="sos:executefile" mode="soapbody" priority="2"> <add_order job_chain="executable_files"> <xsl:attribute name="web_service"> <xsl:value-of </xsl:attribute> <params> <param name="command"> <xsl:attribute name="value"> <xsl:value-of select="sos:file"/> </xsl:attribute> </param> </params> </add_order> </xsl:stylesheet>

23 execute_file_response.xslt 23 Anhang B: execute_file_response.xslt <?xml version="1.0" encoding="iso "?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sos="http://www.sos-berlin.com/scheduler" exclude-result-prefixes="soapenv sos" version="1.0"> <xsl:output method="xml" indent="yes"/> <xsl:template match="/spooler/answer"> <service_response> <content> <soapenv:envelope> <soapenv:body> <xsl:apply-templates select="error ok"/> </soapenv:body> </content> </service_response> <xsl:template match="error"> <soapenv:fault> <faultcode>soap-env:client</faultcode> <faultstring><xsl:value-of </soapenv:fault> <xsl:template match="ok[order]" priority="2"> <sos:orderid><xsl:value-of </xsl:stylesheet>

24 execute_file_forward.xslt 24 Anhang C: execute_file_forward.xslt <?xml version="1.0" encoding="iso "?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/xsl/transform" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sos="http://www.sos-berlin.com/scheduler" exclude-result-prefixes="soapenv sos" version="1.0"> <xsl:output method="xml" indent="yes"/> <xsl:template match="order"> <service_request url="http://localhost:5555/replyurl"> <content> <soapenv:envelope> <soapenv:body> <xsl:apply-templates ]"/> </soapenv:body> </content> </service_request> <xsl:template <sos:stdout> <xsl:value-of </sos:stdout> </xsl:stylesheet>

Tutorial Job Implementierung

Tutorial Job Implementierung Software- und Organisations-Service GmbH JOB SCHEDULER Tutorial Job Implementierung Technische Dokumentation 29.November 2004 Software- und Organisations-Service GmbH Giesebrechtstr. 15 D-10629 Berlin

Mehr

Web-Anwendungsentwicklung mit dem Delivery Server

Web-Anwendungsentwicklung mit dem Delivery Server Web-Anwendungsentwicklung mit dem Delivery Server Java-Framework auf Basis der Open API Bernfried Howe, Webertise Consulting GmbH WEBertise Consulting Dipl. Informatiker (Wirtschaftsinformatik) 2001-2010

Mehr

JOB SCHEDULER. Managed User Jobs. Dokumentation Juli 2005. MySQL-Job-Automation

JOB SCHEDULER. Managed User Jobs. Dokumentation Juli 2005. MySQL-Job-Automation MySQL-Job-Automation Managed User Jobs JOB SCHEDULER Dokumentation Juli 2005 Software- und Organisations-Service GmbH Giesebrechtstr. 15 D-10629 Berlin Telefon (030) 86 47 90-0 Telefax (030) 861 33 35

Mehr

ESB. Open Source ESB: Mule Flightreservation. Res Gilgen Hochschule Luzern [Wählen Sie das Datum aus]

ESB. Open Source ESB: Mule Flightreservation. Res Gilgen Hochschule Luzern [Wählen Sie das Datum aus] ESB Open Source ESB: Mule Flightreservation Res Gilgen Hochschule Luzern [Wählen Sie das Datum aus] Inhalt 1. Open Source ESB: Mule... 2 1.1. Überblick... 2 1.1.1. Das Beispiel Zeigt:... 2 1.2. Installationsanleitung...

Mehr

Installationshandbuch für den sedex-client V4.0.4.

Installationshandbuch für den sedex-client V4.0.4. Eidgenössisches Finanzdepartement EFD Bundesamt für Informatik und Telekommunikation BIT Lösungszentrum E-Government Sedex Webservice-Proxy: Benutzerhandbuch zum Personenidentifikations-Service (eumzugch)

Mehr

Duale Zustellung. Standardprofile. Version 1.0.0, 14.08.2007. DI Arne Tauber arne.tauber@egiz.gv.at

Duale Zustellung. Standardprofile. Version 1.0.0, 14.08.2007. DI Arne Tauber arne.tauber@egiz.gv.at www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Duale Zustellung Version 1.0.0, 14.08.2007 DI Arne Tauber arne.tauber@egiz.gv.at

Mehr

Start des Programms mit zwei Parametern: 1. XML-Datei mit den zu verarbeitenden Eingabedaten, 2. XML-Datei mit der Programmkonfiguration

Start des Programms mit zwei Parametern: 1. XML-Datei mit den zu verarbeitenden Eingabedaten, 2. XML-Datei mit der Programmkonfiguration Whitepaper 09/2010 Seite 1 Aufgabenstellung Aus einer vorgegebenen XML-Datei sollen Daten in eine AS/400-Tabelle übertragen werden. Bei der Übertragung besteht die Möglichkeit Daten per Mapping zu prüfen,

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 25. 10. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4 UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 4 Leistungsverhalten el0100 copyright W. G. Spruth,

Mehr

Web Service Entwicklung mit Java. Sven Lindow

Web Service Entwicklung mit Java. Sven Lindow Web Service Entwicklung mit Java Sven Lindow 22.11.2006 Agenda Einleitung SOAP, REST, WSDL, UDDI Web Services mit Java JWSDP JAX-RPC, JAX-WS 2.0 AXIS, AXIS2 Web Services nutzen Google, Ebay Web Services

Mehr

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de Das Build Tool Ant Sebastian Mancke, mancke@mancke-software.de Grundlagen Motivation Bei der Übersetzung und Pflege von Software treten viele, gleich bleibende Arbeitsschritte auf. Übersetzen des Codes

Mehr

Spezifikationen und Voraussetzung

Spezifikationen und Voraussetzung Projekt IGH DataExpert Paynet Adapter Spezifikationen Voraussetzungen Datum : 21.07.08 Version : 1.0.0.2 21.07.2008 Seite 1 von 7 Inhaltsverzeichnis 1 Einleitung... 3 2 Architektur... 3 2.1 Grundsätze

Mehr

Übung 4: Schreiben eines Shell-Skripts

Übung 4: Schreiben eines Shell-Skripts Aufgabenteil 1 Ziel der Übung Übung 4: Schreiben eines Shell-Skripts Anhand eines einfachen Linux-Skripts sollen die Grundlagen der Shell-Programmierung vermittelt werden. Das für die Bash-Shell zu erstellende

Mehr

Die XML-Schnittstelle von FreelancerWelt.de Projektimport

Die XML-Schnittstelle von FreelancerWelt.de Projektimport Die XML-Schnittstelle von FreelancerWelt.de Projektimport Die Schnittstelle ermöglicht es neue IT Projekte auf FreelancerWelt.de automatisch einzustellen, bestehende zu aktualisieren oder zu löschen. Wenn

Mehr

Spezifikationen und Voraussetzung

Spezifikationen und Voraussetzung Projekt IGH DataExpert Yellowbill Adapter Spezifikationen Voraussetzungen Datum : 22.08.2013 Version : 1.0.0.2 22.08.2013 Seite 1 von 7 Inhaltsverzeichnis 1 Einleitung...3 2 Architektur...3 2.1 Grundsätze

Mehr

Web-Services Implementierung

Web-Services Implementierung Web-Services Implementierung Praktikum Informationsintegration 8.11.2005 Agenda Aktueller Stand / Abgabe Implementierung Wie geht das mit Java und Tomcat? Service Client 2 Abgabe Teil 1 Ein paar Zahlen

Mehr

ZEUS Energiebuchhaltung Salzburg Automatische Zählerstandanlieferung: E-Mail-Schnittstelle

ZEUS Energiebuchhaltung Salzburg Automatische Zählerstandanlieferung: E-Mail-Schnittstelle ZEUS Energiebuchhaltung Salzburg Automatische Zählerstandanlieferung: E-Mail-Schnittstelle Version: 1.0.0 Datum: 2013-11-20 Autor: Bernd Ennsfellner, Renate Pinggera gizmocraft, design and technology GmbH

Mehr

AJAX SSL- Wizard Referenz

AJAX SSL- Wizard Referenz AJAX SSL- Wizard Referenz Version 1.0.2+ - 04.04.2011 Präambel Die vorliegende Dokumentation beschreibt den AJAX basierten SSL- Wizard der CertCenter AG. Der SSL- Wizard kann mit wenigen Handgriffen nahtlos

Mehr

Software Engineering II

Software Engineering II Software Engineering II Codegenerierung für den SmartIO Editor mit der Modeling Workflow Engine Wintersemester 10/111 Fachgebiet Software Engineering Albert Zündorf / Wiederholung Bisher im Laufe des Semesters

Mehr

Dokumentation zum Projekt Mail-Adapter in SAP PI. 17.01.2011 Sinkwitz, Sven 519707 Theel, Thomas 519696

Dokumentation zum Projekt Mail-Adapter in SAP PI. 17.01.2011 Sinkwitz, Sven 519707 Theel, Thomas 519696 Dokumentation zum Projekt Mail-Adapter in SAP PI 17.01.2011 Sinkwitz, Sven 519707 Theel, Thomas 519696 Inhalt 1. Einleitung... 2 2. Vorgehen... 3 1. Datentyp für die Mail einrichten... 3 2. Message Typen

Mehr

Timer-Dienst (070212)

Timer-Dienst (070212) Timer-Dienst (070212) Timer-Dienst (070212)...1 Voraussetzungen...1 Installation...1 Dienst konfigurieren...4 Dienst für mehrere Instanzen und / oder mehrere Datenbanken konfigurieren...5 Eventlog-Einträge

Mehr

SINT Rest App Documentation

SINT Rest App Documentation SINT Rest App Documentation Release 1.0 Florian Sachs 08.04.2014 Inhaltsverzeichnis 1 REST Service 3 1.1 Application................................................ 3 1.2 Konfiguration...............................................

Mehr

Hylafax mit CAPI und Kernel 2.6 auf Debian Sarge

Hylafax mit CAPI und Kernel 2.6 auf Debian Sarge Hylafax mit CAPI und Kernel 2.6 auf Debian Lukas Mensinck First public release Version 1.0.0 Revision History Revision 1.0.0 2007.04.11 LukasMensinck Mensinck Consulting First public release of HowTo Type:

Mehr

Icinga Teil 2. Andreas Teuchert. 25. Juli 2014

Icinga Teil 2. Andreas Teuchert. 25. Juli 2014 Icinga Teil 2 Andreas Teuchert 25. Juli 2014 1 Nagios-Plugins Programme, die den Status von Diensten überprüfen können liegen in /usr/lib/nagios/plugins/ werden von Icinga aufgerufen, geben Status über

Mehr

Auszug aus Axis2 Schulung

Auszug aus Axis2 Schulung Auszug aus Axis2 Schulung Dieses Dokument ist ein Auszug aus unserem Skript zur Axis2- Schulung. Es dient lediglich als Beispiel für unsere Kursunterlagen. Thomas Bayer Hauptstraße 33 75050 Gemmingen Mehr

Mehr

Programmieren II. Timer. Vorlesung 11. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011. Timer. Sockets.

Programmieren II. Timer. Vorlesung 11. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011. Timer. Sockets. Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 / 26 Timer Sockets SMTP-Client 2 / 26 Timer Mit einem Timer können bestimmte Aktionen periodisch wiederkehrend durchgeführt

Mehr

DSLinux Skriptbasierte Inventarisierung für Linux

DSLinux Skriptbasierte Inventarisierung für Linux DSLinux Skriptbasierte Inventarisierung für Linux www.docusnap.com TITEL DSLinux AUTOR Docusnap Consulting DATUM 21.04.2015 Die Weitergabe, sowie Vervielfältigung dieser Unterlage, auch von Teilen, Verwertung

Mehr

Scripting Framework PowerShell Toolkit Quick-Install a Workplace for Packaging and Test

Scripting Framework PowerShell Toolkit Quick-Install a Workplace for Packaging and Test Scripting Framework PowerShell Toolkit Quick-Install a Workplace for Packaging and Test Windows Client Management AG Alte Haslenstrasse 5 CH-9053 Teufen wincm.ch 1 Quick Install - Scripting Framework Workplace...3

Mehr

Web 2.0 Software-Architekturen

Web 2.0 Software-Architekturen Web 2.0 Software-Architekturen Servlets als Controller einer MVC Web Architektur Prof. Dr. Nikolaus Wulff HTTP und HTML Das HyperText TransferProtokoll (HTTP) beschreibt eine einfache verbindungslose Kommunikation,

Mehr

Business Process Execution Language. Christian Vollmer Oliver Garbe

Business Process Execution Language. Christian Vollmer <christian.vollmer@udo.edu> Oliver Garbe <oliver.garbe@udo.edu> Business Process Execution Language Christian Vollmer Oliver Garbe Aufbau Was ist BPEL? Wofür ist BPEL gut? Wie funktioniert BPEL? Wie sieht BPEL aus?

Mehr

Theorie und Praxis einer JSON-RPC-basierten Web-API

Theorie und Praxis einer JSON-RPC-basierten Web-API Theorie und Praxis einer JSON-RPC-basierten Web-API Christian Krause Christian.Krause@raritan.com Raritan Deutschland GmbH Chemnitzer LinuxTage 2015 Gliederung 1 2 Remote Procedure Call Interface Definition

Mehr

Übertragung von Terminen und Baustellen

Übertragung von Terminen und Baustellen In dieser Dokumentation wird die Anwendung und die Konfiguration der Programme beschrieben, die für die Übertragung der Baustellen und Termine aus der KWP SQL-Datenbank an das virtic-system verwendet werden

Mehr

Erweitern Sie ihren Tomcat um das AXIS-Framework und machen Sie ihn damit bereit für den Einsatz von Web Services:

Erweitern Sie ihren Tomcat um das AXIS-Framework und machen Sie ihn damit bereit für den Einsatz von Web Services: 0BBA Karlsruhe, Vorlesung Programmieren, Web Services 1BAufgabe 1 Tomcat um das AXIS-Framework erweitern : Erweitern Sie ihren Tomcat um das AXIS-Framework und machen Sie ihn damit bereit für den Einsatz

Mehr

Datenbank-basierte Webserver

Datenbank-basierte Webserver Datenbank-basierte Webserver Datenbank-Funktion steht im Vordergrund Web-Schnittstelle für Eingabe, Wartung oder Ausgabe von Daten Datenbank läuft im Hintergrund und liefert Daten für bestimmte Seiten

Mehr

Ajax & GWT. Kurs: User Interfaces und ihre Evaluierung Dozent: Manfred Thaller WS 2012/2013 Referent: Rafael Kalina

Ajax & GWT. Kurs: User Interfaces und ihre Evaluierung Dozent: Manfred Thaller WS 2012/2013 Referent: Rafael Kalina Ajax & GWT Kurs: User Interfaces und ihre Evaluierung Dozent: Manfred Thaller WS 2012/2013 Referent: Rafael Kalina Ajax Technisches Verfahren, bei dem Browser aktualisierte Inhalte nicht mehr synchron

Mehr

OPGCOM BS2000/OSD. Windows PC. Kommunikation zwischen BS2000 Host und PC. FILE-Send. URL-Server. udp NAC. MAIL-Server. Mail-Client EVENT-List

OPGCOM BS2000/OSD. Windows PC. Kommunikation zwischen BS2000 Host und PC. FILE-Send. URL-Server. udp NAC. MAIL-Server. Mail-Client EVENT-List OPGCOM Kommunikation zwischen BS2000 Host und PC BS2000/OSD MAIL-R MAIL-S EVENT-Scan TRAP-Send URL-Server FILE-Send pop3 smtp udp TCP/IP TCP/IP MAIL-Server NAC Mail-Client EVENT-List Browser FServer Windows

Mehr

2. Interaktive Web Seiten. action in Formularen. Formular. Superglobale Variablen $ POST, $ GET und $ REQUEST. GET und POST

2. Interaktive Web Seiten. action in Formularen. Formular. Superglobale Variablen $ POST, $ GET und $ REQUEST. GET und POST 2. Interaktive Web Seiten GET und POST Die Übertragungsmethoden GET und POST sind im http Protokoll definiert: POST: gibt an, dass sich weitere Daten im Körper der übertragenen Nachricht befinden: z.b.

Mehr

AlwinPro Care Modul Schnittstelle TV-Steuerung

AlwinPro Care Modul Schnittstelle TV-Steuerung AlwinPro Care Modul Schnittstelle TV-Steuerung Beschreibung AlwinPro Care bietet die Möglichkeit TV für tageweise abzurechnen und stellt für die Freischaltung der Leistung einen Authentifizierungsserver

Mehr

Technische Beschreibung: EPOD Server

Technische Beschreibung: EPOD Server EPOD Encrypted Private Online Disc Technische Beschreibung: EPOD Server Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee JKU Linz Institut für

Mehr

Anleitung. Ein einfaches RMI-Beispiel. (ab Java 5.0) c Y. Pfeifer. (Juni 2014)

Anleitung. Ein einfaches RMI-Beispiel. (ab Java 5.0) c Y. Pfeifer. (Juni 2014) Anleitung Ein einfaches RMI-Beispiel (ab Java.0) c Y. Pfeifer (Juni 014) 1 Ein einfaches RMI-Beispiel Vorgehensweise: 1. Java Projekt anlegen. Zwei Packages server & client erstellen Auf der Server-Seite

Mehr

www.egiz.gv.at Version MOA-ID ... 1 1.1 1.2 Beschreibung... 1 3.1 3.2 3.3 3.4 3.5 Beispiel

www.egiz.gv.at Version MOA-ID ... 1 1.1 1.2 Beschreibung... 1 3.1 3.2 3.3 3.4 3.5 Beispiel www.egiz.gv.at E-Mail: post@egiz.gv.at t Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 80100 Graz / Austria Automatisiertes MOA-ID Login Beschreibung Version 1.0.0, 01.09.2008

Mehr

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

1) JAVA JRE auf der QNAP Box installieren

1) JAVA JRE auf der QNAP Box installieren Hallo, hier eine kleine unvollständige Anleitung wie das CCU-Historian auf der QNAP läuft. Wenn Du eine QNAP hast, solltest Du diesen Weg nur dann beschreiten, wenn Du einmal eine Kommandozeile gesehen

Mehr

telpho10 Update 2.1.6

telpho10 Update 2.1.6 telpho10 Update 2.1.6 Datum: 31.03.2011 NEUERUNGEN... 2 STANDORTANZEIGE GESPERRTER IP ADRESSEN... 2 NEUE SEITE SYSTEM STATUS IN DER ADMINISTRATOR WEB-GUI... 2 NEUE SEITE SNOM FIRMWARE IN DER ADMINISTRATOR

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 181.135 21. 01. 2011 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 120 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden

Mehr

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe... php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...7 3.Zugriff auf mysql Daten...11 Verteilte Systeme: php.sxw Prof.

Mehr

Praktikum Internetprotokolle - POP3

Praktikum Internetprotokolle - POP3 Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik/Rechnernetze 19. Mai 2008 1 Aufgabenstellung Praktikum

Mehr

Backup und Datensicherung von Plone-Systemen. Vortragender: Christian Becker

Backup und Datensicherung von Plone-Systemen. Vortragender: Christian Becker Backup und Datensicherung von Plone-Systemen Vortragender: Christian Becker Schwerpunkte Einleitung Arbeitsweise von repozo Konfigurationsvariante des collective.recipe.backup BLOBs Quellen Fragen Schwerpunkte

Mehr

Proseminar: Website-Management-Systeme

Proseminar: Website-Management-Systeme Proseminar: Website-Management-Systeme Thema: Web: Apache/Roxen von Oliver Roeschke email: o_roesch@informatik.uni-kl.de Gliederung: 1.) kurze Einleitung 2.) Begriffsklärung 3.) Was ist ein Web? 4.) das

Mehr

TimeMachine. Time CGI. Version 1.5. Stand 04.12.2013. Dokument: time.odt. Berger EDV Service Tulbeckstr. 33 80339 München

TimeMachine. Time CGI. Version 1.5. Stand 04.12.2013. Dokument: time.odt. Berger EDV Service Tulbeckstr. 33 80339 München Time CGI Version 1.5 Stand 04.12.2013 TimeMachine Dokument: time.odt Berger EDV Service Tulbeckstr. 33 80339 München Fon +49 89 13945642 Mail rb@bergertime.de Versionsangaben Autor Version Datum Kommentar

Mehr

RACFBroker/z. Entfernter Zugriff auf das RACF Sicherheitssystem auf IBM Mainframes über TCP/IP. RACFBroker/z ist ein Produkt der

RACFBroker/z. Entfernter Zugriff auf das RACF Sicherheitssystem auf IBM Mainframes über TCP/IP. RACFBroker/z ist ein Produkt der RACFBroker/z Entfernter Zugriff auf das RACF Sicherheitssystem auf IBM Mainframes über TCP/IP RACFBroker/z ist ein Produkt der XPS Software GmbH Eching RACFBroker/z XPS Software GmbH Untere Hauptstr. 2

Mehr

1. Wie können Forms und SOA integriert werden?

1. Wie können Forms und SOA integriert werden? Forms goes SOA Jüssen, Stefan Senior Consultant 03.02.2011 Jede Änderung im Geschäftsprozess muss umgehend in der unterstützenden Software abgebildet werden können. Professionelle Systementwicklung basiert

Mehr

Installation des edu- sharing Plug- Ins für Moodle

Installation des edu- sharing Plug- Ins für Moodle Installation des edu- sharing Plug- Ins für Moodle [edu-sharing Team] [Dieses Dokument beschreibt die Installation und Konfiguration des edu-sharing Plug-Ins für das LMS Moodle.] edu- sharing / metaventis

Mehr

Allgemeines. Architektur der Anwendung. Server starten. Anmeldung

Allgemeines. Architektur der Anwendung. Server starten. Anmeldung Allgemeines Architektur der Anwendung Grundsätzlich führen viele Wege nach Rom bzw. es gibt nicht den einen Weg, wie die gestellte Aufgabe mit Magnolia gelöst werden muss. Es wäre problemlos möglich, eine

Mehr

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo. www.mid.de

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo. www.mid.de Innovator 11 excellence DDL importieren Data-Definition-Language-Dateien in Datenbankschema importieren HowTo www.mid.de Zweck In Innovator Data excellence können Sie mit dem DDL-Import Ihr physisches

Mehr

dox42 Server V2.X Dokumentation DI Christian Bauer, zspm

dox42 Server V2.X Dokumentation DI Christian Bauer, zspm dox42 Server V2.X Dokumentation DI Christian Bauer, zspm Summary In die diesem Dokument sind die Serviceschnittstell sowie die Konfigurationseinstellung des dox42 Servers beschrieben. Inhalt Summary...

Mehr

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 2. 12. 2013 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht

Mehr

Installation und Benutzung AD.NAV.ZipTools

Installation und Benutzung AD.NAV.ZipTools Installation und Benutzung AD.NAV.ZipTools Version 1.0.0.0 ALTENBRAND Datentechnik GmbH Am Gelicht 5 35279 Neustadt (Hessen) Tel: 06692/202 290 Fax: 06692/204 741 email: support@altenbrand.de Die Komponente

Mehr

Multivariate Tests mit Google Analytics

Multivariate Tests mit Google Analytics Table of Contents 1. Einleitung 2. Ziele festlegen 3. Einrichtung eines Multivariate Tests in Google Analytics 4. Das JavaScript 5. Die Auswertung der Ergebnisse Multivariate Tests mit Google Analytics

Mehr

Diazo. XSLT basiertes Website Theming. Maik Derstappen Inqbus GmbH & Co. KG maik.derstappen@inqbus.de

Diazo. XSLT basiertes Website Theming. Maik Derstappen Inqbus GmbH & Co. KG maik.derstappen@inqbus.de Diazo XSLT basiertes Website Theming Maik Derstappen Inqbus GmbH & Co. KG maik.derstappen@inqbus.de Was wir haben Wie der Kunde will Diazo + plone.app.theming Die Hauptnavigationspunkte übernehmen

Mehr

PDF FormServer Quickstart

PDF FormServer Quickstart PDF FormServer Quickstart 1. Voraussetzungen Der PDF FormServer benötigt als Basis einen Computer mit den Betriebssystemen Windows 98SE, Windows NT, Windows 2000, Windows XP Pro, Windows 2000 Server oder

Mehr

SINT Rest App Documentation

SINT Rest App Documentation SINT Rest App Documentation Release 1.0 Florian Sachs September 04, 2015 Contents 1 Applikation 3 2 Rest Service 5 3 SOAP Service 7 4 Technologiestack 9 5 Deployment 11 6 Aufgabe 1: Google Webservice

Mehr

ÖSTERREICH RECHNET MIT UNS. Standard e-rechnungs-webservice (SERWS) - Ideen DI Philip Helger, BRZ 17.02.2015

ÖSTERREICH RECHNET MIT UNS. Standard e-rechnungs-webservice (SERWS) - Ideen DI Philip Helger, BRZ 17.02.2015 ÖSTERREICH RECHNET MIT UNS Standard e-rechnungs-webservice (SERWS) - Ideen DI Philip Helger, BRZ 17.02.2015 www.brz.gv.at BRZ GmbH 2015 AGENDA Ausgangsbasis Webservice bei E-RECHNUNG.GV.AT SERWS Ziele

Mehr

VMware vrealize Log Insight- Entwicklerhandbuch

VMware vrealize Log Insight- Entwicklerhandbuch VMware vrealize Log Insight- Entwicklerhandbuch vrealize Log Insight 2.5 Dieses Dokument unterstützt die aufgeführten Produktversionen sowie alle folgenden Versionen, bis das Dokument durch eine neue Auflage

Mehr

Dokumentation Mini-Telnet V 0.2.1 10.6.2012

Dokumentation Mini-Telnet V 0.2.1 10.6.2012 Dokumentation Mini-Telnet V 0.2.1 10.6.2012 Programm von Malte Klas und Fabian Reynolds Weitere wichtige Hinweise stehen in den Readmes in den jeweiligen Ordnern! Inhalt: 1. Konzept 1. Vorlagen 2. Problemstellung

Mehr

Software Engineering II

Software Engineering II Software Engineering II Wintersemester 12/13 Fachgebiet Software Engineering Installation der MWE Plugins Von der Juno Update Site installieren (falls noch nicht vorhanden): MWE SDK Xpand SDK 2 TFD Projekt

Mehr

IP routing und traceroute

IP routing und traceroute IP routing und traceroute Seminar Internet-Protokolle Dezember 2002 Falko Klaaßen fklaasse@techfak.uni-bielefeld.de 1 Übersicht zum Vortrag Was ist ein internet? Was sind Router? IP routing Subnet Routing

Mehr

OLXFileMailer Anleitung

OLXFileMailer Anleitung 1. Warum OLXFileMailer? OLXFileMailer dient der automatischen Übergabe von beliebigen Dateien im Filesystem an z.b. MS-Outlook oder auch direkt an Öffentliche Ordner des MS-ExchangeServers. Die Dateien

Mehr

Tipps & Tricks. Neues, Nützliches und Praktisches. Christian Dahmen con terra GmbH

Tipps & Tricks. Neues, Nützliches und Praktisches. Christian Dahmen con terra GmbH Tipps & Tricks Neues, Nützliches und Praktisches Christian Dahmen con terra GmbH 1 Qualitätssicherung von Geodaten Qualitätssicherung von Geodaten Mit FME lassen sich einfache und komplexe Prüfroutinen

Mehr

e-rechnung Mail Produktbeschreibung Version 3.0 OUTPUT-MANAGEMENT

e-rechnung Mail Produktbeschreibung Version 3.0 OUTPUT-MANAGEMENT e-rechnung Mail Produktbeschreibung Version 3.0 Inhaltsverzeichnis 1.1 SMTP Schnittstelle:... 4 1.2 File Schnittstelle (FTP):... 6 1.3 Preis... 8 1. e-rechnung Mail e-rechnung Mail bietet Unternehmen eine

Mehr

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

Mehr

Knottenwäldchen Software

Knottenwäldchen Software Knottenwäldchen Software Installationsanleitung für die netzbasierte Lösung Knottenwäldchen Software März.2011 Knottenwäldchen Software Seite 2 1 Inhalt 1 Inhalt... 2 2 Übersicht... 3 3 Installation...

Mehr

Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI

Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI Servlet II Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI 3-1 1. Grundlagen 2. Servlets 3. JSP 4 1.1. JAR Files 4 1.2. TCP/IP, Sockels 4 1.3.

Mehr

In diesem Dokument wird Tomcat als Beispiel Servletengine und Apache als Beispiel Webserver verwendet.

In diesem Dokument wird Tomcat als Beispiel Servletengine und Apache als Beispiel Webserver verwendet. JArt Administration Installation Voraussetzungen: 1. Java Rutime Environment Version 1.4.2 oder höher 2. Java Servletengine (Tomcat wird empfohlen) (anbindung der Servletengine an Apache oder IIS empfohlen)

Mehr

ANT. Kurzvortrag von Manuel Schulze. mschulze@inf.fu-berlin.de

ANT. Kurzvortrag von Manuel Schulze. mschulze@inf.fu-berlin.de ANT Kurzvortrag von Manuel Schulze mschulze@inf.fu-berlin.de ANT Überblick Teilprojekt der Apache Software Foundation [1] ANT ist Opensource Build-Tool ähnlich wie make (?) jedoch voll auf Java zugeschnitten

Mehr

Einbindung eines Buchungs- und Ticketingsystems in eine bestehende Anwendungslandschaft

Einbindung eines Buchungs- und Ticketingsystems in eine bestehende Anwendungslandschaft Einbindung eines Buchungs- und Ticketingsystems in eine bestehende Anwendungslandschaft Harald Lange sd&m Lübecker Str. 1 22087 Hamburg harald.lange@sdm.de Abstract: Mit der Einführung eines Buchungs-

Mehr

TimePunch. TimePunch Command. Benutzerhandbuch 14.08.2013. TimePunch KG, Wormser Str. 37, 68642 Bürstadt

TimePunch. TimePunch Command. Benutzerhandbuch 14.08.2013. TimePunch KG, Wormser Str. 37, 68642 Bürstadt TimePunch TimePunch Command Benutzerhandbuch 14.08.2013 TimePunch KG, Wormser Str. 37, 68642 Bürstadt Dokumenten Information: Dokumenten-Name Benutzerhandbuch, TimePunch Command Revisions-Nummer 37 Gespeichert

Mehr

Modul 123. E-Mail und FTP. Unit 6. E-Mail (pop / smtp), FTP (activ/passive Mode) FTP-Server mit Microsofts IIS

Modul 123. E-Mail und FTP. Unit 6. E-Mail (pop / smtp), FTP (activ/passive Mode) FTP-Server mit Microsofts IIS Modul 123 Unit 6 (V1.1) E-Mail und FTP Zielsetzung: E-Mail (pop / smtp), FTP (activ/passive Mode) FTP-Server mit Microsofts IIS Technische Berufschule Zürich IT Seite 1 Grundlagen : Das Store-and-Forward

Mehr

AJAX DRUPAL 7 AJAX FRAMEWORK. Was ist das Ajax Framework? Ein typischer Ablauf eines Ajax Requests Die Bestandteile des Ajax Frameworks.

AJAX DRUPAL 7 AJAX FRAMEWORK. Was ist das Ajax Framework? Ein typischer Ablauf eines Ajax Requests Die Bestandteile des Ajax Frameworks. DRUPAL 7 AJAX FRAMEWORK Was ist das Ajax Framework? Ein typischer Ablauf eines Ajax Requests Die Bestandteile des Ajax Frameworks AJAX Beispiele Fragen: Gibt es jemanden der noch gar keine Erfahrungen

Mehr

Elektronische Vollmachten - Demonstrator

Elektronische Vollmachten - Demonstrator www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Elektronische Vollmachten - Demonstrator Version 1.0.0, 09.01.2007 DI

Mehr

Fortgeschrittene Servlet- Techniken. Ralf Gitzel ralf_gitzel@hotmail.de

Fortgeschrittene Servlet- Techniken. Ralf Gitzel ralf_gitzel@hotmail.de Fortgeschrittene Servlet- Techniken Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Servlet Initialisierung Attribute und Gültigkeitsbereiche Sessions

Mehr

OPC-Server VM OPC. Anleitung. Installation, Konfiguration, Verwendung. Version 1.01

OPC-Server VM OPC. Anleitung. Installation, Konfiguration, Verwendung. Version 1.01 Installation, Konfiguration, Verwendung Version 1.01 Seite 2 von 20 OPC-Server VM OPC Revision Version Erstellt am Versionsnummer Bemerkung 1.00 26.07.2013 Erstellung 1.01 05.11.2013 2.14 - Reiter der

Mehr

Managed VPSv3 Was ist neu?

Managed VPSv3 Was ist neu? Managed VPSv3 Was ist neu? Copyright 2006 VERIO Europe Seite 1 1 EINFÜHRUNG 3 1.1 Inhalt 3 2 WAS IST NEU? 4 2.1 Speicherplatz 4 2.2 Betriebssystem 4 2.3 Dateisystem 4 2.4 Wichtige Services 5 2.5 Programme

Mehr

SOA, Webservices und SOAP für Schnelleinsteiger

SOA, Webservices und SOAP für Schnelleinsteiger SOA, Webservices und SOAP für Schnelleinsteiger (C)opyright 2005 by Jochen Vajda Inhalt Einführung I. Was ist SOA? II. Webservices, SOAP und WSDL SOAP mit PHP5 I. Benötigte Komponenten II. Client ohne

Mehr

VIP-LMS Anbindung. Uni Stgt. 27. Juni 2014. Version: 2.6

VIP-LMS Anbindung. Uni Stgt. 27. Juni 2014. Version: 2.6 Heiko Bernlöhr FreeIT.de VIP-LMS Anbindung Per Pascal Grube Uni Stgt. Thomas Richter Uni Stgt. 27. Juni 2014 David Boehringer Uni Stgt. Stephan Rudlof Uni Stgt. Version: 2.6 Zusammenfassung Maximale Integration

Mehr

Installationsanleitung Tivoli Storage Manager für Linux

Installationsanleitung Tivoli Storage Manager für Linux 11. März 2009, Version 1.0 Installationsanleitung für Linux Verwaltungsdirektion Informatikdienste Installationsanleitung für Linux Inhaltsverzeichnis...1 Installation... 1 Voraussetzungen...1 Ablauf der

Mehr

Handbuch. XMLCreater. Version 2.0

Handbuch. XMLCreater. Version 2.0 Handbuch XMLCreater Version 2.0 Autor: S.Merta Datamatec GmbH (c) Copyright 2012 Datamatec GmbH Seite 1 von 14 27.01.2012 Inhaltsverzeichnis Produktbeschreibung... 3 Installationen und Einstellungen...

Mehr

Howto. Konfiguration eines Adobe Document Services

Howto. Konfiguration eines Adobe Document Services Howto Konfiguration eines Adobe Document Services (ADS) Inhaltsverzeichnis: 1 SYSTEMUMGEBUNG... 3 2 TECHNISCHE VERBINDUNGEN ZWISCHEN DEN SYSTEMEN... 3 2.1 PDF BASIERENDE FORMULARE IN DER ABAP UMGEBUNG...

Mehr

Ablösung von Control-M durch JobScheduler

Ablösung von Control-M durch JobScheduler Ablösung von Control-M durch JobScheduler Integration des JobSchedulers in eine TWS Landschaft SOS Software GmbH Berlin, Germany Inhalt Rahmenbedingungen I & II Control-M Landschaft (früher) JobScheduler

Mehr

BillSAFE Payment Layer Integration Guide

BillSAFE Payment Layer Integration Guide BillSAFE Payment Layer Integration Guide letzte Aktualisierung: 10.06.2013 Inhaltsverzeichnis 1 Vorwort...2 1.1 Inhalt...2 1.2 Zielgruppe...2 1.3 Voraussetzungen...2 1.4 Feedback...2 1.5 Versionshistorie...3

Mehr

White Paper - Integration von PRO Tips Recovery Tools in RiZone

White Paper - Integration von PRO Tips Recovery Tools in RiZone White Paper - Integration von PRO Tips Recovery Tools in RiZone Jörg Tonn (Hönigsberg & Düvel Datentechnik) Thorsten Weller Sarah Dietrich Copyright 2010 All rights reserved. Rittal GmbH & Co. KG Auf dem

Mehr

Automatische Installation (wenn das SSO-Applet nicht vorhanden ist)! Abbildung 1:Auswahldialog für Installationslaufwerk

Automatische Installation (wenn das SSO-Applet nicht vorhanden ist)! Abbildung 1:Auswahldialog für Installationslaufwerk SS EE IITTEE:: I 11/ /55 Bei jedem Aufruf des SSO-Applet wird kontrolliert, ob das Konfigurationsverzeichnis ( ssoapplet ) existiert. Dabei werden alle Laufwerke, auf die der Benutzer Lese- und Schreibrechte

Mehr

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht.

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht. Technisches Design Inhalt Design Übersicht Menü und DispatcherServlet DWR Servlet Viewer Servlets Controllers Managers Sicherheit Anwendung Architektur Component Diagram Deployment Diagram Komponente Sequence

Mehr

LAMP HowTo (Linux Apache MySQL PHP) Zugriff per SSH auf den Server. Servername: gyko.no-ip.info (Lokal: 192.168.2.10)

LAMP HowTo (Linux Apache MySQL PHP) Zugriff per SSH auf den Server. Servername: gyko.no-ip.info (Lokal: 192.168.2.10) LAMP HowTo (Linux Apache MySQL PHP) Zugriff per SSH auf den Server Servername: gyko.no-ip.info (Lokal: 192.168.2.10) Stand: 04-2014 Warum Zugriff auf einen Server per SSH? Zunächst einmal möchte ich, dass

Mehr

Man liest sich: POP3/IMAP

Man liest sich: POP3/IMAP Man liest sich: POP3/IMAP Gliederung 1. Einführung 1.1 Allgemeiner Nachrichtenfluss beim Versenden von E-Mails 1.2 Client und Server 1.2.1 Client 1.2.2 Server 2. POP3 2.1 Definition 2.2 Geschichte und

Mehr

Rechnernetze. 6. Übung

Rechnernetze. 6. Übung Hochschule für Technik und Wirtschaft Studiengang Kommunikationsinformatik Prof. Dr. Ing. Damian Weber Rechnernetze 6. Übung Aufgabe 1 (TCP Client) Der ECHO Service eines Hosts wird für die Protokolle

Mehr

Zentrales Konfigurationsmanagement mit Puppet

Zentrales Konfigurationsmanagement mit Puppet Zentrales Konfigurationsmanagement mit Puppet SLAC 2011 Martin Alfke Einführung Wie managed man 600 Linux-Server mit 20 unterschiedlichen Applikationen? Einführung Wie

Mehr

BillSAFE Modul für xt:commerce 4 ab Version 4.0.13

BillSAFE Modul für xt:commerce 4 ab Version 4.0.13 BillSAFE Modul für xt:commerce 4 ab Version 4.0.13 Herzlich willkommen, Sie haben sich für BillSAFE, den beliebtesten Rechnungskauf-Anbieter bei Deutschlands Online-Shoppern entschieden. (TNS Emnid Studie

Mehr