Oracle Fusion Middleware Blog

Deutsche Informationen rund um Oracle Fusion Middleware

SAML SSO zwischen ADF Anwendungen und WebCenter Portal

leave a comment »

Hier werden die notwendigen Schritte zum Aufbau eines SAML basierten Single Sign Ons zwischen WebCenter Portal 11.1.1.8, auch als Spaces bekannt, und einer eigenen, beliebigen ADF Anwendung beschrieben. Mit anderen Worten, die abgesicherte ADF Anwendung kann seine Authentifizierung an WebCenter Portal weiter delegieren und dessen Benutzerkontext adaptieren.

Problembeschreibung

Wenn WebCenter beispielsweise um BPM Process Spaces erweitert wurde, ist in WeCcenter ein Aufgabenlisten TaskFlow verfügbar, der alle Aufgabe aus der BPM Suite anzeigt. Klickt man nun auf einen Eintrag in dieser Liste, so wird in einem Browser Pop-up Fenster die dazugehörige Task UI aufgerufen.

Picture1

Für dieses Szenario muss der Anmeldekontext von Webcenter an die ADF Anwendung übergeben werden, damit beispielsweise in der ADF Form ein Dokumentenupload als Prozessattachment in den Content Server vorgenommen werden kann. Dafür ist ein Web SSO zwischen Webcenter Portal und der ADF Anwendung nötig. Die empfohlene Vorgehensweise ist eine Einbeziehung beider Anwendungen in ein unternehmensweites SSO. Was macht man nun, wenn aber ein solches nicht vorhanden ist? Hier besteht die Möglichkeit, ein minimalistisches SSO auf der Basis von SAML aufzusetzen. Diese Lösung weist einige Einschränkungen auf (z.B. kein globales Single Sign Off), ist aber eine gültige Vorgehensweise und wird auch von WebCenter 11.1.1.8 weiterhin unterstützt. Der WebCenter Portal Admin Guide dokumentiert das Setup dazu im Kapitel 33 (siehe hier).

Lösung

Vorbemerkungen

Der hier beschriebene Lösungsweg berücksichtig SAML v1.1. aufgrund der durch WebCenter bereitgestellten Scripte. Nach jetzigem Stand wird SAML 2.0 mit WebCenter 12g unterstützt (unverbindlich). Wie bereits erwähnt, ist kein globales Single Sign Off in SAML v1.1. möglich. Das bedeutet, dass nach einer Abmeldung und Wiederanmeldung an WebCenter innerhalb der aktuellen Browsersession mit einem anderen Benutzernamen der vorherige Benutzerkontext für die ADF Anwendung beibehalten wird. Der Anwender muss also alle Browserfenster der Sitzung komplett beenden.

Es wird in der hier aufgezeigten Herangehensweise  keine SSL Verschlüsselung, wie im Normalfall bei Anmeldefenstern üblich, berücksichtigt, da nur der allgemeine Lösungsweg an einem einfachen Beispiel skizziert wird.

Als Voraussetzung muss natürlich WebCenter Portal korrekt installiert und konfiguriert sein. Der im Beispiel verwendete Weblogic Server für die eigene ADF Anwendung ist mit dem WebCenter Server in einer gemeinsamen Weblogic Domäne installiert. Eine BPM Suite Installation ist in diesem Fall nicht notwendig, da hier lediglich das Zusammenspiel zwischen der eigenen ADF Anwendung und WebCenter Portal im Fokus liegt. Die BPM Suite dient nur zur Veranschaulichung der Aufgabe.

Namenskonvention für das Beispiel

