Proseminar XML. Cocoon, eine Einführung. Wintersemester 2000/01. Sebastian Wassen
|
|
- Hilko Baum
- vor 8 Jahren
- Abrufe
Transkript
1 Proseminar XML Wintersemester 2000/01 Cocoon, eine Einführung Sebastian Wassen
2 Inhalt: 1. Was ist Cocoon [3] 2. Installation von Cocoon [3] Installation von Jakarta-Tomcat [3] Installation von Cocoon 1.8 [3] 3. Erste Schritte mit Cocoon [4] Beispiel 1: XML und XSL [4] Beispiel 1: SQL [5] Beispiel 1: XSP [8] 4. Der Weg eines Xml-Documentes [11] 5. Die Interfaces [11] 6. Die Processor [12] SQL-Processor [12] LDAP-Processor [13] DCP-Processor [14] XSP- Processor [14]
3 1. Was ist Cocoon Cocoon ist eine XML-Publishing Framework. Es ermöglicht Daten in XML bereitzustellen. Diese können während einer Anfrage statisch oder dynamisch generiert werden. Die erzeugten XML-Daten werden von verschiedenen Prozessoren aufbereitet und schließlich entsprechend der Anfrage in unterschiedliche Ausgabeformate formatiert (HTML+CSS, XSL(FO), SVG, WML, VoxML VRML, etc.). Cocoon verwendet dazu insbesondere XML, XML Namespaces, XSLT und Xpath als Schlüsseltechnologien. Cocoon ist 100% pure Java und ist somit auf einer Vielzahl von Plattformen verfügbar. Cocoon wird hauptsächlich über die Servlet-Api von Sun angesprochen es ist jedoch leicht möglich eigen Connectoren zu implementieren. Bei der Entwicklung von Cocoon wurde versucht Methoden bereitzustellen die Autoren ermöglicht den Inhalt eines XML-Dokumentes von seiner Logic und von der gewünschten Darstellung zu trennen. So können diese mitunter sehr verschiedenen Aufgaben unabhängig von einander gelöst werden, was Kosten und Entwicklungszeit spart. Die dynamische Generierung von Daten wird über eine eigene XML-Sprache XSP (extensible Server Pages) realisiert. Außerdem stellt Cocoon bereits einige Möglichkeiten zur Verfügung um SQL-Anfragen zu stellen oder über XML-Forms auf XML-Dateien zuzugreifen. Cocoon bietet darüber hinaus eine sehr klare interne Struktur mit vielen Interfaces die es leicht machen eigene Wünsche und Vorstellungen bezüglich Logik und dynamischer Generierung von Daten schnell zu realisieren. 2. Installation von Cocoon (Minimal-) Installation von Jakarta-Tomcat (unter Windows, JDK1.3): jakarta-tomcat.tar.gz in das gewünschte Installationsverzeichnis (z.b.: C:\tomcat\) entpacken. Tomcat läßt sich mit Hilfe der Batch-Dateien startup.bat und shutdown.bat im Verzeichnis C:\tomcat\bin\ starten und stoppen. Eventuell muß man im Eigenschafts-Dialog für die Batch-Dateien die Größe der Umgebungsspeichers verändern, damit Variablen gesetzt werden können. Hat man Tomcat erfolgreich gestartet kann man mit Hilfe eines Web-Browsers die Tomcat-Startseite aufrufen: (Minimal-) Installation von Cocoon 1.8 (unter Windows, JDK1.3, Tomcat) cocoon-1.8.zip in das gewünschte Installationsverzeichnis (z.b.: C:\cocoon\) alle Dateien aus dem C:\cocoon\lib\ nach C:\tomcat\lib\ kopieren die Datei C:\cocoon\bin\cocoon.jar nach C:\tomcat\lib\ kopieren öffne die Datei C:\tomcat\conf\server.xml und füge das Element: <Context path="/cocoon" docbase="webapps/cocoon" debug="0" reloadable="true"> </Context> ein. erstelle die Verzeichnisse C:\tomcat\webapps\cocoon und C:\tomcat\webapps\cocoon\WEB-INF kopiere C:\cocoon\src\WEB-INF\web.xml nach C:\tomcat\webapps\cocoon\WEB-INF kopiere C:\cocoon\conf\cocoon.properties nach C:\tomcat\webapps\cocoon\WEB-INF öffne C:\tomcat\webapps\cocoon\WEB-INF\web.xml und ändere den Value des Init-Parameters properties nach WEB-INF/cocoon.properties kopiere C:\cocoon\samples nach C:\tomcat\webapps\cocoon lösche C:\tomcat\lib\jaxp.jar und C:\tomcat\lib\parser.jar oder sorge dafür das C:\tomcat\lib\xerxes_1_2.jar am Anfang des classpath steht nach einem Neustart von Tomcat kann man sich nun unter die Beispielseiten von Cocoon anschauen Zu Installation unter anderen System gibt es für eine ganze Reihe von Anleitungen in der Dokumentation. Die sind mehr oder weniger gut sind. Ein bißchen Spaß am Basteln sollte man aber schon mitbringen.
4 3. Erste Schritte mit Cocoon Beispiel 1: XML und XSL Ist Cocoon soweit installiert kann man sofort anfangen. Am besten man legt sich erst einmal ein Verzeichnis an in dem man seine Beispiele speichert: C:\tomcat\webapps\cocoon\beispiele\ Mit einem einfachen Beispiel das nur XSL benutzt fangen wir an: C:\tomcat\webapps\cocoon\beispiele\beispiel1.xml <?xml version="1.0"?> <!-- das StyleSheet das verwendetet werden soll --> <?xml-stylesheet href="beispiel1.xsl" type="text/xsl"?> <!-- der Processor der verwendet werden soll --> <?cocoon-process type="xslt"?> <!-- ein paar Daten in einer XML-Struktur --> <seite> <titel>erste Schritte mit Cocoon</titel> <abschnitt name="diese Seite wurde mit Hilfe des XSL-Processors von Cocoon transformiert." /> <abschnitt name="kontoauszug ;-) (wurde mit einem extenen StyleSheet treansformiert)" > <kontoauszug> <transaktion> <betrag>-250,00</betrag> <verwendungszweck>miete Studentenwohnheim</verwendungszweck> </transaktion> <transaktion> <betrag>-65,00</betrag> <verwendungszweck>telefonrechnung</verwendungszweck> </transaktion> <transaktion> <betrag>+400,00</betrag> <verwendungszweck>gehalt</verwendungszweck> </transaktion> </kontoauszug> </abschnitt> </seite> C:\tomcat\webapps\cocoon\beispiele\beispiel1.xsl <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <!-- lädt ein externes StyleSheet --> <xsl:import href="kontoauszug.xsl"/> <xsl:template match="seite"> <!-- fügt eine processing-instruction ein damit Cocoon das Dokument anschließend nach text/html formatiert --> <xsl:processing-instruction name="cocoon-format"> type="text/html" </xsl:processing-instruction> <html> <head> <title> <xsl:value-of select="titel"/> </title> </head> <body bgcolor="#ffffff"> </body> </html>
5 <xsl:template match="titel"> <h1 align="center"> </h1> <xsl:template match="abschnitt"> <p align="center"> <i> <xsl:value-of </i> </xsl:stylesheet> C:\tomcat\webapps\cocoon\beispiele\kontoauszug.xsl <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="kontoauszug"> <p align="left"> <big>kontoauszug:</big> <xsl:template match="transaktion"> <p align="left"> Transaktion: </xsl:stylesheet> Ausgabe nach Transformation mit dem StyleSheet beispiel1.xsl Man kann also durch einfaches Anlegen der entsprechenden XML- und XSL-Datei Inhalt und Darstellung getrennt beschreiben und publizieren. Beispiel 2: SQL Das zweite Beispiel zeigt die Möglichkeit mit Hilfe des SQL-Prozessors von Cocoon auf Datenbanken zuzugreifen und deren Inhalt als XML-Daten zu betrachten und weiterzuverarbeiten. C:\tomcat\webapps\cocoon\beispiele\beispiel2.xml <?xml version="1.0"?>
6 <?xml-stylesheet href="beispiel2.xsl" type="text/xsl"?> <?cocoon-process type="xslt"?> <?cocoon-process type="sql"?> <beispiel2> <!-- definiert eine Datenbankverbindung, die Datenbank sollte existieren ;-) --> <connectiondefs> <connection name="testconnection"> <driver>org.gjt.mm.mysql.driver</driver> <dburl>jdbc:mysql://mysql.test.de/testdatabase</dburl> <username>testuser</username> <password>testpassword</password> </connection> </connectiondefs> <!-- definiert Regeln für das Verhalten des Processors bei einer Suche --> <querydefs name="test" doc-element="preisliste" row-element="sorte" connection="testconnection" /> <!-- die normale Beschreibung der Daten --> <seite> <titel>erste Schritte mit Cocoon</titel> <abschnitt name="diese Seite wurde mit dem XSL-Processor nach HTML transformiert" / > <abschnitt name="preisliste wurde mit dem SQL-Procesor aus einer Datenbank geladen." > <!-- das nächste tag wird durch das Ergebnis der Suche ersetzt --> <query defs="test"> select ware,preis from preisliste where sorte="obst" order by ware </query> </abschnitt> </seite> </beispiel2> Man beachte das dieses Beispiel natürlich eine Datenbank braucht. In diesem Fall die durch testconnection definierte. Es wird außerdem erwartet das in der Datenbank ein Tabelle preisliste vorhanden ist in der Werte (sorte, ware, preis) abgespeichert sind. z.b ( Obst, Birnen, 5,99 ) Auch dieses Beispiel benötigt eine Transformation mit XSL um die Daten in HTML Form zu bringen: C:\tomcat\webapps\cocoon\beispiele\beispiel2.xsl <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="seite"> <xsl:processing-instruction name="cocoon-format"> type="text/html" </xsl:processing-instruction> <html> <head> <title> <xsl:value-of select="titel"/> </title> </head> <body bgcolor="#ffffff"> </body> </html>
7 <xsl:template match="titel"> <h1 align="center"> </h1> <xsl:template match="abschnitt"> <p align="center"> <i> <xsl:value-of </i> <xsl:template match="preisliste"> <p align="center"> <big>preisliste:</big> <table border="1" align="center" cellpadding="2"> <tbody> <tr> <td bgcolor="#cccccc">ware:</td> <td bgcolor="#cccccc">preis</td> </tr> </tbody> </table> <xsl:template match="sorte"> <tr> </tr> <xsl:template match="ware"> <td> </td> <xsl:template match="preis"> <td> </td> </xsl:stylesheet> Hat man alle Dateien und eine entsprechende Tabelle in einer Datenbank erstellt kann es losgehen:
8 Wieder wurden die Daten und die Darstellung getrennt beschrieben und die Daten dabei aus einer Datenbank geholt. Beispiel 3: XSP Das dritte Beispiel soll die Fähigkeit von Cocoon zur dynamischer Generierung von XML-Daten am Beispiel von XSP anschneiden. Dazu wieder eine kleine XML Datei. C:\tomcat\webapps\cocoon\beispiele\beispiel3.xml <?xml version="1.0"?> <?cocoon-process type="xsp"?> <?cocoon-process type="xslt"?> <?xml-stylesheet href="beispiel3.xsl" type="text/xsl"?> <xsp:page language="java" xmlns:xsp=" <xsp:logic> static private int counter = 0; private synchronized int count() { return counter++; } private String normalize(string string) { if (string == null) return ""; else return string; } </xsp:logic> <seite> <titel>erste Schritte mit Cocoon</titel> <abschnitt name="diese Seite wurde mit Hilfe des XSL-Processors von Cocoon transformiert." /> <abschnitt name="der folgende Inhalt wurde zum Teil dynamisch mit XSP generiert." > <item> Diese Seite ist bereits <xsp:expr>count()</xsp:expr> mal aufgerufen worden. </item> <elementlist> <element name="request method"> <xsp:expr>normalize(request.getmethod())</xsp:expr> <element name="request URI"> <xsp:expr>normalize(request.getrequesturi())</xsp:expr> <element name="request protocol"> <xsp:expr>normalize(request.getprotocol())</xsp:expr> <element name="servlet path"> <xsp:expr>normalize(request.getservletpath())</xsp:expr> <element name="path info"> <xsp:expr>normalize(request.getpathinfo())</xsp:expr> <element name="path translated"> <xsp:expr>normalize(request.getpathtranslated())</xsp:expr> <element name="query string"> <xsp:expr>normalize(request.getquerystring())</xsp:expr> <element name="content length"> <xsp:expr>request.getcontentlength()</xsp:expr>
9 <element name="content type"> <xsp:expr>normalize(request.getcontenttype())</xsp:expr> <element name="server name"> <xsp:expr>normalize(request.getservername())</xsp:expr> <element name="server port"> <xsp:expr>request.getserverport()</xsp:expr> <element name="remote user"> <xsp:expr>normalize(request.getremoteuser())</xsp:expr> <element name="remote address"> <xsp:expr>normalize(request.getremoteaddr())</xsp:expr> <element name="remote host"> <xsp:expr>normalize(request.getremotehost())</xsp:expr> <element name="authorization scheme"> <xsp:expr>normalize(request.getauthtype())</xsp:expr> </elementlist> </abschnitt> </seite> </xsp:page> und die entsprechende XSL-Datei für die HTML-Ausgabe: C:\tomcat\webapps\cocoon\beispiele\beispiel3.xsl <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="seite"> <xsl:processing-instruction name="cocoon-format"> type="text/html" </xsl:processing-instruction> <html> <head> <title> <xsl:value-of select="titel"/> </title> </head> <body bgcolor="#ffffff"> </body> </html> <xsl:template match="titel"> <h1 align="center"> </h1> <xsl:template match="abschnitt"> <p align="center"> <i> <xsl:value-of </i> <xsl:template match="item"> <p align="left">
10 <xsl:template match="elementlist"> <table border="1" cellpadding="2"> <tbody> </tbody> </table> <xsl:template match="element"> <tr> <td> <xsl:value-of </td> <td> </td> </tr> </xsl:stylesheet> Ausgabe unter
11 4. Der Weg eines Xml-Documentes In der Regel wird Cocoon über eine Implementierung der Sun-Servlet-Api angesprochen. Kernstück ist dabei die CocoonEngine org.apache.cocoon.engine. Diese Engine wird häufig (,und so haben auch wir das bei unseren Beispielen gemacht,) über ein spezielles Servlet angesprochen, welches die Methode handle(httpservletrequest request, HTTPServletResponse response) mit seinen eigenen Eingabedaten aufruft. Die Engine kapselt dabei den Arbeitsweise der anderen Elemente von Cocoon vor der Außenwelt. Innerhalb der CocoonEngine durchläuft der Request das sogenannte Reaktormodel Die Engine wählt einen Producer entsprechenden eines Attributes des Requests. Der Producer hat die Aufgabe ein XML-Document in DOM-Struktur zu erzeugen. Zum Beispiel liest er Dateien vom Dateisystem, wie in den Beispielen. Aber auch andere Quellen sind denkbar. Die Engine überprüft dann ob in dem Dokument eine processing-instruction cocoon-process vorhanden ist und ruft entsprechend des type Attributes einen Processor auf der das XML-Dokument weiter verarbeitet. Dies geschieht so lange bis keine processinginstruction cocoon-process mehr im Dokument vorhanden sind. Dann wird nach einer processing-instruction cocoon-format gesucht und das Dokument und das Response Objekt an den spezifizierten Formatter übergeben. Der übersetzt das Dokument in die gewünschte Sprache und füllt damit die Response. 5. Die Interfaces Cocoon bietet für die drei Kernelement von Cocoon, Producer, Processor und Formater, einfache und kleine Interfaces. So kann man eigene für spezielle Aufgaben angepaßte Teilstücke schreiben, sollte das notwendig werden. (Zwar lassen sich in XSP fast alle denkbaren Logikbausteine ausdrücken, leider aber ist XSP nicht sehr schnell, so das eine direkte Implementation wünschenswert/notwendig sein kann.) Die Ausschnitte aus den Interfaces soll die Übergabe der Objekte innerhalb von Cocoon und die obige Ablaufbeschreibungen verdeutlichen. org.apache.cocoon.producer: public org.w3c.dom.document getdocument(httpservletrequest request) org.apache.cocoon.processor: public org.w3c.dom.document process(org.w3c.dom.document document, java.util.dictionary parameters) (die der Engine übergebenen request und response Objekte sind im Dictionary parameters referenziert) org.apache.cocoon.formater: public void format(org.w3c.dom.document document, java.io.writer writer, java.util.dictionary parameters) public java.lang.string getencoding() public java.lang.string getmimetype() (die der Engine übergebenen request und response Objekte sind im Dictionary parameters referenziert)
12 6. Die Processor SQL-Processor <?cocoon-process type="sql"?> Der SQL-Processor erlaubt es, wie bereits im Beispiel 2 gesehen, Daten aus Tabellen einer Datenbank dynamisch in ein XML-Dokument einzubinden. Dazu benötigt der SQL-Processor zuerst eine Beschreibung wie er die gewünschte Datenbank erreichen kann. Dazu ist die connectiondefs Tag-Gruppe zuständig. <connectiondefs> <connection name="foo_connection"> <driver>org.gjt.mm.mysql.driver</driver> <dburl>jdbc:mysql://mysql.example.com/foo_database</dburl> <username>foo_user</username> <password>foo_password</password> </connection>...andere connections... </connectiondefs> Jede Verbindung zu einer Datenbank muß einen eindeutigen Namen haben. Des weiteren werden unbedingt ein Treiber und die Url unter der die Datenbank zu erreichen ist benötigt. Username und Password nur dann, wenn spezielle Rechte beim Zugriff auf eine Tabelle notwendig werden. Die querydefs erlauben es allgemeine Definitionen für SQL-Anfragen festzulegen: <querydefs name="standard" doc-element="options" row-element="option" connection="foo"/> <query defs="standard"/> Auf diese Definitionen kann man dann bei Anfragen zurückgreifen und spart sich das tippen. Die definierbaren Attribute entsprechen denen bei der Anfrage selbst. Die Anfrage an die Datenbank selbst steht im query tag: <query connection="foo_connection"> select name,number,message from foo_table where id={@id} order by name </query> Der SQL-Processor generiert aus der Antwort eine XML-Element das ROWSET: <ROWSET> <ROW ID="0"> <NAME>Donald Ball</NAME> <NUMBER>23</NUMBER> <MESSAGE> The Illuminati do not exist. This message paid for by the Illuminati.</MESSAGE> </ROW>... other rows... </ROWSET> Das Verhalten des Processors kann über die Attribute der query bzw. der querydefs beeinflußt werden: doc-element: bezeichnet den Tagnamen des Doc-Element der Antwort (default: ROWSET) row-element: bezeichnet den Tagname eine Zeile der Antwort (default: ROW) tag-case: legt fest ob die Spaltennamen groß oder klein geschrieben werden (preserve, upper, lower) null-indicator: legt fest ob ein Attribut NULL= YES eingefügt wird soll wenn ein Spaltenelement leer war id-attribute: legt den Namen des ID-Attributes für eine Zeile fest max-rows-attribute: wie viele Zeilen sollen zurück gegeben werden skip-rows-attribute: wie viele Zeilen sollen übersprungen werden count-attribute: welches Attribut des Doc-Element soll die Anzahl der zurückgegebenen Zeilen enthalten query-attribute: welches Attribut des Doc-Element soll SQLQuery enthalten
13 error-element: wie soll der ErrorTag heißen error-message-attribute: wie heißt das error-message-attribute error-message-element: wie heißt das error-message-element error-stacktrace-attribute: wie heißt das error-stacktrace-attribute error-stacktrace-element: wie heißt das error-stacktrace-element error-message-text: wie ist die Default-Fehlermeldung LDAP-Processor <?cocoon-process type="ldap"?> Der LDAP-Processor erlaubt es Fragen an einen LDAP-Dienst zu stellen und die Fragen im XML-Dokument durch die Antwort zu ersetzen. Die Arbeitsweise ist in etwa analog zu der des SQL-Processors. Wieder muß zunächst eine Definition des Verbindung zu dem LDAP-Server erfolgen, die ldapdefs: <ldap-defs> <ldap-server name=foo_server"> <initializer>com.sun.jndi.ldap.ldapctxfactory</initializer> <ldap-serverurl>ldap://ldap.weber.edu</ldap-serverurl> </ldap-server> </ldap-defs> Auf LDAP-Dienste greift man in Java über einen Context zu. Es ist also notwendig eine entsprechende ContextFactory zu spezifizieren. Auch für LDAP-Anfragen kann man querydefs festlegen: <querydefs name="standard" doc-element="options" row-element="option" server="foo_server"/> <ldap-query defs="standard"/> Die ldap-query: <ldap-query server="foo_server"> sn=*green* </ldap-query> und das Ergebnis einer solchen Anfrage: <ldapsearch> <searchresult ID="CN=DGREEN,OU=TBE,OU=AST,OU=ACAD,O=WSU"> <telephonenumber> </telephonenumber> <facsimiletelephonenumber> </facsimiletelephonenumber> <title>professor/telecommunications AND BUSINESS EDUCATION</title> <givenname>diana</givenname> <sn>green</sn> <l>b2 218</l> <ou>telecom & BUSINESS ED </ou> <initials>j</initials> <cn>dgreen</cn> <objectclass>newpilotperson</objectclass> <objectclass>organizationalperson</objectclass> <objectclass>person</objectclass> <objectclass>top</objectclass> </searchresult> </ldapsearch> Die möglichen Anfrage-Parameter sind: doc-element row-element id-attribute variable-left-delimiter variable-right-delimiter und die selben Error Parameter wie beim SQL- Processor
14 DCP Processor Der DCP-Processor stellt den ersten Versuch des Cocoon-Teams da die Programmlogik mit in das XML- Dokument einzufügen. Das Ziel war: multilanguage Support, automatischem Nachladen und einfache Wiederverwendbarkeit von Programmcode. Bis jetzt sind Java und Javascript implementiert und mehr wird es wahrscheinlich auch nicht werden. Nach der Entwicklung von XSP wird DCP nur noch zum Testen von Bruchstücken von XSP verwendet und wird außer Bug Fixing auch nicht mehr weiter entwickelt. DCP wird komplett über processing-instructions realisiert, es wird also kein spezieller Eintrag am Anfang des Dokumentes benötigt. Ein kleines Beispiel: <?xml version=1.0?> <?xml-stylesheet href= sample.xsl type= text/xsl?> <page> <!-- Scriptdateiname ist relative zum Dokumentpfad --> <?dcp-object name= util language= javascript code= test.js?> <title>eine dynamisch erzeugte Javascript Cocoon Seite</title> <p> Hi, Ich bin eine Javascript Seite die am <?dcp-content method= util.getsystemdate format= dd.mm.yyyy?> dynamisch von <em>cocoon</em> erzeugt wurde. <p> Ich wurde bereits <?dcp-content method= util.getcount?> mal aufgerufen. <p><?dcp-content method= util.getparameters?> </page> XSP Processor: (extensible Server Pages) <?cocoon-process type="xsp"?> XSP ist die mächtigste Lösung zur Contentgenrierung von Cocoon. Mit XSP lassen sich theoretisch fast alle Programmiersprachen nahtlos in ein XML-Dokument einbetten. Implementiert ist XSP im XSP-Processor jedoch zuerst nur für Java und Javascript. XSP bietet verschieden Möglichkeiten Progammlogik im XML- Dokument aufzurufen. Entweder direkt: <p> Good <xsp:logic> String timeofday=(new SimpleDateFormat("aa")).format(new Date()); if (timeofday.equals("am")){ <xsp:content>morning</xsp:content> } else { <xsp:content>afternoon</xsp:content> } </xsp:logic>! oder mit TagLibs: <p>good <util:time-of-day/>! Die eigentliche Syntax und Funktionsweise wird im Vortrag/Ausarbeitung XSP detailliert behandelt und so wird hier nur auf eine paar TagLibs eingegangen. Dies sind Programmbibliotheken für XML. Wird ein tag der zum Namespace einer solchen Bibliothek gehört gefunden, so wird er mit Hilfe von XSL durch XSP-Code ersetzt. Das veränderte Dokument wird dann mit dem XSP-Processor weiter verarbeitet.
15 SQL-TagLib Mit Hilfe der SQL-TagLib kann man genauso wie mit dem SQL-Processor Anfragen an Datenbanktabellen stellen. Zurerst jedoch muß der Namespace im XML-Dokument bekannt gemacht werden. <xsp:page language="java" xmlns:sql=" xmlns:xsp=" </xsp:page> dann kann man die tags aus dem sql namespace verwenden: <sql:execute-query> <sql:driver>com.informix.jdbc.ifxdriver</sql:driver> <sql:dburl> jdbc:informix-sqli://localhost:1526/database:informixserver=server </sql:dburl> <sql:username>dbuser</sql:username> <sql:password>dbpass</sql:password> <sql:skip-rows>0</sql:skip-rows> <sql:max-rows>50</sql:max-rows> <sql:null-indicator>y</sql:null-indicator> <sql:count-attribute>bob</sql:count-attribute> <sql:doc-element>rowset</sql:doc-element> <sql:row-element>row</sql:row-element> <sql:tag-case>preserve</sql:tag-case> <sql:id-attribute>id</sql:id-attribute> <sql:query> SELECT last_name, first_name, initials FROM EMPLOYEE</sql:query> </sql:execute-query> Auf den ersten Blick kann man viele Dinge wiedererkennen, die auch für den SQL-Processoer notwendig waren. Darüber hinaus kann man jedoch auch mit einem Connection Pool arbeiten: <sql:execute-query> <sql:use-connection>helpdesk</sql:use-connection>... </sql:execute-query> Die Definition eines Connection Pools erfolgt in der Datei cocoon.properties: # ORACLE processor.xsp.pool.database.helpdesk.driver=oracle.jdbc.driver.oracledriver processor.xsp.pool.database.helpdesk.url=jdbc:oracle:thin:@localhost:1521:dldf processor.xsp.pool.database.helpdesk.username=dnuser processor.xsp.pool.database.helpdesk.password=dbpass # Die maximale Anzahl der offenen Connections im Pool processor.xsp.pool.database.helpdesk.maxconnections=3 Ein weiterer Vorteil der SQL-TagLib ist: Vom jdbc-treiber zurückgegebene Daten kann man formatieren, bevor sie in das XML-Dokument eingefügt werden: <sql:column-format> <sql:name>my_date</sql:name> <sql:class> <!--muß java.text.format extenden--> java.text.simpledateformat </sql:class> <sql:parameter>mm/dd/yyyy</sql:parameter> </sql:column-format>
16 FP TagLib Die FP TagLib ermöglicht den Umgang mit XML-Forms. So kann man XML-Dokumente bearbeiten ohne das sie am eigentlichen Request/Response Vorgang beteiligt sind. Wieder muß zuerst der namespace der Bibliothek bekannt gemacht werden. <xsp:page language="java" xmlns:fp=" xmlns:xsp=" >... </xsp:page> Und dann kann man die Tags verwenden: <fp:resource id= some_id > <fp:resource-file>dateiname</fp:resource-file> <fp:resource-node>ein XPath</fp:resource-node> <fp:default-mode>replace, insert-before, inser-after</fp:default-mode> </fp:resource> <fp:read from = fp:resource select= Xpath(kann auf mehrere Nodes zeigen) as = string(liest alle TextNodes), node(liest alle Nodes) /> <fp:write to = fp:resource select= Xpath(sollte nur auf eine Node zeigen) as = string(überschreibt TextNodes), node(überschreibt Nodes) > zu schreibender Inhalt </fp:write> <!--Child-Elemente werden nur bei einem Post-Request verarbeitet--> <fp:if-post>...</fp:if-post> <!--Child-Elemente werden nur bei einem Get-Request verarbeitet--> <fp:if-get>...</fp:if-get> <!-- User wird zu URL umgeleitet wenn alle anderen FP Befehle fehlerlos abgearbeitet sind und eine Post-Request vorliegt?-) --> <fp:redirect>url</fp:redirect>
Installationsanleitung dateiagent Pro
Installationsanleitung dateiagent Pro Sehr geehrter Kunde, mit dieser Anleitung möchten wir Ihnen die Installation des dateiagent Pro so einfach wie möglich gestalten. Es ist jedoch eine Softwareinstallation
MehrOP-LOG www.op-log.de
Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server
MehrXSL Templates. Mit Templates arbeiten. XSL Templates
XSL Templates Mit Templates arbeiten Innerhalb von XSLT werden Templates verwendet. Ein Template ist eine Vorlage für die Transformation bestimmter Knoten. Diese Knoten können Elemente, Attribute oder
Mehrmysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank
mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man
MehrDieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.
Übersicht Struts Forms Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Allgemeines Autor: Sascha Wolski http://www.laliluna.de/tutorials.html
MehrJava: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
MehrPHPNuke Quick & Dirty
PHPNuke Quick & Dirty Dieses Tutorial richtet sich an all die, die zum erstenmal an PHPNuke System aufsetzen und wirklich keine Ahnung haben wie es geht. Hier wird sehr flott, ohne grosse Umschweife dargestellt
MehrWie richten Sie Ihr Web Paket bei Netpage24 ein
Wie richten Sie Ihr Web Paket bei Netpage24 ein Eine kostenlose ebook Anleitung von Netpage24 - Webseite Information 1 E-Mail Bestätigung... 3 2 Ticketsystem... 3 3 FTP Konto anlegen... 4 4 Datenbank anlegen...
MehrStep by Step Webserver unter Windows Server 2003. von Christian Bartl
Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird
MehrProblem crazytrickler unter Windows 8:
Problem crazytrickler unter Windows 8: Für die Kommunikation mit dem PC ist im crazytrickler der Chip PL2303HXA/XA zuständig. Er wird unter Windows 8 nicht mehr vom Hersteller Prolific unterstützt. Geräte
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
MehrInstallation von horizont 4 bei Verwendung mehrerer Datenbanken
horizont 4 Installation von horizont 4 bei Verwendung mehrerer Datenbanken Erstellt von der buchner documentation gmbh 1 Inhaltsverzeichnis Inhalt...3 Einleitung...3 Vorgehensweise der Installation bei
MehrBinäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen
Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders
MehrObjektorientierte Programmierung für Anfänger am Beispiel PHP
Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten
MehrProjekte Packen, Kopieren und Versenden
Projekte Packen, Kopieren und Versenden In diesem Hotline Tipp wird erklärt, wie Sie Projekte oder Positionen Packen, Verschieben oder als Anhang einer E-Mail Versenden. Ausgeführt werden diese Befehle
MehrErstellen eines HTML-Templates mit externer CSS-Datei
Erstellen eines HTML-Templates mit externer CSS-Datei Eigenschaften der Lösung Menü mit 2 Ebenen ohne Bilder, Menü besteht aus Text (Links) Durch CSS kann das Menü aber auch die Seite angepasst werden
MehrDatenbank-Verschlüsselung mit DbDefence und Webanwendungen.
Datenbank-Verschlüsselung mit DbDefence und Webanwendungen. In diesem Artikel werden wir Ihnen zeigen, wie Sie eine Datenbank verschlüsseln können, um den Zugriff einzuschränken, aber trotzdem noch eine
MehrAnleitung über den Umgang mit Schildern
Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder
MehrEine Einführung in die Installation und Nutzung von cygwin
Eine Einführung in die Installation und Nutzung von cygwin 1 1. Woher bekomme ich cygwin? Cygwin ist im Internet auf http://www.cygwin.com/ zu finden. Dort lädt man sich die setup.exe in ein beliebiges
MehrÜbung: Verwendung von Java-Threads
Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum
Mehrphp 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.
MehrUniversal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.
ewon - Technical Note Nr. 003 Version 1.2 Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. Übersicht 1. Thema 2. Benötigte Komponenten 3. Downloaden der Seiten und aufspielen auf
MehrEr musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt
Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen
MehrAufgaben zu XPath und XQuery
Aufgaben zu XPath und XQuery Dr. Arno Schmidhauser Letzte Revision: März 2005 Email: arno.schmidhauser@sws.bfh.ch Webseite: http://www.sws.bfh.ch/db Inhalt 1 XPath... 2 2 XQuery... 2 3 XPath/SQL Umsetzung...
MehrPlanung für Organisation und Technik
Salztorgasse 6, A - 1010 Wien, Austria q Planung für Organisation und Technik MOA-VV Installation Bearbeiter: Version: Dokument: Scheuchl Andreas 19.11.10 MOA-VV Installation.doc MOA-VV Inhaltsverzeichnis
MehrFacebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten
Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten Seit Anfang Juni 2012 hat Facebook die Static FBML Reiter deaktiviert, so wird es relativ schwierig für Firmenseiten eigene Impressumsreiter
MehrAdvoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank
Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank Die Entscheidung Advoware über VPN direkt auf dem lokalen PC / Netzwerk mit Zugriff auf die Datenbank des zentralen Servers am anderen
MehrEs wird das Struts <html:option> Element erläutert und anhand von kleinen Beispielen der Umgang veranschaulicht.
Struts Code Peaces Element Es wird das Struts Element erläutert und anhand von kleinen Beispielen der Umgang veranschaulicht. Allgemeines Autor: Sascha Wolski Sebastian Hennebrüder
MehrMit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.
Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen
MehrMeine erste Homepage - Beispiele
Meine erste - Beispiele 1. Beispiel meine Willkommen auf meiner Befehle nicht über Hier ist ein Senior, der noch fit für's Internet ist. Probieren wir
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
MehrFrames oder Rahmen im Browserfenster
In dieser Ausbildungseinheit zeigen wir Ihnen, wie Frames oder auch Rahmen im Browserfenster erstellt werden. Dabei möchten wir anmerken, dass zu Frames bereits sehr viel Gegensätzliches geschrieben wurde.
MehrHandbuch Fischertechnik-Einzelteiltabelle V3.7.3
Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3
MehrVerschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.
HACK #39 Hack Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.»verschlüsseln Sie Ihren Temp-Ordner«[Hack #33] hat Ihnen gezeigt, wie Sie Ihre Dateien mithilfe
Mehr4D Server v12 64-bit Version BETA VERSION
4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und
MehrLeitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)
Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Peter Koos 03. Dezember 2015 0 Inhaltsverzeichnis 1 Voraussetzung... 3 2 Hintergrundinformationen... 3 2.1 Installationsarten...
MehrWOT Skinsetter. Nun, erstens, was brauchen Sie für dieses Tool zu arbeiten:
WOT Skinsetter WOT Skinsetter steht für World of Tanks skinsetter (WOTS von nun an). Mit diesen Tool können Sie Skins importieren und ändern, wann immer Sie möchten auf einfache Weise. Als World of Tanks
MehrUrlaubsregel in David
Urlaubsregel in David Inhaltsverzeichnis KlickDown Beitrag von Tobit...3 Präambel...3 Benachrichtigung externer Absender...3 Erstellen oder Anpassen des Anworttextes...3 Erstellen oder Anpassen der Auto-Reply-Regel...5
MehrOrdner Berechtigung vergeben Zugriffsrechte unter Windows einrichten
Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Was sind Berechtigungen? Unter Berechtigungen werden ganz allgemein die Zugriffsrechte auf Dateien und Verzeichnisse (Ordner) verstanden.
MehrEinfügen von Bildern innerhalb eines Beitrages
Version 1.2 Einfügen von Bildern innerhalb eines Beitrages Um eigene Bilder ins Forum einzufügen, gibt es zwei Möglichkeiten. 1.) Ein Bild vom eigenem PC wird auf den Webspace von Baue-die-Bismarck.de
MehrKapitel 3 Frames Seite 1
Kapitel 3 Frames Seite 1 3 Frames 3.1 Allgemeines Mit Frames teilt man eine HTML-Seite in mehrere Bereiche ein. Eine Seite, die mit Frames aufgeteilt ist, besteht aus mehreren Einzelseiten, die sich den
MehrTechNote. Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung
Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung Diese Anleitung hilft Ihnen, das nachfolgend geschilderte Problem zu beheben.
MehrErstellen einer digitalen Signatur für Adobe-Formulare
Erstellen einer digitalen Signatur für Adobe-Formulare (Hubert Straub 24.07.13) Die beiden Probleme beim Versenden digitaler Dokumente sind einmal die Prüfung der Authentizität des Absenders (was meist
MehrEinrichtung des Cisco VPN Clients (IPSEC) in Windows7
Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über
Mehr! " # $ " % & Nicki Wruck worldwidewruck 08.02.2006
!"# $ " %& Nicki Wruck worldwidewruck 08.02.2006 Wer kennt die Problematik nicht? Die.pst Datei von Outlook wird unübersichtlich groß, das Starten und Beenden dauert immer länger. Hat man dann noch die.pst
Mehr2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)
1. Einführung: Über den ODBC-Zugriff können Sie bestimmte Daten aus Ihren orgamax-mandanten in anderen Anwendungen (beispielsweise Microsoft Excel oder Microsoft Access) einlesen. Dies bietet sich beispielsweise
MehrOutlook Erstellen einer E-Mail aus einer HTML - Vorlage INHALT
Outlook Erstellen einer E-Mail aus einer HTML - Vorlage INHALT LADEN DER VORLAGE 2 Öffnen Sie Outlook 2 Klicken Sie auf EXTRAS >> OPTIONEN 2 Im Optionenfeld von Outlook folgend Sie den Schritten 2 Fenster
MehrInhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER
AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...
MehrDurch Doppelklick auf die Zeile der entsprechenden Schnittstelle gelangt man in die Detaileingabe der Schnittstelle.
Technote M-System Versender-Schnittstellen Frank Renner, 2013-07 Mit M-System ist es möglich die jeweilige Software der Versender DPD, DHL und UPS so einzubinden, dass direkt beim Verbuchen von Lieferscheinen
MehrHinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt
Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt 1. Vorbetrachtungen... 2 2. Die Installation... 2 3. Einstellungen - Erstellung der Verknüpfung... 3 3.1 Benutzung des Konfigurationsprogramms
MehrEine Anwendung mit InstantRails 1.7
Eine Anwung mit InstantRails 1.7 Beschrieben wird das Anlegen einer einfachen Rails-Anwung, die ohne Datenbank auskommt. Schwerpunktmäßig wird auf den Zusammenhang von Controllern, Views und der zugehörigen
Mehr3. Stored Procedures und PL/SQL
3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln
Mehr.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage
.htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess
MehrHow to install freesshd
Enthaltene Funktionen - Installation - Benutzer anlegen - Verbindung testen How to install freesshd 1. Installation von freesshd - Falls noch nicht vorhanden, können Sie das Freeware Programm unter folgendem
Mehretutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche
etutor Benutzerhandbuch Benutzerhandbuch XQuery Georg Nitsche Version 1.0 Stand März 2006 Versionsverlauf: Version Autor Datum Änderungen 1.0 gn 06.03.2006 Fertigstellung der ersten Version Inhaltsverzeichnis:
MehrWas ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,
Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit, Wie kann ein PDF File angezeigt werden? kann mit Acrobat-Viewern angezeigt werden auf jeder Plattform!! (Unix,
MehrTutorial. In diesem Tutorial möchte ich die Möglichkeiten einer mehrspracheigen Web-Site erläutern.
Tutorial In diesem Tutorial möchte ich die Möglichkeiten einer mehrspracheigen Web-Site erläutern. Zu Beginn müssen wir uns über die gewünschten Sprachen Gedanken machen. Zum einem, da eine professionelle
MehrHier mal einige Tipps zum Einbau vom "Anfy" Applets. Hier die Seite von "Anfy" und zum Download des Programms: http://www.anfyteam.
Hier mal einige Tipps zum Einbau vom "Anfy" Applets. Hier die Seite von "Anfy" und zum Download des Programms: http://www.anfyteam.com/... ich habe "Version 2.1" und zeige hier Bilder und Beschreibungen
MehrTutorial - www.root13.de
Tutorial - www.root13.de Netzwerk unter Linux einrichten (SuSE 7.0 oder höher) Inhaltsverzeichnis: - Netzwerk einrichten - Apache einrichten - einfaches FTP einrichten - GRUB einrichten Seite 1 Netzwerk
MehrInstallation Hardlockserver-Dongle
Installation Hardlockserver-Dongle Mit Hilfe des Hardlockservers können Lizenzen im Netzwerk zur Verfügung gestellt und überwacht werden. Der Hardlockserver-Dongle wird auf einem Server im Netzwerk installiert.
Mehr1 Einleitung. Lernziele. Symbolleiste für den Schnellzugriff anpassen. Notizenseiten drucken. eine Präsentation abwärtskompatibel speichern
1 Einleitung Lernziele Symbolleiste für den Schnellzugriff anpassen Notizenseiten drucken eine Präsentation abwärtskompatibel speichern eine Präsentation auf CD oder USB-Stick speichern Lerndauer 4 Minuten
MehrStundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten
Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt. Eine Weitergabe
MehrBeschreibung E-Mail Regeln z.b. Abwesenheitsmeldung und Weiterleitung
Outlook Weiterleitungen & Abwesenheitsmeldungen Seite 1 von 6 Beschreibung E-Mail Regeln z.b. Abwesenheitsmeldung und Weiterleitung Erstellt: Quelle: 3.12.09/MM \\rsiag-s3aad\install\vnc\email Weiterleitung
MehrUm ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.
Briefe Schreiben - Arbeiten mit Word-Steuerformaten Ab der Version 5.1 stellt die BüroWARE über die Word-Steuerformate eine einfache Methode dar, Briefe sowie Serienbriefe mit Hilfe der Korrespondenzverwaltung
MehrUpdatehinweise für die Version forma 5.5.5
Updatehinweise für die Version forma 5.5.5 Seit der Version forma 5.5.0 aus 2012 gibt es nur noch eine Office-Version und keine StandAlone-Version mehr. Wenn Sie noch mit der alten Version forma 5.0.x
MehrICS-Addin. Benutzerhandbuch. Version: 1.0
ICS-Addin Benutzerhandbuch Version: 1.0 SecureGUARD GmbH, 2011 Inhalt: 1. Was ist ICS?... 3 2. ICS-Addin im Dashboard... 3 3. ICS einrichten... 4 4. ICS deaktivieren... 5 5. Adapter-Details am Server speichern...
MehrVersion 0.3. Installation von MinGW und Eclipse CDT
Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.
MehrAdminer: Installationsanleitung
Adminer: Installationsanleitung phpmyadmin ist bei uns mit dem Kundenmenüpasswort geschützt. Wer einer dritten Person Zugriff auf die Datenbankverwaltung, aber nicht auf das Kundenmenü geben möchte, kann
MehrArtikel Schnittstelle über CSV
Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte
MehrHilfe Bearbeitung von Rahmenleistungsverzeichnissen
Hilfe Bearbeitung von Rahmenleistungsverzeichnissen Allgemeine Hinweise Inhaltsverzeichnis 1 Allgemeine Hinweise... 3 1.1 Grundlagen...3 1.2 Erstellen und Bearbeiten eines Rahmen-Leistungsverzeichnisses...
MehrHerstellen von Symbolen mit Corel Draw ab Version 9
Herstellen von Symbolen mit Corel Draw ab Version 9 Einleitung : Icon Design-Überblick: 1) Gestalten in Corel Draw 10.0 3) Vorlage für Photopaint für Import von Corel 4) Einfügen in die PSD-Datei und Bearbeiten
MehrUm über FTP Dateien auf Ihren Public Space Server - Zugang laden zu können benötigen Sie folgende Angaben:
FTP-Upload auf den Public Space Server mit FileZilla 1. Was wird benötigt? Um über FTP Dateien auf Ihren Public Space Server - Zugang laden zu können benötigen Sie folgende Angaben: Benutzername: Ihr Webuser
MehrInstallation SQL- Server 2012 Single Node
Installation SQL- Server 2012 Single Node Dies ist eine Installationsanleitung für den neuen SQL Server 2012. Es beschreibt eine Single Node Installation auf einem virtuellen Windows Server 2008 R2 mit
Mehr<script type="text/javascript"> <! <%= page(page.searchsuggestionsscript) %> // > </script>
1. Intelligente AutoComplete Funktion für die Volltextsuche 1.1. JQuery einbinden Falls Sie in Ihrem Shop bereits JQuery verwenden, so überprüfen Sie bitte, ob Sie alle notwendigen Dateien eingebunden
MehrAdobe Photoshop. Lightroom 5 für Einsteiger Bilder verwalten und entwickeln. Sam Jost
Adobe Photoshop Lightroom 5 für Einsteiger Bilder verwalten und entwickeln Sam Jost Kapitel 2 Der erste Start 2.1 Mitmachen beim Lesen....................... 22 2.2 Für Apple-Anwender.........................
MehrDesign anpassen eine kurze Einführung
Design anpassen eine kurze Einführung Das gesamte Layout von Papoo basiert auf modernen CSS Layouts die vollständig ohne Layout Tabellen funktionieren. Um schnell vorhandene Designs anpassen zu können
MehrErstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])
3.7 Erstellen einer Collage Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) Dann Größe des Dokuments festlegen beispielsweise A4 (weitere
MehrInstallationsanleitung. Update ATOSS SES 2.40 für Windows ATOSS Server
Installationsanleitung Update ATOSS SES 2.40 für Windows ATOSS Server Einleitung 1 Beenden der ATOSS-Prozesse am Server 1 Die Installation des Updates am Servers 2 Die Installation des Updates an allen
MehrDie Installation des GeoShop Redirector für IIS (Internet Information Server, Version 4.0, 5.0 und 6.0) umfasst folgende Teilschritte:
Installation des GeoShop Redirector für IIS (Stand 24.8.2007) ============================================================= 0 Überblick ----------- Die Installation des GeoShop Redirector für IIS (Internet
MehrEine eigene Seite auf Facebook-Fanseiten einbinden und mit einem Tab verbinden.
Eine eigene Seite auf Facebook-Fanseiten einbinden und mit einem Tab verbinden. Nach den Änderungen die Facebook vorgenommen hat ist es einfacher und auch schwerer geworden eigene Seiten einzubinden und
MehrVirtueller Seminarordner Anleitung für die Dozentinnen und Dozenten
Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,
MehrDas sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert
Beamen in EEP Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert Zuerst musst du dir 2 Programme besorgen und zwar: Albert, das
MehrErstellung von Reports mit Anwender-Dokumentation und System-Dokumentation in der ArtemiS SUITE (ab Version 5.0)
Erstellung von und System-Dokumentation in der ArtemiS SUITE (ab Version 5.0) In der ArtemiS SUITE steht eine neue, sehr flexible Reporting-Funktion zur Verfügung, die mit der Version 5.0 noch einmal verbessert
MehrACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.
Track in Route umwandeln ACHTUNG: Ein Track kann nur dann in eine Route umgewandelt werden, wenn der Track auf Wegen gefahren wurde. Ein Querfeldein-Track kann nicht in eine Route umgewandelt werden, da
MehrEinrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me
Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me Bevor Sie die Platte zum ersten Mal benutzen können, muss sie noch partitioniert und formatiert werden! Vorher zeigt sich die Festplatte
MehrWordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten
Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten Version 1.0 Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten In unserer Anleitung zeigen wir Dir, wie Du Blogbeiträge
MehrGITS Steckbriefe 1.9 - Tutorial
Allgemeines Die Steckbriefkomponente basiert auf der CONTACTS XTD Komponente von Kurt Banfi, welche erheblich modifiziert bzw. angepasst wurde. Zuerst war nur eine kleine Änderung der Komponente für ein
MehrInstallationsanleitung für pcvisit Server (pcvisit 12.0)
Installationsanleitung für pcvisit Server (pcvisit 12.0) Seite 1 version: 12.08.2013 Inhalt 1. Einleitung...... 3 2. Download und Installation.... 3 4. Starten der Verbindungssoftware. 6 4.1 Starten der
MehrOnline Newsletter III
Online Newsletter III Hallo zusammen! Aus aktuellem Anlass wurde ein neuer Newsletter fällig. Die wichtigste Neuerung betrifft unseren Webshop mit dem Namen ehbshop! Am Montag 17.10.11 wurde die Testphase
MehrErstellen eines Screenshot
Blatt 1 von 5 Erstellen eines Screenshot Einige Support-Probleme lassen sich besser verdeutlichen, wenn der Supportmitarbeiter die aktuelle Bildschirmansicht des Benutzers sieht. Hierzu bietet Windows
MehrTitel. App-V 5 Single Server Anleitung zur Installation
Autor: Thomas Hanrath Microsoft Certified Trainer Titel App-V 5 Single Server Anleitung zur Installation Eine beispielhafte Installationsanleitung zur Verwendung im Testlab Quelle: System Center Blog von
MehrKurzanleitung zu XML2DB
Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines
MehrStay here to be there!
Datenbankintegration mit pcvisit ProfiSupport Mit pcvisit ProfiSupport ist es Ihnen möglich, Ihre Datenbanksysteme (z.b. das Ticketsystem mit Supportfällen oder Ihre CRM-Datenbank) mit den Daten aus der
MehrArbeiten mit UMLed und Delphi
Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf
MehrLokale Installation von DotNetNuke 4 ohne IIS
Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation
MehrSuche schlecht beschriftete Bilder mit Eigenen Abfragen
Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere
MehrTask: Nmap Skripte ausführen
Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses
MehrEs sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.
Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt
Mehr