Data Sources für ADF-Applikationen im JDeveloper
Entwickelt man im Oracle JDeveloper ADF-Applikationen mit Hilfe der ADF Business Components benötigt man eine Verbindung zur Datenbank. Diese Verbindung kann im Application Module (Configuration) entweder als JDBC URL oder als JDBC Data Source eingetragen werden.
Seit dem Release 11.1.2 des Oracle JDeveloper wird als Default eine JDBC Data Source mit dem Namen java:comp/env/jdbc/<conn>DS verwendet.
Wenn bei den Application Properties die Option Auto Generate and Synchronize weblogic-jdbc.xml with Descriptors during Deployment auf ON gesetzt ist, wird die Data Source als applikations-spezifische Data Source im WebLogic Server deployed und dort auch in der Console sichtbar.

Der große Nachteil besteht darin, dass bei jedem Test/Deployment der Applikation der Connection Pool für diese Data Source gestoppt und gestartet wird, was jedesmal mehr als eine Minute dauert.
Dieses Problem ist in der Note 1332498.1 – Undeploying ADF Application Takes > 60 Sec. When Using Application Level JDBC Datasource beschrieben.
Jetzt gibt es zwei Möglichkeiten, um damit umzugehen:
- Die Data Source als globale Data Source über die Console im WebLogic Server einrichten und bei den Application Properties die Option Auto Generate and Synchronize weblogic-jdbc.xml with Descriptors during Deployment auf OFF setzen.
- Die JDBC URL beim Application Module als alternative Methode für die Verbindung zur Datenbank verwenden.
Hier noch ein Auszug aus dem Oracle® Fusion Middleware Fusion Developer’s Guide for Oracle Application Development Framework:
„When you deploy to Oracle WebLogic Server, by default, the application-specific data source is not packaged with the application and Oracle WebLogic Server is configured to find a global data source named jdbc/applicationConnectNameDS using the look upjava:comp/env/jdbc/applicationConnectNameDS. Therefore, by following this naming convention, you enable a single data source connection name to work correctly when running the application in JDeveloper using an application-specific data source or when running on the deployed standalone server using a global data source.“
<JM>
Oracle Database Mobile Server 11g
Ohne größere Ankündigung ist eine aktuelle Version des mobilen Servers von Oracle unter der Bezeichnung Oracle Database Mobile Server freigeben worden. An der Bezeichnung kann man zwei Dinge erkennen:
- der Mobile Server gehört bei Oracle zu den Datenbank-Produkten, obwohl es sich im Kern um eine Java EE-Anwendung handelt
- die Bezeichnung „Lite“ ist aus dem Namen verschwunden. Die Rolle der lokalen Datenbank auf den mobilen Endgeräten wird von SQLite oder der Berkeley DB übernommen.
Der mobile Server wird als Java EE-Applikation auf einem WebLogic oder GlassFish Application Server deployed. Er unterstützt die Administration mobiler Endgeräte (Android) sowie die Synchronisation von Datenbanken auf mobilen Geräten (Berkeley DB, SQLite) mit einer zentralen Unternehmens-Datenbank.
Die Installations-Routine (OUI) ist sehr datenbank-lastig. Viele der geforderten Einstellungen sind für die Installation des Mobile Servers nicht notwendig. Folgende Umgebungs-Variablen sollten jedoch unbedingt gesetzt werden (am Beispiel des Oracle WLS 10.3.x):
| Umgebungs-Variable | Wert |
| ORACLE_HOME | <Middleware Home>/wlserver_10.3 |
| MOBILE_HOME | <Middleware Home>/wlserver_10.3 |
| JAVA_HOME | <Verzeichnis des JDK> |
| JAVA15_HOME | <Verzeichnis des JDK> |
| PATH | $JAVA_HOME/bin:$PATH |
| DISPLAY | |
| TMP und TMPDIR |
Die zentrale Konfigurationsdatei mobile.ora befindet sich nach der Installation im Verzeichnis <MIDDLEWARE HOME>/wlserver_10.3/mobile/server/bin.
<JM>
Notification –Aktivität in BPM 11gPS4FP
Notification –Aktivität in BPM 11gPS4FP
Dieser Artikel stammt von unserem BPM Consulting Experten Joerg Liedtke, der uns erlaubt hat, diesen Artikel hier zu veröffentlichen.
Im neuen Release BPM 11gPS4FP gibt es nun die Möglichkeit, über eine neue Design-Komponente eine EMail-Notifikation direkt im BPMN-Prozess zu modellieren und zu implementieren.
Die folgende Abbildung 1 zeigt die neue Design-Palette im BPM Studio.
Abbildung 1: Design-Palette im BPM-Studio
Mit dieser Aktivität können nun direkt die verschiedenen Kommunikationskanäle adressiert werden.
Die folgende Abbildung 2 zeigt einen einfachen Testprozess mit Verwendung dieser neuen Notification-Task, die nun wie eine „normale“ Service Task in den Prozess eingebaut werden kann. Im vorliegenden Fall soll eine EMail-Notification erzeugt werden.
Abbildung 2: Integration der EMail-Task im BPMN-Prozess
Die Implementierungsdetails dieser Notification-Task sind in der folgenden Abbildung 3 dargestellt.
Abbildung 3: Implementierungsdetails einer EMail-Notification Task
Einer oder mehrere Anhänge können nun ebenfalls in einfacher Weise über eine XPATH-Funktion integriert werden, was die Abbildung 4 zeigt.
In Abhängigkeit vom adressierten Mail-Server kann es notwendig sein, auch explizit eine Encoding Information zu transportieren. Bei der Qualifikation des Mime-Types sollte auch der Unterstützungsgrad durch den EMail-Treiber des SOA-Servers beachtet werden.
Abbildung 4: Erzeugung eines Email-Anhangs
Wie in den bisherigen Releases auch, sind auch jetzt die notwendigen Konfigurationen für die Messaging und Notification Services des SOA-Servers durchzuführen, was in der Prodkutdokumentation ausführlich beschrieben ist.
Das übermittelte Ergebnis im Postfach des angeprochenen Mail-Servers zeigt die Abbildung 5.
Abbildung 5: Gesendete EMail im Mail-Client des Zielssystems
<Kersten Mebus>
Wiederverwendung der grafischen Detailinformationen (UI) in mehreren HT Komponenten der BPM Suite 11g
In vielen BPM Projekten wird häufig die Frage gestellt, wie die herausgenerierte Detailoberfläche einer HT in anderen HT Komponenten wiederverwendet werden kann. Dieses lässt sich sehr einfach bewerkstelligen, indem im generierten UI Projekt, die „hwtaskflow.xml“ Datei im Application Sources Verzeichnis des zugehörigen JDeveloper Projektes angepasst wird. Diese Datei enthält beispielhaft für eine generierte Oberfläche folgenden Inhalt:
<hwTaskFlow> <WorkflowName>Humantask1</WorkflowName> <TaskDefinitionNamespace>http://xmlns.oracle.com/ADFBPM/Humantask1</TaskDefinitionNamespace> <TaskFlowId>Humantask1_TaskFlow</TaskFlowId> <TaskFlowFileName>WEB-INF/Humantask1_TaskFlow.xml< /TaskFlowFileName> </hwTaskFlow> Dieser Inhalt wird einfach dupliziert und entsprechend angepasst. <hwTaskFlow> <WorkflowName>Humantask2</WorkflowName> <TaskDefinitionNamespace>http://xmlns.oracle.com/ADFBPM/Humantask2</TaskDefinitionNamespace> <TaskFlowId>Humantask1_TaskFlow</TaskFlowId> <TaskFlowFileName>WEB-INF/Humantask1_TaskFlow.xml</TaskFlowFileName> </hwTaskFlow>
Der TaskDefinitionNamespace referenziert den targetNamespace aus der Humantask Komponente im BPM Projekt, hier: aus der Humantask2.task Datei.
<Kersten Mebus>
Script zum Überprüfen der WebLogic Server Basic-Lizenz
Kunden, die in der Vergangenheit den Oracle Application Server für den Betrieb ihrer Forms/Reports-Applikationen erworben haben, können mit der aktuellen Version der Oracle Fusion Middleware 11g den WebLogic Server nutzen. Um diesen Upgrade zu ermöglichen, wurde ein Lizenzkonstrukt mit dem Namen „WebLogic Server Basic“ geschaffen, das einen äquivalenten Funktionsumfang des WebLogic Server bereitstellt.
Konkret heißt dies, dass bestimmte Features des WebLogic Servers mit dieser Lizenz nicht genutzt werden dürfen. Welche das genau sind, ist in dieser Dokumentation detailliert beschrieben. Um nun überprüfen zu können, ob nach der Installation des WebLogic Servers gegen keine diese Beschränkungen verstoßen wird, gibt es vom Oracle Support ein Script (Python), das die Installation überprüft und mögliche Verstöße auflistet. Dieses Script und die Verwendung sind in der Note 885587.1 beschrieben.
Allerdings weist die aktuelle Fassung des Scripts noch einige Unzulänglichkeiten auf. So werden nach einer Standard-Installation der Oracle Fusion Middleware 11g Forms/Reports folgende Verstöße aufgelistet:
- Application reports/forms version 11.1.1.2.0 uses version 11.1.1.2.0
- Diagnostics framework system resource is being used: Module-FMWDFW
- PubSub server
Aktuell gibt es nur für die Punkte 2 und 3 einen Lösungsansatz:
- Deinstallation des Frameworks FMWDFW über die WebLogic Server Console
- Uncheck des PubSub servers bei der Installation des WebLogic Servers
Vermutlich wird es in Kürze eine aktualisierte Version des Scriptes geben.
<JM>
Installation der Oracle Fusion Middleware 11g Rel. 2 Forms & Reports
Seit wenigen Tagen ist das Release 2 der Oracle Fusion Middleware 11g Forms & Reports verfügbar und es hat deutliche Verbesserungen gegeben:
- für Windows und Linux gibt es jeweils ein 32- und ein 64-bit Installationspaket (zum Download)
- die Installation kann im Deployment- oder im Development-Modus ausgeführt werden (zur Installationsbeschreibung)
- die Installation ist deutlich leichtgewichtiger als im Release 1. So werden nur noch 2 GByte physischer Speicher benötigt.
- vom Internet Explorer werden die Versionen 7 bis 9 unterstützt (zur Zertifizierung).
Vor der Installation der Oracle FMW 11gR2 muss zunächst die Software des Oracle WebLogic Servers 10.3.5 in ein neues Middleware Home installiert werden.
Anschließend kann die Installation der Forms&Reports-Komponente gestartet werden. Während der Konfigurations-Phase, die auch separat ausgeführt werden kann, wird eine Domain vom Typ Classic erzeugt.
Wählt man den Development-Modus aus, wird neben den Builder-Komponenten für Forms und Reports nur noch ein Admin Server für Testzwecke angelegt und konfiguriert.
Nach der Installation eines Entwickler-Arbeitsplatzes unter Windows waren keine Nacharbeiten mehr erforderlich, um sowohl die beiden Entwicklungs-Werkzeuge als auch den Server zu nutzen.
<JM>
BPM Suite 11g: Änderung der Prozeßdaten (XSD Änderung)
Wird in einem Geschäftsprozeß die Datenstruktur geändert/angepasst, beispielhaft in einer XSD-Datei, dann stellt sich die Frage, welche Auswirkung diese Änderung auf die Prozeßimplementierung bzw. auf die herausgenerierte Oberfläche hat.
Die geänderten Prozeßdaten sind jeweils in der Implementierung der einzelnen Aktivitäten sichtbar. Hier muss überprüft werden, ob die Änderung den Geschäftsprozeßfluss beeinflusst oder nicht. Zusätzlich zu diesen Aufgaben muss sichergestellt werden, ob die Datenzuweisungen noch richtig sind. Die Oberfläche muss nicht noch einmal neu generiert werden, sondern die zugehörigen DataControls, die die Datenstruktur für das Layout beschreiben, müssen per Mausklick aktualisiert werden. Dann können die Änderungen, wie gewohnt, per Drag & Drop in die Oberfläche nachgezogen werden.
Nachfolgender Prozeß verwendet eine Bestellungsdatenstruktur (XSD), die einer HumanTask zugeordnet ist (Data Association).
Die Oberfläche mit den zugehörigen Data Controls sieht wie folgt aus.
Nachfolgende Abbildung zeigt die XSD-Datei.
Nun ändern wir die XSD Datei im JDeveloper, indem eine neue komplexe Struktur hinzugefügt wird:
Die Änderungen sind in der Prozeßimplementierung direkt sichtbar. Da die Zuordnung auf den obersten Knoten erfolgte, musste hier keine Änderung weiter vorgenommen werden.
Für die Oberfläche muss das zugehörige Data Control aktualisiert werden, indem per rechte Maustaste die „Edit Definition“ ausgeführt wird. Anschließend muss der Button „Refresh Data Control“ gedrückt werden, der das Data Control auf den neusten Stand bringt. Danach das kleine Refresh-Zeichen (zwei blaue entgegengesetzte Pfeile) neben der Data Control Überschrift betätigen und die Änderung ist sichtbar.
Nun kann die Änderung, hier die hinzugefügte komplexe Struktur, per Drag & Drop in die Oberfläche gezogen werden.
<KM>
Sticky User in der BPM Suite 11g PS4 FP
Wird die Bearbeitung von menschlichen Aufgaben (User Tasks) innerhalb eines Verantwortlichkeitsbereiches, dem mehrere Benutzer/Gruppen zugeordent sind, nur von einer Person durchgeführt, so handelt es sich hier um einen „Sticky User“. Dieser Benutzer ist den weiteren abzuarbeitenden menschlichen Aufgaben dauerhaft zugeordnet, nachdem er im Prozeß die erste Aufgabe in seinem Verantwortlichkeitsbereich in Bearbeitung hat. In BPMN 2.0 wird ein Verantwortlichkeitsbereich durch Swimlanes dargestellt. In nachfolgender Abbildung sind der Rolle „Role1″ drei Benutzer zugeordnet, JCooper, Achrist und Jstein. Nachdem der Geschäftsprozeß gestartet worden ist, haben alle 3 Benutzer die erste Aufgabe (UserTask1) in ihrer ToDo Liste aufgeführt. Bearbeitet JCooper diese Aufgabe, so ist für die anderen beiden Sachbearbeiter diese UserTask1 nicht mehr in ihrer ToDo Liste sichtbar. Gleiches gilt für UserTask2 und UserTask3, sobald diese im Prozeß abgearbeitet werden, da für diese beiden Aufgaben der dauerhafte Benutzer zugeordnet worden ist.
UserTask1 hat die Default Einstellung für den Performer: „current lane participant“ und UserTask2 und UserTask3 haben als Performer: „previous lane participant“ eingestellt.
Neues BPM Suite 11g Buch
Auf der Oracle Open Word wird Anfang Oktober das neue BPM Suite 11g Buch von Manoj Das et. al zum Verkauf freigegeben. Ein Kapitel das sich mit ADF und BPM beschäftigt (99 Seiten) steht zum Download frei verfügbar.
Oracle Business Process Management Suite 11g Handbook
by Manoj Das, Manas Deb, and Mark Wilkins
<KM>
BPM Suite 11g PS4 FP: BPM Composer
Der BPM Composer, gedacht für die fachliche Modellierung eines Geschäftsprozesses durch die Fachabteilung/Businessanalysten, hat eine neu überarbeitete Obfläche mit erweiterten Funktionen erhalten. Falls es zu Schwierigkeiten kommen sollte, den webbasierten Composer zu starten (Fehlermeldung: java.lang.AssertionError: CurrencyKey not preserved) bitte folgenden Eintrag vornehmen in <BPMSuiteInstallation>/user_projects/domains/<Domainname>/bin/setSOADomainEnv.sh:
# BPM Composer problem
EXTRA_JAVA_PROPERTIES="${EXTRA_JAVA_PROPERTIES}
-da:org.apache.myfaces.trinidad.component.UIXCollection"
export EXTRA_JAVA_PROPERTIES
<KM>
