Hier sind die im Beispiel verwendeten Namen  und Pfade. Diese Werte müsssen natürlich für die eigene Umgebung angepasst werden.

  • Hostname = owc.vm.oracle.com
  • SAML Source Site = für die Anmeldung verantwortliche Anwendung = WebCenter Portal
  • SAML Destination Site = Zielanwendung, die die Authentifizierung von der Source Site übernehmen soll = eigene ADF Anwendung
  • SAMLAPP = Name der eigenen ADF Anwendung , Context root = /samlapp
  • Oracle Fusion Middleware Basisverzeichnis /oracle/fmw/
  • WLS Domäne
  • Name = dot8
  • Verzeichnis = /oracle/fmw/user_projects/domains/dot8
  • Weblogic Servernamen
  • WC_Spaces auf Port 8888 für WebCenter Portal
  • CustomApp auf Port 8100 für eigene ADF App (SAMLAPP)
  • Oracle HTTP Server wurde hier verwendet, ist aber nicht zwingend notwendig. WebCenter hört daher in diesem Falle auf Port 80
  • JDK installiert in /usr/java/jdk1.7.0_55
  • Domain Admin Account lautet weblogic/welcome1 (wird für wlst Anmeldung verwendet)

Aufsetzen des Managed Servers für ADF Anwendung

  1. Erstelle einen neuen WLS Server „CustomApp“ in der Domäne für Port 8100 über WLS Console
  2. Füge ADF Runtime über die EM Website hinzu
    • Wähle den neuen Managed Server in EM Website aus
    • Schalter “Apply JRF Template” wird sichtbar. Durch Anklicken werden alle notwendigen Bibliotheken dem Server zugewiesen

SAML 1.1 Konfiguration der Server

Zunächst sollte ein neuer Schlüssel im Standard Keystore DemoIdentity erstellt und anschließend in eine Zertifikatsdatei exportiert werden. Diese Zertifikatsdatei wird später in der Konfigurationsdatei wcsamlsso.properties referenziert

  1. Identifiziere in der WLS Konsole den Speicherort des Standard Keystores.
    Picture2
  2. Öffne eine SSH Shell und navigiere zu diesem Verzeichnis
    cd /oracle/fmw/wlserver_10.3/server/lib/
  3. Füge einen neuen Schlüssel zum DemoIdentity Keystore hinzu
    /usr/java/jdk1.7.0_55/bin/keytool -genkey -keypass testkeypass 
    -keystore DemoIdentity.jks -storepass DemoIdentityKeyStorePassPhrase 
    -keyalg rsa -alias testalias
  4. Exportiere den Schlüssel in eine Datei
    /usr/java/jdk1.7.0_55/bin/keytool -export -keypass testkeypass 
    -keystore DemoIdentity.jks -storepass DemoIdentityKeyStorePassPhrase 
    -alias testalias -file testalias.der
  5. Erstelle Credential Dateien zum automatisierten Domänenlogin in wlst
    cd /oracle/fmw/user_projects/domains/dot8/config/fmwconfig
    /oracle/fmw/Oraclew_WC1/common/bin/wlst.sh
    connect('weblogic','welcome1','localhost:7001')
    storeUserConfig('spacesconfig.secure', 'spaceskey.secure')
  6. Erstelle eine Verschlüsselung für das Schlüsselpasswort
    print encrypt(obj='testkeypass', domainDir='/oracle/fmw/user_projects/domains/dot8/')
    exit()
  7. Prüfe, ob in dem Verzeichnis die Dateien ordentlich angelegt wurden
  8. Navigiere zum WebCenter Home Verzeichnis und dort ins common/bin
    cd /oracle/fmw/Oracle_WC1/common/bin/
  9. Editiere die Datei wcsamlsso.properties. Die Sektion [spaces_config] sollte in etwa so aussehen
    [spaces_config]
     configFile = /oracle/fmw/user_projects/domains/dot8/spacesconfig.secure
     keyFile = /oracle/fmw/user_projects/domains/dot8/spaceskey.secure
     adminURL = localhost:7001
     usesSSL = false
     url = http://owc.vm.oracle.com/webcenter
     serverName = WC_Spaces
     certAlias = testalias
     certPassword = {AES}0ZvXfi7zJs89AkLXg5/tQzVIAKaV0ZeGIo+oNeM64VE=)
     certPath = /oracle/fmw/wlserver_10.3/server/lib/testalias.der

    Das Certpassword entsprich dem unter Punkt 6 erstellten Schlüssel

  10. Füge folgende Zeilen am Ende der Datei hinzu
    [custom_config]
     configFile = /oracle/fmw/user_projects/domains/dot8/spacesconfig.secure
     keyFile = /oracle/fmw/user_projects/domains/dot8/spaceskey.secure
     adminURL = localhost:7001
     usesSSL = false
     serverName = CustomApp
     certAlias = testalias
     certPath = /oracle/fmw/wlserver_10.3/server/lib/testalias.der
    [samlapp_config]
     url = http://owc.vm.oracle.com:8100/samlapp

    Beachte die Leerzeile nach jeder Sektion sowie am Ende der Datei. Ansonsten wird die Sektion nicht erkannt. Die komplette Beispieldatei liegt hier

  11. Navigiere zum Verzeichnis der SAML SSO Python Scripte, die durch die WebCenter Installation bereitgestellt werden
    cd /oracle/fmw/Oracle_WC1/webcenter/scripts/samlsso/
  12. Erstelle ein neues Script für die Sektion [custom_config]
    vi configureCustomApp.py
  13. Füge den Code aus dem Anhang hinzu und speichere die Datei ab
  14. Erstelle analog dazu eine neue Python Scriptdatei für die Sektion [samlapp_config]
    vi configureSAMLApp.py
  15. Füge den Code aus dem Anhang hinzu und speichere die Datei ab
  16. Navigiere zurück zu common/bin im WebCenter Home Verzeichnis
    cd /oracle/fmw/Oracle_WC1/common/bin/
  17. Starte wlst
    ./wlst.sh
  18. Prüfe, ob die Domain gestartet ist (AdminServer, WC_Spaces) und führe dann folgenden Befehl in der wlst Konsole im Offline Modus aus.
    execfile('/oracle/fmw/Oracle_WC1/webcenter/scripts/samlsso/configureSpaces.py')
  19. Prüfe Fehler und starte dann die Domäne durch (AdminServer, WC_Spaces, CustomApp)
  20. Nun werden relying party und asserting party angelegt. Starte dazu wlst nochmal
    ./wlst.sh
  21. Führe folgenden Befehl in der wlst Konsole im Offline Modus aus
    execfile('/oracle/fmw/Oracle_WC1/webcenter/scripts/samlsso/configureCustomApp.py')
  22. Starte wlst nochmal
    ./wlst.sh
  23. Führe folgenden Befehl in der wlst Konsole im Offline Modus aus
    execfile('/oracle/fmw/Oracle_WC1/webcenter/scripts/samlsso/configureSAMLApp.py')

Das wär’s für die SAML Konfiguration auf Serverseite. Aus Sicherheitsgründen sollten alle Dateien mit Anmeldeinformationen bereinigt werden, d.h. wcsamlsso.properties, und die Credential Dateien im Domänen Konfigurationsverzeichnis wieder gelöscht werden (spacesconfig.secure, spaceskey.secure)

Erstellen der ADF Anwendung

Für die SAML SSO Authentifizierung der ADF Anwendung sind zwei Hauptkriterien zuständig

  • Einschalten der ADF Security mit CLIENT-CERT Authentifizierung
  • Definition eines eindeutigen Cookie Pfades für die Anwendung. Dieser darf nicht mit anderen Cookie Pfaden kollidieren.

Erstellen wir nun eine einfache Beispielanwendung, die lediglich den Benutzernamen ausgeben soll.

  1. Starte JDev 11.1.1.7 und erstelle eine leere generische Anwendung
  2. Wähle ADF Faces als Projekt Technologiescope aus und beende den Assistenten
  3. Rechter Mausklick auf das Projekt und wähle „Project Properties
  4. Setze den JEE Anwendungskontext auf „SAMLAPP
    clip_image044
  5. Rechter Mausklick auf das Projekt und erstelle eine neue JSF Page (WebTier ->JSF). Nenne diese “start.jspx”.
  6. Rechter Mausklick auf “start. Jspx” und wähle “Go To Page Definition”. Klicke auf “YES” und die Page Definition Datei (“startPageDef.xml”) wird erstellt. Schließe die Datei.
  7. Platziere eine panelHeader Komponente auf die JSF Page sowie eine outputText Komponente
  8. Binde den outputText Value auf “Hello User : #{securityContext.userName}“. Die Seite sollte nun in etwa so aussehen.
    clip_image046
  9. Im JDev Hauptmenu rechter Mausklick auf Application -> Secure -> Configure ADF Security
    clip_image048
  10. Wähle “ADF Authentication and Authorization” -> klicke “Next” -> wähle “HTTPS Client Authentication” -> klicke “Next” -> Akzeptiere die Vorgabewerte “No Automatic grants” -> klicke “Next” -> markiere “Redirect Upon Successful Authentication” und wähle “start.jspx” als Welcome Page -> klicke “Next” -> “Finish
  11. Öffne im Application Resource Fenster die Datei “jazn-data.xml
  12. Klicke auf “Resource Grants” und wähle ”Web Page” als “Resource Type
  13. start.jspx” sollte schon ausgewählt sein. Füge eine “Application Role” hinzu.
    clip_image050
  14. Markiere “Authenticated Role” und klicke “OK
  15. Akzeptiere die “View” Rechte und speichere alles.
  16. Öffne im Projects Fenster die Datei “web.xml”, klicke auf “Source” Ansicht und scrolle nach unten ans Ende der XML Datei
    clip_image052
  17. Dort gibt es ein login-config Attribut. Ändere den Code zu
       CLIENT-CERT,BASIC
       jazn.com
    
  18. Speicher alles
  19. Öffne im Projects Fenster die Datei “weblogic.xml”
  20. Füge folgende Zeilen the oberhalb der letzen Zeile hinzu
       /samlapp
    
    
  21. Denke daran, dass der Cookie Pfad für diese Anwendung einzig sein muss. Nutz nicht /webcenter , da dies schon durch die WebCenter portal Anwendung in Gebrauch ist. Empfehlenswert ist die Angabe des URL Context Pfades, also /samlapp beispielsweise.
  22. Speicher alles.
  23. Erstelle ein WAR Deployment Profil für das Projekt
    (rechter Mausklick auf Project -> “Project Properties” -> “Deployment” -> “New” -> Wähle “WAR File” -> gib einen Namen an -> klicke “OK” 3 mal
  24. Erstelle ein Application Deployment Profil
    (JDev Hauptmenu -> “Application” -> “Application Properties” -> “Deployment” ->”New” -> Wähle “EAR” -> gib einen Namen an (z.B. SAMLAPP) -> klicke auf “OK” -> wähle “Application Assembly” -> markiere das WAR Deployment Profil -> klicke auf “OK” zwei mal
  25. Speicher alles.
  26. Deploye die Anwendung auf den “CustomApp” Server, der zuvor erstellt und konfiguriert wurde.
    (Jdev Hauptmenu -> “Application” -> “Deploy” -> “SAMLAPP” -> “Deploy to Application Server” -> klicke “Next” -> Wähle die Appserver Connection bzw. Erstelle eine neue für die WebCenter Domain -> wähle “Deploy to selected instance” -> wähle “CustomApp” als Zielserver -> klicke “Next” -> klicke “Finish

Das war‘s. Nun kann man die Anwendungs URL (http://owc.vm.oracle.com:8100/samlapp/faces/start.jspx ) in einem Webbrowser aufrufen und man müsste zur WebCenter Anmeldeseite weitergeleitet werden. Nach erfolgreichem Login erfolgt die Weiterleitung zurück zur Startseite der SAMLAPP und der aktuelle Benutzername sollte erscheinen.

<DM>

Anhang

Bitte alle Dateien ohne Endung xls abspeichern

configureCustomApp.py

configureSAMLApp.py

wcsamlsso.properties

Written by fmtechteam

30/04/2015 at 10:26

Veröffentlicht in ADF, WebCenter

Generierung von REST Clients mit verschiedenen IDEs (JDeveloper, Eclipse, NetBeans)

leave a comment »

In der Welt mobiler Anwendungen erfolgt der Zugriff auf Daten und Funktionen im Backend zumeist über RESTful Services, die die Nachrichten im kompakten JSON-Format austauschen. Im Gegensatz zu SOAP-Services, bei denen sich die WSDL-Beschreibung als Standard durchgesetzt hat, gibt es für RESTful Services mit JSON noch keinen etablierten Standard. Erste Ansätze existieren mit WADL (Web Application Description Language) und RAML (RESTful API Modeling Language).
Wie können nun die verschiedenen IDEs im Oracle-Umfeld mit existierenden REST/JSON-Services umgehen und aus den zur Verfügung stehenden Informationen einen REST-Client generieren, der beispielsweise anschließend in einer mobilen Anwendung verwendet werden kann, um mit dem REST Service zu kommunizieren. Für die Entwicklung der mobilen Anwendungen soll das Oracle Mobile Application Framework (MAF) eingesetzt werden.

Oracle JDeveloper 12.1.3

Sofern der REST Service die Nachrichten im XML-Format austauscht und dafür ein XSD Schema existiert, kann der Web Service Data Control Wizard im JDeveloper verwendet werden, um ein Data Control für den Web Service zu generieren. Sollen die Daten dagegen im JSON-Format ausgetauscht werden, muss der Client unter Verwendung des REST Service Adapters manuell in Java programmiert werden. Anschließend kann aus dem Service Object ein POJO Data Control generiert werden. Dieses Vorgehen ist ausführlich in einem Tutorial auf OTN beschrieben.

Oracle Enterprise Pack for Eclipse 12.1.3.4 (OEPE)

Alternativ zum Oracle JDeveloper kann auch OEPE eingesetzt werden, um mobile Applikationen auf Basis des Oracle Mobile Application Frameworks (MAF) zu entwickeln. In OEPE gibt es einen REST Service Editor, der auch für REST-JSON Services die notwendigen Artefakte automatisch generiert, ohne dass es eine Beschreibung des RESTful Services gibt.
Dazu praktiziert der Wizard einen interessanten Ansatz:

  • Im ersten Schritt (Tab REST Client) wird zunächst der Service “erforscht”, indem der Service wiederholt unter Angabe der URL, von Header-Informationen und Query Parametern aufgerufen wird und die Ergebnisse angeschaut werden. In dieser Phase werden keine Ergebnisse gespeichert.
  • Hat man die Struktur verstanden, kann mit Hilfe der Funktion “Import the REST Client Information” eine erste Beschreibung des Service im XMI-Format (XML Model Interchange) erstellt werden. Diese wird im Tab REST API sicht- und editierbar. Alle Änderungen werden unmittelbar in der XMI-Beschreibung persistiert.
  • Im letzten Schritt “Artifact Generation” wird aus der XMI-Beschreibung des Service ein Java Client generiert.
    Aus dem Service Object kann anschließend wie im JDeveloper ein POJO Data Control erzeugt werden.
OEPE REST Service Editor

OEPE REST Service Editor

Dieses Vorgehen ist in zwei Blog Posts ausführlich beschrieben:
https://blogs.oracle.com/oepe/entry/introduction_to_rest_service_editor
https://blogs.oracle.com/oepe/entry/introduction_to_the_rest_service

NetBeans 8.0.2

Im Unterschied zu den zwei vorhergehenden IDEs können mit NetBeans keine mobilen Applikationen auf Basis von Oracle MAF erstellt werden. Trotzdem war es interessant, die Möglichkeiten von NetBeans zu erkunden.
Wurden die REST Services mit NetBeans z.B. als annotierte Java-Klassen erstellt, kann ein REST Service Client dafür generiert werden. NetBeans bietet nach der Installation eine Reihe populärer Services (von Amazon, Delicious, Flickr, Google, ..) an, die jeweils durch eine WADL-Datei beschrieben sind.

NetBeans - Services

NetBeans – Services

Hier können eigene Services (SOAP oder REST) hinzugefügt werden, zu denen eine WSDL- oder WADL-Datei angegeben werden muss. Ist eine WADL-Datei für den Service hinterlegt kann anschließend mit Hilfe des RESTful Java Client Wizard der client-seitige Code generiert werden.
Das Vorgehen ist in diesem Tutorial und in diesem Video beschrieben.
Fehlt eine WADL-Beschreibung des Service müsste man diese vorab erstellen. Dieses Wiki beschreibt einige mögliche Ansätze und Werkzeuge zur Generierung einer WADL-Datei.

<JM>

Written by fmtechteam

13/04/2015 at 15:00

Import von BAM 11g Data Objects in BAM 12c mit BAMCommand

leave a comment »

Mit der Utility BAMCommand werden in BAM 12c Metadaten, Daten und Projekt Artefakte exportiert, importiert, migriert oder gelöscht.

Mit BAMCommand werden auch Data Objects von BAM 11g nach BAM 12c migriert. Dabei werden die Strukturen und die Daten nach 12c migriert. Die Migration erfolgt in 2 Schritten. Als erstes wird die Struktur des Data Objects in BAM 12c importiert und im zweiten Schritt werden die 11g Daten importiert.

Vor dem Starten der Utility sollten (hier unter Windows) die folgenden Umgebungsvariablen gesetzt werden:
set ORACLE_HOME=D:\JDev12c\BPM1213QuickStart
set JAVA_HOME=D:\Javas\jdk760
set PATH=D:\JDev12c\BPM1213QuickStart\soa\bam\bin;%PATH%

Vorausgesetzt wird hier, dass in der Konfigurationsdatei BAMCommandConfig.xml die Parameter für Host, Port, Benutzernamen und Passwörter gesetzt worden sind ( siehe BAM 12c – BAMCommandConfig.xml ).

Einspielen der Struktur
Beim Einspielen eines BAM 11g DOs müssen die 3 folgenden Parameter mitgegeben werden, wobei der Parameter upgrade angibt, dass es sich um eine Migration von BAM 11g Data Objects handelt:
-cmd import
-file path2file\bam11gfile.xml
upgrade 1

Das vollständige Kommando, das in einer Zeile abgesetzt wird, lautet z.B.:
bamcommand -cmd import -file D:\Temp\Urlaubsantrag.xml -upgrade 1

Import der Daten
Beim Import der Daten wird nur der Parameter upgrade gegen den Parameter migrate ausgetauscht.
Das Kommando zum Import der Daten lautet:
bamcommand -cmd import -file D:\Temp\Urlaubsantrag.xml.xml -migrate 1

Konvertierungen beim Upgrade
Beim Upgrade eines BAM 11g Data Objects werden automatisch Änderungen an den Namen und Typen des Data Objects vorgenommen:
1. Die 11g Data Object ID wird konvertiert in den internen Namen des 12c Data Objects. Alle führenden Unterstriche werden entfernt.
2. Pfad und Name des 11g Data Objects werden kombiniert zum 12c Data Object Display Name.
3. Die 11g Column IDs werden konvertiert zu den 12c Column Internal Names. Alle führenden Unterstriche werden entfernt.
4. Die Werte in einer Column vom Typ “auto-incr-integer” werden in der Column BEAM_ID des 12c Data Objects gespeichert.
5. Die Werte in einer Column vom Typ “Timestamp” werden in der Column DATAOBJECT_CREATED des 12c Data Objects gespeichert.
6. Eine 11g Column vom Typ String wird in eine 12c Varchar Column konvertiert mit einer maximalen Länge von 2000 Character.

Infomationen zum Upgrade eines BAM 11g Data Objects nach BAM 12c finden sich hier:
11g to 12c Migration in Oracle BAM 12.1.3

<GS>

Written by fmtechteam

12/03/2015 at 15:25

Veröffentlicht in Uncategorized

Tagged with

BAM 12c – BAMCommandConfig.xml

with one comment

Mit der Utility BAMCommand werden in BAM 12c Metadaten, Daten und Projekt Artefakte exportiert, importiert, migriert oder gelöscht. Beim Aufruf der Utility können Parameter mitgegeben werden wie z.B. der Rechnername oder die Portnummer des BAM Servers.

In der Konfigurationsdatei BAMCommandConfig.xml können Werte für diese Parameter zentral definiert werden. Diese Werte müssen dann beim Aufruf der Utility nicht mehr in der Kommandozeile angegeben werden. Die Datei liegt im Verzeichnis FMW_HOME/soa/bam/bin.

Im folgenden Beispiel werden Host und Port des BAM Servers definiert, Benutzername und Passwort für den WLS Administrator und das SOAINFRA Datenbank Schema, in dem alle BAM Objekte abgelegt werden, sowie die Connection zur Datenbank:

<?xml version=”1.0″ encoding=”UTF-8″ standalone=”yes”?>
<BAMCommandConfig>
<host>localhost</host>
<port>7222</port>
<username>weblogic</username>
<password>7aNP3ayh3UpeTFAKqq+phWfTIJKJaVqntGCnit9mE1I=</password>
<dbpassword>yfDjRGn7SwgukG4HIlhOywK7hIWbTXR15o4/xpJQvKo=</dbpassword>
<dbusername>DEV4TEST_SOAINFRA</dbusername>
<dburl>jdbc:oracle:thin:@localhost:1522:BPMDB12c</dburl>
</BAMCommandConfig>

Parameter, die direkt beim Aufruf der Utility in der Kommandozeile mitgegeben werden, überschreiben die Parameter in der Konfigurationsdatei.

Die Passwörter werden unverschlüsselt eingetragen. Sie werden dann beim nächsten Aufruf der Utility verschlüsselt.

Wenn der Parameter für den Port nicht gesetzt und nicht als Parameter mit übergeben wird, dann wird vorausgesetzt, dass der BAM Server auf dem Port 7001 läuft. Normalerweise ist dies der Port des Admin Servers und deshalb sollte der Port in dieser Datei eingetragen werden, z.B. mit der Nummer 9001.

Dokumentation: 17.1.2 Using the BAMCommand Configuration File

<GS>

Written by fmtechteam

11/03/2015 at 17:19

Veröffentlicht in Uncategorized

BPM 12c Project Properties für die Integration mit BAM 12c

leave a comment »

In einem BPM Projekt müssen einige wenige Einstellungen vorgenommen werden, damit Daten über Prozesse und KPIs an einen BAM Server übertragen werden.

Im Oracle JDeveloper wird der Name des Projektes markiert und über das Mausmenu werden über den Menupunkt BPM die Project Preferences aufgerufen.

OpenProjectProperties

Auf der linken Seite wird der Punkt Project Analytics Summary markiert.

  • Im oberen Bereich unter Process Sampling Points wird festgelegt, ob Daten für alle Aktivitäten oder z.B. nur für alle interaktiven Aktivitäten, d.h. für User Tasks/Human Tasks, gesammelt werden.
  • Im unteren Bereich wird unter den Data Targets festgelegt, ob Daten an einen BAM 12c Server und/oder einen BAM 11g Server übertragen werden sollen, hier z.B. nur an BAM 12c.

BPMProjectPreferences

Mit diesen Einstellungen werden jetzt Prozessdaten an den BAM 12c Server übertragen. Voraussetzung dafür ist aber auch, dass die Properties für die Inegration von BPM 12c und BAM 12c auf dem Server richtig gesetzt wurden (SOA/BPM Properties für die Integration mit BAM12c).

Zur Vorsicht sollte bei den Project Preferences unter Project Info überprüft werden, ob der richtige Projektname eingetragen ist.

ProjectName

Der Projektname ist wichtig, weil nach dem Deployment des BPM Projektes in der BAM 12c Umgebung ein BAM Projekt für den BAM Designer angelegt wird. Der Name dieses Projektes setzt sich zusammen aus dem Prefix BPM_ und dem unter Project Info eingetragenen Projektnamen.
Für das Beispiel aus dem oberen Screenshot wird z.B. das BAM Projekt BPM_BpmProjekt4BAM angelegt.

<GS>

Written by fmtechteam

18/02/2015 at 11:56

Veröffentlicht in Uncategorized

SOA/BPM Properties für die Integration mit BAM12c

with one comment

Für die Integration von Oracle BPM 12c mit Oracle BAM 12c müssen auf dem BPM Server einige Properties gesetzt werden, damit Daten aus und über die Prozesse an den BAM Server zur weiteren Auswertung übergeben werden.

Die Properties werden über den System MBean Browser im Oracle Enterprise Manager gesetzt. Nach der Anmeldung als Administrator (weblogic) wird über das Menu WebLogic Domain der System MBean Browser aufgerufen.
OpenMBeanBrowser

Unter den Application Defined MBeans wird unter oracle.as.soainfra.config–>Server: server_name (z.B. Server: soa_server1)–>BPMNConfig der Eintrag bpmn markiert.
Bei den Properties auf der rechten Seite wird OptimizationEnabled auf true gesetzt.
bpmnOptEnabled

Nach Ändern der Property auf den Button Apply (rechts oben) klicken.

Unter den Application Defined MBeans wird jetzt unter oracle.as.soainfra.config–>Server: server_name (z.B. Server: soa_server1)–>AnalyticsConfig der Eintrag analytics markiert.
Bei den Properties auf der rechten Seite werden DisableAnalytics und DisableProcessMetrics auf false gesetzt.
analytics

Nach Ändern der Properties wieder auf den Button Apply (rechts oben) klicken.

Damit sind die Einstellungen vorgenommen worden, um Prozessdaten, KPis etc. an den BAM 12c Server zu übertragen.

Oracle Dokumentation: 34.1.1 Configuring the BPMN Service Engine for Process Monitoring

<GS>

Written by fmtechteam

17/02/2015 at 11:29

Veröffentlicht in Uncategorized

RESTful Services mit Mobile Persistence Accelerator (AMPA)

leave a comment »

Das Oracle A-Team hat jetzt eine JDeveloper Erweiterung als Open Source Framework veröffentlicht, mit der die Integration von REST Services in Oracle MAF erweitert wird. Insbesondere die Verarbeitung von JSON Daten wird hiermit stark vereinfacht. Der A-Team Mobile Persistence Accelerator, kurz AMPA, liefert einen grafischen Wizard zum Erstellen von JSON DataControls. Der Unterschied zum produktseitigen REST Service DataControl Wizard ist, dass man hiermit überhaupt nativ JSON verarbeiten, die Datenstrukturen des JSON Response erkennen lassen und etwaige Master-Detail Beziehungen definieren kann. Außerdem ist eine Offline Funktion mit eingebaut. Man kann somit ohne Netzverbindung Daten lesen und schreiben und anschließend eine Synchronisation mit dem Backend vornehmen.

AMPA ist, wie bereits genannt, kein offfizielles Oracle Produkt. Daher können Supportanfragen nur über die MAF Community geregelt werden. Warten wir es ab, inwieweit das MAF Development diese Lösung aufgreift und ins Produkt überführt.

Weitere Infos zur JDev Extension sind auf dem A-Team Blog unter http://www.ateam-oracle.com/a-team-mobile-persistence-extension-for-oracle-maf/ zu finden.

<DM>

Written by fmtechteam

14/11/2014 at 10:33

Veröffentlicht in MAF, Mobile

Folgen

Erhalte jeden neuen Beitrag in deinen Posteingang.