Benutzer-Werkzeuge

Webseiten-Werkzeuge


forms:oracle_reports_12c_r2_windows64

Oracle Reports Server 12.2.1.3.0 "The last and final_release" mit Oracle WebLogic auf einem Windows 2016 Server installieren und betreiben

November 2017

Aufgabe: Die letzte und finale Version des Oracle Report Server unter Windows 2016 in Betrieb nehmen und betreiben.

Für die Vorgänger Version siehe hier ⇒ Oracle Reports Server 11g R2 unter Windows 2008 installieren und betreiben.

Zertifizierung überprüfen:

  1. Oracle Reports 12.2.1.3.0 is certified on Microsoft Windows x64 (64-bit) 2016 Service Pack 0+
  2. WLS - Datenbank 12.2.0.1
  3. Oracle Reports 12.2.1.3.0 has certifications with Oracle WebLogic Server 12.2.1.3.0
  4. Oracle Java JDK 1.8.0 152
  5. Visual Studio 2012 (VC++ 11.0) Runtime

Siehe auch https://docs.oracle.com/html/E82037_01/toc.htm#GUID-CB8C7C04-C8BD-4F9F-8ACF-F735FB6BD871

Genereller Ablauf:

  • Windows 2016 Standard Installation
    • Windows Umgebung konfigurieren
  • Java 1.8 152 64bit installieren
  • Visual Studio 2012 (VC++ 11.0) Runtime installieren, prüfen ob Visual Studio 2010 Runtime vorhanden ist, falls nein ebenfalls installieren!
  • Oracle WebLogic Software (Oracle Fusion Middleware 12c Infrastructure) installieren (noch keine Domänen konfigurieren, nur Softwareinstallation!)
  • Datenbank für das Repository bereitstellen
  • RCU Repositorie anlegen (Comman Infrastructure Service Repository)
  • Oracle Reports Server Software (Oracle Fusion Middleware 12c (12.2.1.3.0) Forms and Reports for Microsoft Windows) Installation
  • Konfiguration der WebLogic Domain
  • Erster Start der WebLogic Domain
  • Anlegen der eigentlichen Reports App in der WebLogic Domain
  • Autostart des WebLogic Server einrichten
  • Report Engine parametrisieren um die ersten Test Berichte aufzurufen

Zeitlicher Ablauf:

Im Prinzip kann einen Installation in ca. 8h durchgeführt werden, eine der aufwendigen Parts der Installation ist das Einrichten des AutoStarts unter Windows als Dienst, hier treten immer noch recht viele Fehler auf.


Vorbereitung

Download von Oracle edelivery ⇒ http://edelivery.oracle.com/

  • Oracle Reports 12.2.1.3.0 for Microsoft Windows x64 (64-bit)
    • V886455-01_1of2.zip - Oracle Fusion Middleware 12c (12.2.1.3.0) Forms and Reports for Microsoft Windows x64(64-bit), 1.6 GB
    • V886455-01_2of2.zip - Oracle Fusion Middleware 12c (12.2.1.3.0) Forms and Reports for Microsoft Windows x64(64-bit), 248.4 MB
  • Oracle Fusion Middleware 12c Infrastructure 12.2.1.3.0 for Microsoft Windows x64 (64-bit)
  • V886426-01.zip - Oracle Fusion Middleware 12c (12.2.1.3.0) Infrastructure, 1.5 GB

Download Java ⇒ http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  • jdk-8u152-windows-x64.exe

Download Visual Studio 2012 (VC++ 11.0) Runtime 32/64 bit ⇒ https://www.microsoft.com/en-us/download/details.aspx?id=30679


Das Betriebssystem Windows 2016 vorbereiten

Die Installation muss unter dem User stattfinden, unter dem später auch der Service betrieben werden soll.

Falls der Administrative Account dazu NICHT verwendet werden kann, entsprechenden User zuvor mit lokalen Admin Rechten anlegen!

Empfohlen ist die Verwendung der englischen Variante von Windows 2016, oft lässt sich im Support Fall mit deutschen Fehlermeldungen nicht viel anfangen!

  • Standard Installation Windows 2016 R2 + letzten MS Update Stand
    • Produktiven Namen vergeben und in die Domäne aufnehmen
    • 8 GB Ram Minimum vorsehen
    • C: - 50GB besser 75GB
    • D: - ~40GB - Der Reportserver belegt nach der Installation ca. 4GB Plattenplatz
    • Verzeichnis „D:\temp“ anlegen

Die IP Adresse und vor allen der Name des Servers sollte sich nach der Reports Installation NIE wieder ändern! Dies vorab verbindlich mit der IT vereinbaren und viel Ärger und Mühen einzusparen!

Windows System optimieren

  • Aufruf „Advanced System Settings“ ( Control Panel\System and Security\System\Advanced System Settings ) „Advanced“
    • Performance Options :: Visual Effects :: „Best performance“ aktivieren
    • Performance Options :: Advanced :: „Background services“ aktivieren
    • Data Execution Prevention :: „Turn on DEP for essential Windows programs and services only“
    • Enviroment Variables :: TEMP und TMP auf d:\temp für „System variables“ und „User variables“
  • Bildschirmschoner auf „Blank“ stellen bzw. deaktivieren (Control Panel\Appearance\Display)
  • Internet Explorer Security ausschalten, falls lokal getestet werden soll
    • Control Panel\Programs\Programs and Features\ „Turn Windows features of or off“ ⇒ „Internet Explorer Securtiy Configuration“
    • Alternativ Firefox oder Chrome installieren
  • Java JDK 64bit installieren - jdk-8u152-windows-x64 nach d:\java\jdk-8.152\
  • JAVA_HOME Umgebungsvariable setzen (JAVA_HOME auf D:\Java\jdk1.8.0_152 als New System Variable)
  • JAVA Home im PATH mit aufnehmen (D:\Java\jdk1.8.0_152\bin bei PATH unter System Variables hinzufügen)
  • Runtime Visual Studio 2010 prüfen ob installiert, falls nicht nachinstallieren, sonst Fehlermeldung von Reportsbuilder das „MSVCP100.dll“ nicht gefunden
  • Enabling User Account Control (UAC)
    • secpol.msc aus der PowerShell (adminstrative) starten
    • Security Settings > Local Policies > Security Options.
    • „User Account Control:Run all Administrator in Admin Approval Mode“ auf „enabled“ stellen
    • Server neu starten

Es ist zu empfehlen einen PostScript Drucker wie eine HP 5000 als „Dummy“ auf dem Server einzurichten um Problem beim Erstellen von Dokumenten mit Oracle Reports aus dem Weg zu gehen, allerdings kann diese Empfehlung aus den alten Release inzwischen veraltet sein, schaden kann es jedenfalls nicht .-).


Datenbank für das Repository bereitstellen

Für die Metadaten der Fusion Middleware Umgebung wird eine Datenbank benötigt, am besten eine einfache 12c Umgebung.

Falls der Server genug Reserven besitzt nun eine normale 12c Datenbank ohne große Besonderheiten installieren, wie zum Beispiel hier auch beschrieben ⇒ Eine Oracle Datenbank 12c Datenbank Umgebung unter Windows 2012 R2 installieren

Kann natürlich auch alternativ ein Cluster sein .-) ⇒ Anmerkungen zu Installation des Oracle Real Application Cluster 12c R1 auf einem Oracle Linux 7


Oracle Fusion Middleware 12c Infrastructure (Oracle WebLogic) 12.2.1.3 installieren

Problem bei der späteren Installation von Reports!

Unable to find dependent featuresets for the selected installation type "Forms and Reports Deployment". Please select a valid installation type.

⇒ Weblogic muss als Oracle Fusion Middleware 12c Infrastructure installiert werden, der Generic Weblogic ist nicht mehr ausreichend!

Bei der Vorgänger Version von Report hat das aber noch geklappt .-( !

D.h. die Oracle Fusion Middleware 12c Infrastructure 12.2.1.3.0 for Microsoft Windows x64 (64-bit) ⇒ Datei V886426-01.zip - Oracle Fusion Middleware 12c (12.2.1.3.0) Infrastructure, rund 1.5 GB groß, muss als FWM installiert werden!

Im ersten Schritt wird aber NUR die Software installiert, erst mit der Reports/Forms Installation erfolgt das Aufsetzen der WebLogic Domain!

Um die Pfadangaben zu vereinfachen, werden die folgenden Pfade verwandt:

  • Java Home : D:\Java\jdk1.8.0_152
  • Oracle Base : d:\oracle
  • Middle Ware Home : d:\oracle\fmw
    • (Fusion Middle Ware = fmw )

Ablauf:

  1. Software auf dem Server kopieren und V886426-01.zip entpacken
  2. Installation aufrufen „java -jar fmw_12.2.1.3.0_infrastructure.jar“
    d:
    mkdir d:\oracle\fmw
    rem in das Verzeichnis mit dem "fmw_12.2.1.3.0_infrastructure.jar" wechseln
    cd D:\install\forms
    #Java aus dem JDK aufrufen!!
    D:\Java\jdk1.8.0_152\bin\java -jar .\fmw_12.2.1.3.0_infrastructure

Alle 8 Screen durcharbeiten, wichtigste Einstellung: Wahl der Oracle Homes „d:\oracle\fwm“ und Fusion Middleware Infrastucture!

Die Konfiguration einer Domain im WebLogic wird später nach der Reports Installation durchgeführt!


Oracle Reports Server (Oracle Fusion Middleware 12c (12.2.1.3.0) ) Installation

Der Installationspfad darf unter Windows nicht zu lang werden, da sonst die Reports Patch Variable zu lang wird!

Der Reports Server wird gleich bei der Installation in der Option „Deployment“ aufgesetzt und konfiguriert ( Option Install and Configure ) .

Software entpacken und setup_fmw_12.2.1.3.0_fr_win64.exe aufrufen (in der Powershell z.B.):

# Dateien auspacken
cd D:\install
expand-archive .\V886455-01_1of2.zip
expand-archive .\V886455-01_2of2.zip
cp .\V886455-01_2of2\setup_fmw_12.2.1.3.0_fr_win64-2.zip .\V886455-01_1of2\
 
cd D:\install\V886455-01_1of2
 
.\setup_fmw_12.2.1.3.0_fr_win64.exe

Alle 9 Screens durcharbeiten ⇒ Screen Flow siehe ⇒ Screen Flow Install oraclereportsserver12.2.1.3.0

Nach der Installation der reinen Software müssen die nächsten Schritte ausgeführt werden:

  1. RCU Repository anlegen
  2. Domain mit dem Configuration Wizard erzuegen
  3. Start Node Manager and Domain Server
  4. Konfiguration der Reports App

Oracle Comman Infrastructure Service Repository anlegen

Als Repostitory Datenbank kann eine Oracle 12c dienen, allerdings kann meiner Erfahrung nach pro DB nur ein Repository für eine FWM Umgebung angelegt werden. Siehe ⇒ https://docs.oracle.com/middleware/1212/core/ASINS/preparing.htm#ASINS355

  • Eintrag der gewählten Datenbank in die tnsnames.ora, Test das vom Server eine Verbindung zur Repository Datenbank möglich ist
  • Aufruf des RCU Utiltitis
    D:\oracle\fmw\oracle_common\bin>rcu.bat
  1. Welcome ⇒ Next
  2. Create Repository ⇒ „Create Repostitory“ „System Load and Product Load“ ⇒ Next
  3. Database Connection Details ⇒ Oracle Database, „Connection Parameters“ Werte ausfüllen ⇒ Next ⇒ OK
  4. Select Components ⇒ „Create new prefix:“ SPA - Oberste Ebene anwählen „STB,OPSS,IAU,IAU_APPEND,IAU_VIEWR,MDS,WLS,UMS“ ⇒ Next ⇒ OK
  5. Schema Passwords ⇒ „Specify different passwords for all schemas“ ⇒ PWD ausfüllen und aufschreiben! ⇒ Next
  6. Map Tablespaces ⇒ Alles Default, oder je nach Bedarf individuell konfigurieren ⇒ Next ⇒ OK ⇒ OK
  7. Summary ⇒ Create
  8. Completion Summary ⇒ Close

Screenshots der Installation ⇒Screenshots der Installation Oracle Infrastructure Repository 12c Fusion Middleware


WebLogic Domain anlegen

Aufruf von:

 D:\oracle\fmw\oracle_common\common\bin> .\config.cmd

Screens:

  1. Step 1 - Create a new Domain - Domain Location ⇒ D:\oracle\fmw\user_projects\domains\SPAReport ⇒ next
  2. Step 2 - Create Domain Using Product Templates - Include all selected templates und „Oracle Reports Application/Report Server / Report Bridge“ anwählen ⇒ next
  3. Step 3 - Application Location „D:\oracle\fmw\user_projects\applications\SPAReport “ ⇒ next
  4. Step 4 - Weblogic Passwort „admin1234“ ⇒ next
  5. Step 5 - Domain Mode - Production - JDK default ⇒ next
  6. Step 6 - Database Configuration Type - „RCU Data“, Vendor Oracle, Connection Details ausfüllen, Schema Owner „SPA_STB“ ⇒ Get RCU Configuration ⇒ Next
  7. Step 7 - Component Datasources ⇒ alle anwählen und Passwort setzen
  8. Step 8 - JDBC Test ⇒ Next
  9. Step 9 - Advanced Configuration ⇒ Administration Server, Node Manager, Topology ⇒ Next
  10. Step 10 - Administration Server ⇒ Server Groups „REPORTS-APP-SERVERS“ ⇒ Next
  11. Step 11 - Node Manager Type „Per Domain Default Location“ , weblogic Credentials ⇒ Next
  12. Step 12 - Managed Servers ⇒ Einstellung belassen ⇒ Next
  13. Step 13 - Clusters ⇒ Einstellungen belassen (cluster_reports) ⇒ Next
  14. Step 14 - Server templates ⇒ Next
  15. Step 15 - Dynamic Servers ⇒ Next
  16. Step 16 - Assign Servers to Clusters ⇒ Next
  17. Step 17 - Coherence Clusters ⇒ Next
  18. Step 18 - Machines ⇒ Next
  19. Step 19 - Assign Servers to Machines ⇒ Next
  20. Step 20 - Virtual Targets ⇒ Next
  21. Step 21 - Partitions ⇒ Next
  22. Step 22 - Configuration Summary ⇒ Create
  23. Step 23 - Configuration Progress ⇒ Next
  24. Step 24 - End of Configuration - URL Merken! ⇒ Finish

Siehe auch ⇒ Oracle Report 12.2.1.3.0 Domain Wizard to setup a Weblogic Domain for Reports

Nun wurde unter D:\oracle\fmw\user_projects\domains\SPAReport die Domain angelegt, über http://12cwin2016rep01:7001/console kann NACH dem Start der Domain auf die Admin Oberfläche zugegriffen werden.

Siehe auch ⇒ https://docs.oracle.com/middleware/1213/wls/WLDCW/newdom.htm#i1073602 und ⇒ https://docs.oracle.com/middleware/1213/wls/WLDCW/fmw_config.htm#WLDCW407

Domain das erste Mal starten

Wichtig! Nur mit einer gestarteten Domain kann das Setup zu Ende geführt werden, die eigentliche Report Server Instance wird nicht von dem Domain Setup angelegt.

Ins Verzeichnis (Domain Home ) D:\oracle\fmw\user_projects\domains\SPAReport\bin die WebLogic Umgebung starten:

cd D:\oracle\fmw\user_projects\domains\SPAReport\bin
 
rem start Admin Server
start startWebLogic.cmd
 
rem warten bis der Server auch gestartet ist!
rem User und Password eingeben!
rem Letzte Zeile im Log "<Notice> <WebLogicServer> <BEA-000365> <Server state changed to RUNNING.>"
 
rem start Mananged Server
rem User und Password eingeben!
start startManagedWebLogic.cmd WLS_REPORTS t3://12cwin2016rep01:7001 
 
rem start NodeManager
start startNodeManager.cmd

Jeweils beim Start den den Usernamen und das Passwort des Weblogic Administrators angeben (Weblogic/admin1234 in meinem Beispiel).

Später wird dann das Passwort noch hinterlegt um diese Eingabe zu vermeiden.

Umgebung überprüfen und Reports fertig einrichten

In älteren Umgebungen kann über die Datei $ORACLE_HOME\install\portlist.ini genau geprüft werden, welche Ports bei der Installation vergeben wurde, in dieser Version ist die Datei leider leer, ärgerlich, evtl. ein Bug?

Die URLS:
Produkt oder KomponenteURL SchemaBeispiel
Administration Server Consolehttp://host:port/consolehttp://12cwin2016rep01:7001/console
Enterprise Manager Consolehttp://host:port/emhttp://12cwin2016rep01:7001/em
Oracle Formshttp://host:port/forms/frmservlet nicht installiert
Oracle Reportshttp://host:port/reports/rwservlethttp://12cwin2016rep01:9002/reports/rwservlet
Enterprise Manager Console aufrufen und prüfen

Über die EM Console http://12cwin2016rep01:7001/em kann der Status der gesamten „Farm“ ReportSPA überprüft werden (Anmelden mit WebLogic und dem bei der Installation verwendeten Passwort):

Oracle WebLogic Administration Server Console aufrufen und prüfen

Über die Oracle WebLogic Administration Server Console http://12cwin2016rep01:7001/console prüfen ob die Domain erreichbar und konfigurierbar ist:

Reports zu Ende konfigurieren

Leider legt der Domain Wizard dann zum Schluss doch nicht alle benötigten Komponenten für Oracle Reports an, sehr ärgerlich.

siehe auch ⇒ Oracle Reports 12c: First Step to Complete After a New Forms/Reports 12c Install and Configuration Environment (Doc ID 2072671.1)

Nacharbeiten:

cd D:\oracle\fmw\oracle_common\common\bin
 
wlst.cmd
 
connect('weblogic','admin1234','localhost:7001')
 
createReportsToolsInstance(instanceName='reptools1',machine='AdminServerMachine')
 
exit()

In Produktion muss dann nochmals getestet werden ob die Tools Instance eingespart werden kann „createReportsServerInstance(instanceName='rep_server1',machine='AdminServerMachine'“, bei Problemen dann doch anlegen!

Weblogic wieder stoppen

Ins Verzeichnis (Domain Home ) D:\oracle\fmw\user_projects\domains\SPAReport\bin wechseln und von dort die WebLogic Server stoppen (erste den Managend Server und dann den Admin Server):

cd D:\oracle\fmw\user_projects\domains\SPAReport\bin
 
REM Managed Server
stopManagedWebLogic.cmd WLS_REPORTS t3://12cwin2016rep01:7001 
 
 
REM AdminServer
stopWebLogic.cmd 
 
 
REM NodeManager
stopNodeManager.cmd

Auto Start einrichten

Leider lässt sich ein WebLogic Service unter MS Windows nicht so einfach aufsetzen, etwas Scripting und Fehlersuche ist dazu notwendig.

Vorbereitung: Sicherheitshalber in der Umgebung für den aktuellen USER (nur hier!!) die Enviroment Variable „ORACLE_HOME=d:\oracle\fwm“ hinterlegen

Ablauf:

  • WebLogic Admin Server , Managed Server Dienst und Node Manage einrichten

Im Folgenden die Details (zur Zeit in der Reihenfolge bei der Fehlersuche .-))

WebLogic Admin und Managed Server + Node Manager

Der WebLogic Server muss allerdings noch als Dienst eingerichtet werden.

  • Datei „boot.properties“ für die Password Abfrage anlegen
  • Ein eigenes Script für das Anlegen des Service vorbereiten
  • Die Oracle WebLogic Scripts patchen
    • installSvc.cmd für den Service Namen und den Classpath als TXT Datei
    • commEnv.cmd für den Produktion Mode

Passwort hinterlegen

In einer produktiven Umgebung fragt WebLogic beim Start nach dem Passwort.

Passwort Nachfrage beim Start abschalten:

Mit der Datei boot.properties können User und Password hinterlegt werden.

Pfad in unseren Fall unter D:\oracle\fmw\user_projects\domains\SPAReport\servers\AdminServer\security und D:\oracle\fmw\user_projects\domains\SPAReport\servers\WLS_REPORTS\security:

cd D:\oracle\fmw\user_projects\domains\ReportSPA\servers\AdminServer
mkdir security
cd security

REM Passwörter und User in Klarschrift eingeben, wird beim nächsten Start verschlüsselt
 
notepad  boot.properties
 
username=WebLogic
password=admin1234
 
cd D:\oracle\fmw\user_projects\domains\SPAReport\servers\WLS_REPORTS\
mkdir security
cd security
 
notepad  boot.properties
 
username=WebLogic
password=admin1234

Nach dem Start wird das Passwort verschlüsselt und die Datei neu geschrieben.

Script installSvc.cmd und commEnv.cmd patchen

Für das Anlegen des Service unter Windows hat Oracle dem WebLogic Server Home im „$FMW_HOME/wlserver\server\bin“ Verzeichnis das das Script installSvc.cmd und installNodeMgrSvc.cmd zur Verfügung gestellt.

Allerdings muss das Script D:\oracle\fmw\wlserver\server\bin\installSvc.cmd noch um einige Punkte angepasst werden:

  • Sicherungskopie erstellen
  • Damit auch alle Oracle Relevanten Dienste untereinanderstehen, in der letzen Zeile des Scripts „ installSvc.cmd“ den Text „-svcname:„beasvc “ in “-svcname:„Oracle WebLogic “ anpassen
    rem *** Install the service
    "%WL_HOME%\server\bin\%WLSVC_EXE_TO_USE%" -install -svcname:"Oracle Weblogic %DOMAIN_NAME%_%SERVER_NAME%" ....
  • Klassenpfad aus dem Domain Home verwenden
    REM Line 91
    REM Aufruf der commEnv.cmd auskommentieren
    REM Umgebung Variablen der Domain einarbeiten
    call D:\oracle\fmw\user_projects\domains\SPAReport\bin\setDomainEnv.cmd
  • Klassenpfad in eine Datei schreiben und Dateipfad als neue Klassenpfad verwenden, dazu die beiden folgenden Zeilen hinzufügen
    set CLASSPATH=%WEBLOGIC_CLASSPATH%;%CLASSPATH%
    REM um Line  134 herum
    REM Classpath in eine Datei schreiben und diesen Pfad in die Classpath  Variable kopieren
    rem *** save the Classpath
    echo %CLASSPATH% > D:\oracle\fmw\user_projects\domains\SPAReport\%DOMAIN_NAME%_%SERVER_NAME%.classpath.txt
    set CLASSPATH=@D:\oracle\fmw\user_projects\domains\SPAReport\%DOMAIN_NAME%_%SERVER_NAME%.classpath.txt
  • Produktion Mode auf True setzen
    REM Line 28
    Rem Zeile mit PRODUCTION_MODE= auskommentieren und hardcodiert auf true setzen
    set  PRODUCTION_MODE=true

Auch das Script D:\oracle\fmw\wlserver\server\bin\installNodeMgrSvc.cmd kann noch um einige Punkte optimiert werden:

  • Damit die Dienstbenennung gleich wie oben ist in der Zeile 134 statt PROD_NAME gleich -svcname:„Oracle Weblogic NodeManager (%BAR_WL_HOME%)“ eintragen.
  • Klassenpfad aus einer Datei einlesen um keine Limits zu überschreiben
    REM Line  66
    REM Classpath in eine Datei schreiben und diesen Pfad in die Classpath  Variable kopieren
    rem *** save the Classpath
    echo %CLASSPATH% > D:\oracle\fmw\user_projects\domains\SPAReport\%DOMAIN_NAME%_%SERVER_NAME%_nodemanager.classpath.txt
    set CLASSPATH=@D:\oracle\fmw\user_projects\domains\SPAReport\%DOMAIN_NAME%_%SERVER_NAME%_nodemanager.classpath.txt

Skript zum Anlegen des Dienstes erstellen

Für die eigene Domain unter dem „Oracle Domain Home“ wie „D:\oracle\fmw\user_projects\domains\ReportSPA“ für das Anlegen des Services folgende cmd Datei anlegen und aufrufen:

installServiceSPAReport.cmd
SETLOCAL
set DOMAIN_NAME=SPAReport
set USERDOMAIN_HOME=D:\oracle\fmw\user_projects\domains\SPAReport
set PRODUCTION_MODE=true
set JAVA_VENDOR=Sun
set JAVA_HOME=D:\Java\jdk1.8.0_152
set WLS_HOME=D:\oracle\fmw\wlserver
 
set SERVER_NAME=AdminServer
set MEM_ARGS=-Xms256m -Xmx512m
call "%WLS_HOME%\server\bin\installSvc.cmd"
 
set SERVER_NAME=WLS_REPORTS
set MEM_ARGS=-Xms256m -Xmx1024m
set ADMIN_URL=http://12cwin2016rep01:7001
call "%WLS_HOME%\server\bin\installSvc.cmd"
 
set WL_HOME=D:\oracle\fmw\wlserver
set MW_HOME=D:\oracle\fmw
set MEM_ARGS=-Xms256m -Xmx512m
set NODEMGR_HOME=D:\oracle\fmw\user_projects\domains\SPAReport\nodemanager
call "%WLS_HOME%\server\bin\installNodeMgrSvc.cmd"
 
 
ENDLOCAL

Nodemanager Datei Datei DemoIdentity.jks an die gewünschte Stelle für den Dienst kopieren

mkdir D:\oracle\fmw\user_projects\domains\SPAReport\nodemanager\security 
cp D:\oracle\fmw\user_projects\domains\SPAReport\security\DemoIdentity.jks D:\oracle\fmw\user_projects\domains\SPAReport\nodemanager\security\DemoIdentity.jks

Aufrufen in einer administrativen DOS Session:

cd D:\oracle\fmw\user_projects\domains\SPAReport\bin
 
installServiceSPAReport.cmd

Erzeugt einen Dienst mit Namen:

  • Oracle WebLogic ReportSPA_AdminServer
  • Oracle WebLogic ReportSPA_WLS_REPORTS
  • Oracle WebLogic NodeManager (D_oracle_fmw_wlserver)

Nun die Abhängigkeiten der beiden Dienste anlegen (DOS Shell!):

sc config "Oracle WebLogic SPAReport_WLS_REPORTS" depend= "Oracle WebLogic NodeManager (D_oracle_fmw_wlserver)/Oracle WebLogic SPAReport_AdminServer"
[SC] ChangeServiceConfig SUCCESS

(auf das Leerzeichen nach dem “=„ achten!)

Pfad überprüfen!

Pfad Angabe unter „HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleWebLogic SPAReport_WLS_REPORTS“ prüfen und „D:\oracle\fmw\bin“ mit in den Pfad aufnehmen falls fehlt!

Um die Dienst wieder zu löschen (DOS Shell!):

sc delete "Oracle WebLogic ReportSPA_AdminServer"
sc delete "Oracle WebLogic ReportSPA_WLS_REPORTS"
sc delete "Oracle WebLogic NodeManager (D_oracle_fmw_wlserver)"

Beispiel dazu im Netz:

Fehler beim Start eines WebLogic Service debuggen

Kann ein eingerichtet Dienst nicht gestartet werden, kann mit “ wlsvcX64.exe„ (D:\oracle\fmw\wlserver\server\bin) der Dienst getestet werden.

Fehler weblogic.nodemanager.common.ConfigException: Identity key store file not found:

cd D:\oracle\fmw\wlserver\server\bin> 
 
.\wlsvcX64.exe -debug "Oracle WebLogic NodeManager (D_oracle_fmw_wlserver)"
 
....
<Nov 10, 2017 12:33:54 AM PST> <SEVERE> <Fatal error in NodeManager server>
weblogic.nodemanager.common.ConfigException: Identity key store file not found: D:\oracle\fmw\user_projects\domains\SPAR
eport\nodemanager\security\DemoIdentity.jks
        at weblogic.nodemanager.server.SSLConfig.loadKeyStoreConfig(SSLConfig.java:225)
..

Lösung: Datei DemoIdentity.jks an die gewünschte Stelle kopieren

cp D:\oracle\fmw\user_projects\domains\SPAReport\security\DemoIdentity.jks D:\oracle\fmw\user_projects\domains\SPAReport\nodemanager\security\DemoIdentity.jks

Fehler WebLogic.management.ManagementException: Booting as admin server, but servername does not match:

wlsvcX64.exe -debug "Oracle WebLogic SPAReport_WLS_REPORTS"
..
There are 1 nested errors:
 
WebLogic.management.ManagementException: Booting as admin server, but servername, WLS_REPORTS, does not match the admin server name, AdminServer
..

Lösung: Parameter ADMIN_URL beim Anlegen des Service hat gefehlt!

Nächster Fehler „JRF Startup Class“, java.lang.ClassNotFoundException: oracle.jrf.wls.JRFStartup:

wlsvcX64.exe -debug "Oracle WebLogic SPAReport_WLS_REPORTS"
 
 
<Dec 28, 2014 10:58:40 AM PST> <Critical> <WebLogicServer> <BEA-000286> <Failed to invoke startup class 
"JRF Startup Class", java.lang.ClassNotFoundException: oracle.jrf.wls.JRFStartup
java.lang.ClassNotFoundException: oracle.jrf.wls.JRFStartup

Problem: Der Classpath ist, falsch!

Lösung:

    • D:\oracle\fmw\wlserver\server\bin\installSvc.cmd anpassen
      REM Line 58
      REM Aufruf der commEnv.cmd auskommentieren
      REM Umgebungvariablen der Domain einarbeiten
      call D:\oracle\fmw\user_projects\domains\ReportSPA\bin\setDomainEnv.cmd
    • D:\oracle\fmw\wlserver\common\bin\commEnv.cmd
      REM Line 112
      Rem Zeile mit PRODUCTION_MODE= auskommentieren und hardcodiert auf true setzen
      set  PRODUCTION_MODE=true
  • Nun ist aber der Java Classpath viel zu lang um als Variable übergeben werden zu können!
    • Classpath als Text datei speichern dazu
    • D:\oracle\fmw\wlserver\server\bin\installSvc.cmd anpassen
      REM Line  104
      REM Classpath in eine Datei schreiben und diesen Pfad in die Classpath  Variable kopieren
      rem *** save the Classpath
      echo %CLASSPATH% > D:\oracle\fmw\user_projects\domains\ReportSPA\%DOMAIN_NAME%_%SERVER_NAME%.classpath.txt
      set CLASSPATH=@D:\oracle\fmw\user_projects\domains\ReportSPA\%DOMAIN_NAME%_%SERVER_NAME%.classpath.txt
  • Service wieder entfernen und über das Script anlegen

siehe auch die folgenden Quellen:

Fehler „java.lang.UnsatisfiedLinkError: no rwu in java.library.path“

Wird der WLS_REPORT über den Dienst gestartet, startet später die Report Tool Instance nicht!

Fehler:

# check Log
# d:\oracle\fmw\user_projects\domains\SPAReport\servers\WLS_REPORTS\logs\WLS_REPORTS-diagnostic.log
...
2017-11-17T10:14:36.518+01:00] [WLS_REPORTS] [INCIDENT_ERROR] [DFW-40104] [oracle.dfw.incident] [tid: Thread-70] [userId: <anonymous>] [ecid: 0000Lz9GWmC7m3yTw6CCwW1Q3eXp000001,0:1:3] [errid: 8] [detailLoc: D:\oracle\fmw\user_projects\domains\SPAReport\servers\WLS_REPORTS\adr\diag\ofm\reportpisa\wls_reports\incident\incdir_8] [probKey: DFW-99998 [java.lang.UnsatisfiedLinkError][oracle.reports.util.EnvironmentGlobal.<init>][reports]] [APP: reports] [partition-name: DOMAIN] [tenant-name: GLOBAL] incident 8 created with problem key "DFW-99998 [java.lang.UnsatisfiedLinkError][oracle.reports.util.EnvironmentGlobal.<init>][reports]"
...
 
# D:\oracle\fmw\user_projects\domains\SPAReport\servers\WLS_REPORTS\adr\diag\ofm\reportpisa\wls_reports\incident\incdir_8\readme.txt
 
...
java.lang.UnsatisfiedLinkError: no rwu in java.library.path
...

Lösung:

Pfad Angabe unter „HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleWebLogic SPAReport_WLS_REPORTS“ prüfen und „D:\oracle\fmw\bin“ mit in den Pfad aufnehmen!


Wichtige Config Datei Speicher Orte

Die gesamte Installation ist dann doch teilweise etwas unübersichtlich.

In meine Falls sind folgende Homes entstanden:

  1. ORACLE_HOME = D:\oracle\fmw
  2. MW_HOME = D:\oracle
  3. WL_HOME = D:\oracle\fmw\wlserver
  4. DOMAIN_HOME = D:\oracle\fmw\user_projects\domains\SPAReport

Node Manager

Konfigurationsdatei: ($DOMAIN_HOME\nodemanager\nodemanager.properties) Wie ⇒ D:\oracle\fmw\user_projects\domains\SPAReport\nodemanager\nodemanager.properties

Reports Conf

Konfigurationsdatei: $DOMAIN_HOME\nodemanager\rwserver.conf

Wie ⇒ D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration\rwserver.conf

RW Servlet Properties

Konfigurationsdatei: $DOMAIN_HOME\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration\rwservlet.properties

Wie ⇒ D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration\rwservlet.properties

CGI CMD

Parameter Datei für Reportaufrufe

Konfigurationsdatei: $DOMAIN_HOME\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration\cgicmd.dat

Wie ⇒ D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration\cgicmd.dat

Vergleich mit älteren Versionen

siehe diese Support Node ⇒ New 12c Directory Paths for Reports Configuration Files (Doc ID 2071812.1)



Eigene Fonts einbinden

Unter Windows sollten die Fonts auf dem System oder vom Drucker zwar automatisch gefunden werden, das Font Mapping muss aber in der Datei „uifont.ali“ hinterlegt werden.

Ein Suchpfad für die „uifont.ali“ dazu ist unter Windows $DOMAIN_HOME\config\fmwconfig\components\ReportsToolsComponent\<reports_tools_name>\tools\common

⇒ „D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\components\ReportsToolsComponent\reptools1\tools\COMMON“

Siehe auch ⇒ https://docs.oracle.com/middleware/12211/formsandreports/use-reports/pbr_font003.htm#i1009745

Die Datei kann auch über dem EM administriert werden, siehe in der Doku ⇒ https://docs.oracle.com/middleware/12211/formsandreports/use-reports/pbr_adminem004.htm#RSPUB0511

Ablauf:

  1. Fonts in das Betriebssystem installieren (rechte Mouse Taste auf der *.PFM Datei, Installieren, funktioniert auch mit Mehrfach Auswahl)
  2. Fonts müssen im Reports Path liegen, wie D:\oracle\fmw\reports\printers
  3. uifont.ali anpassen und in den Suchpfad kopieren
    1. Ein Suchpfad für die „uifont.ali“ dazu ist unter Windows $DOMAIN_HOME\config\fmwconfig\components\ReportsToolsComponent\<reports_tools_name>\tools\common UND $ORACLE_HOME\tools\common

Problem: Font wird nicht angezeigt bzw. verwendet - keine Fehlermeldung

uifont.ali an diesen Stellen abgelegt:

  • D:\oracle\fmw\frcommon\templates\tk\config
  • D:\oracle\fmw\tools\common
  • D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\components\ReportsToolsComponent\reptools1\guicommon\tk\admin\
  • D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\components\ReportsToolsComponent\reptools1\tools\COMMON

Keine Besserung nach dem Neustart des WLS_REPORTS, ABER nach dem Neustart des ganzen Servers hat es funktioniert! Evlt. treten hier Cache Effekte auf, es kann daher sein das eine der obigen Locations unnötig ist.

Problem: REP-1924: Font file GPISymbol.pfm cannot be found.

Lösung ⇒ Fonts müssen im Reports Path liegen, wie D:\oracle\fmw\reports\printers

Problem: Font wird nicht gefunden

BUG! ⇒ On Windows Platform, the In-Process Reports Server Reads Uifont.ali From Incorrect Directory in Version 11g/12c (Doc ID 965582.1)

Die uifont.ali muss auch im Verzeichnis $ORACLE_HOME\tools\common wie ⇒ D:\oracle\fmw\tools\common liegen

Bei Problemen Test Report über rwclient auf rufen und Log File unter „$DOMAIN_HOME/servers/<reports_server_name>/logs/reports/rwEng-id_diagnostics.log“ prüfen, und über http://12cwin2016rep01:9002/reports/rwservlet/showenv prüfen auf was die REPORTS_PATH Variable zeigt!

Tracing einschalten über D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration\logging.xml ⇒NOTIFICATION:1 auf TRACE:32 im Abschnitt „logger name='oracle.reports.engine'“

Siehe auch ⇒ https://blogs.oracle.com/proactivesupportdevtools/tracing-in-oracle-reports-12c


Testreport erstellen und aufrufen

Nach der Installation kann nun der erste Testbericht erstellt und aufgerufen werden

DB Connect konfigurieren für den Report Builder

Den Datenbank Connect für den Report Builder wird konfigurieren indem die sqlnet.ora und entsprechende tnsnames.ora unter “%DOMAIN_HOME%\config\fmwconfig„ anlegt wird.

Der Pfad wird in der Datei „D:\oracle\fmw\user_projects\domains\SPAReport\reports\bin\reports.bat“ über die Umgebungsvariable TNS_ADMIN gesetzt, diese zeigt über “%DOMAIN_HOME%\config\fmwconfig„ in unseren Fall auf D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig.

Report Bilder aufrufen

cd D:\oracle\fmw\user_projects\domains\SPAReport\reports\bin
 
D:\oracle\fmw\user_projects\domains\SPAReport\reports\bin\rwbuilder.bat

Über das „Stecker Symbol“ an der Datenbank anmelden und über den Report Wizard einen einfachen Bericht wie „select * from scott.emp“ anlegen und speichern unter zum Beispiel D:\app\reports.

Reports Engine für den Aufruf des Berichts konfigurieren

Bei einer Single Server Oracle Reports Installation liegt die Konfigurationsdatei rwserver.conf unter „ORACLE_INSTANCE_Home\config\ReportsServerComponent\server_name“.

In unseren Fall D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration\rwserver.conf

Da unser Bericht unter d:\app\reports liegt, in der Datei das Attribute „sourceDir“ anpassen (zuvor Sicherungskopie anlegen!):

<engine id="rwEng" class="oracle.reports.engine.EngineImpl" maxEngine="1" minEngine="1" engLife="50">
      <property name="sourceDir" value="d:\app\reports" />
      <property name="tempDir" value="D:\temp"/>
      <property name="keepConnection" value="yes"/>
</engine>
 
<!-- Folder Access gleich mit konfigurieren -->
<folderAccess>
  <read>D:\app\reports</read>
  <write>D:\app\output</write>
</folderAccess>

Performance Einstellung können hier auch hier getätigt werden wie “<engine id=„rwEng“ class=„oracle.reports.engine.EngineImpl“ maxEngine=„50“ minEngine=„1“ engLife=„50“ jvmOptions=„-Xms1024m -Xmx2048m“>„

WLS_REPORT über EM neu starten

Reports Servlet Admin Oberfläche erlauben

Um die Report Jobs besser überwachen zu können für die Reports Job Oberfläche den User Weblogic die Reports Rolle RW_ADMINISTRATOR und RW_MONITOR zuweisen. Evlt. WLS_REPORTS neu starten!

Über http://12cwin2016rep01:9002/reports/rwservlet/getserverinfo kann dann zum Beispiel die Umgebung abgefragt werden.

Ablauf:

  • Aufruf EM über http://12cwin2016rep01:7001/em
  • Menü Punkt „Weblogic Domain\Security\Application Roles“ aufrufen
  • In „Application Stripe“ „Reports“ auswählen und suchen lassen
  • Rolle RW_ADMINISTRATOR anwählen und auf „Edit“ klicken
  • Über den Bereich „Members“ den User Weblogic hinzufügen „Add klicken, Type=User auswählen, suchen, zuordnen“

Siehe auch für mehr Details ⇒ REP-56071 When Attempt to Access In-Process Reports Server in Reports 12c (Doc ID 2072876.1)


Test 1 : Bericht über "rwclient" aufrufen:

Zuvor am besten mit http://12cwin2016rep01:9002/reports/rwservlet/startserver den Reportserver auch starten, damit nach einem Neustart und einem ersten Aufruf keine Fehler auftreten.

rwclient.bat aus Domain Home aufrufen!

mkdir d:\app\output
 
 
cd D:\oracle\fmw\user_projects\domains\SPAReport\reports\bin
 
 
.\rwclient.bat server=rep_wls_reports_12cwin2016rep01 report=emp_rep01.rdf userid=scott/tiger@gpi desformat=pdf DESTYPE=file DESNAME=D:\app\output\emp_rep01.pdf authid=weblogic/admin1234

 
REM Bei Fehlern Logfile prüfen: 
 
cd D:\oracle\fmw\user_projects\domains\SPAReport\servers\WLS_REPORTS\logs\reports\
 
notepad rwserver_diagnostic.log
Fehler Rep-0238: Authentication failed

hmm, rwclient kann sich nicht am Report Server anmelden, hier fehlt noch etwas in der Konfig …

siehe ⇒ Rwclient.sh Fails With REP-0238: Authentication Failed in Oracle Report 12c (Doc ID 2162851.1) Lösung: authid=weblogic/<password> Parameter mit übergeben!

Oder Securtiy ausschalten ⇒ How to Disable Security For The Reports Server 12C and Execute Webcommands (Doc ID 2108256.1)

Bzw. in der rwserver.conf die SecurityID auf <job JobTyle=„report“ …> entfernden und in rwservlet.properties wieder für den Zugriff auf die Admin Oberfläche “<webcommandaccess>L2</webcommandaccess>„ einfügen.

UNSICHER! Nur für Training oder wenn man weiß was man tut!!

Fehler Rep-0177 - REP-56133: Access is denied to write to the specific location

siehe ⇒ Reports 12c: FolderAccess Wildcard Does Not Work – REP-177 & REP-56133 (Doc ID 2107541.1)

rwserver.conf anpassen:

<folderAccess>
  <read>D:\app\reports</read>
  <write>D:\app\output</write>
</folderAccess>

WS_REPORT neu über den EM starten

Fehler REP-50127 : File output cannot be written to.

Bei Fehlern Logfile prüfen:

cd D:\oracle\fmw\rep01\diagnostics\logs\ReportsServerComponent\RptSvr_shadb01_rep01

notepad rwserver_diagnostic.log

rwserver_diagnostic.log

Mein Fehler ⇒ Bei obigen Befehlt den Dateinamen vergessen .-)

Test 2 - Report über rwservlet aufrufen

Die Konfigurationsdateien des Reports Servlets finden sich unter „DOMAIN_HOME/config/fmwconfig/servers/<WLS_SERVER_NAME>/applications/reports_<version>/configuration“ in unseren Fall unter „D:\oracle\fmw\user_projects\domains\ReportSPA\config\fmwconfig\servers\WLS_REPORTS\applications\reports_11.1.2\configuration“.

URL:

http://12cwin2016rep01:9002/reports/rwservlet?server=rep_wls_reports_12cwin2016rep01+report=emp_rep01.rdf+userid=scott/tiger@gpi+desformat=pdf+DESTYPE=cache

OK!

Dokumentation:

Test 3 - KeyMap Datei einrichten

Mit der KeyMap Datei kann zum Beispiel der User Login in der URL zum Aufruf eines Reports „verborgen“ werden.

Dazu liegt unter “%DOMAIN_HOME%/config/fmwconfig/servers/<WLS_SERVER_NAME>/applications/reports_<version>/configuration/„ die Datei cgicmd.dat. In unserem Beispiel unter D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration

Um unser Beispiel nun ohne den User und das Password angeben zu können, folgenden Eintrag in der Datei hinzufügen:

emp_user:  userid=scott/tiger@vds desformat=pdf DESTYPE=cache %*

Auf das %* am Ende achten!

URL:

http://12cwin2016rep01:9002/reports/rwservlet?emp_user&server=rep_wls_reports_12cwin2016rep01&report=emp_rep01.rdf

Problem *REP-52005: The specified key emp_user does not exist in the key map file.

Seht in der rwservlet.properties für die Eigenschaft reloadkeymap ein „no“ oder ist dort nicht im Detail definiert (Default ist „no“), wird die Keymap Datei nur beim Start neu ausgelesen, d.h. der Managed Server WLS_REPORTS muss neu über die Admin Console gestartet werden.

Soll das vermieden werden, in der rwservlet.properties die Eigenschaft reloadkeymap auf „yes“ setzen, das geht allerdings ein wenig zu Lasten der Performance, da nun bei jedem Aufruf die Keymap Datei ausgelesen wird. Bei Entwicklung System ist das aber wohl die bessere Einstellung.

Datei rwservlet.properties:

<reloadkeymap>yes</reloadkeymap>

Dokumentation:

Problem REP-50004: No report is specified on the command line.

Auf das %* am Ende in der Zeile in der cgicmd.dat achten!

Bestehende Reports neu übersetzen

Sollen Bericht zum Beispiel vom *rdf Format in das *.rep Format über die Kommandozeile neu übersetze werden, hilft dabei das Programm „rwconverter.exe“.

Die dazu notwendigen Parameter können über die GUI eingegeben oder die Kommando Zeile aufgerufen werden.

GUI:

D:\oracle\fmw\user_projects\domains\SPAReport\reports\bin\rwconverter.bat

 Oracle Reports Converter GUI

Batch Aufruf (alles dann in einer Zeile!):

D:\oracle\fmw\user_projects\domains\SPAReport\reports\bin\rwconverter.bat 
userid=scott/tiger@gpi 
batch=yes 
source=D:\app\old_reports\emp_rep01.rdf 
dest=D:\app\reports\emp_rep03.rep
stype=rdffile 
dtype=repfile 
overwrite=yes 
compile_all=yes
logfile=d:\temp\converter.txt   

Mehr über Reports

Tool rwdiag

Wie finden sich die Reports Server untereinander?

D:\oracle\fmw\user_projects\domains\SPAReport\reports\bin> .\rwdiag.bat -findAll
 
Reading the rwnetwork.conf from :D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\components\ReportsToolsC
omponent\reptools1\rwnetwork.conf
Broadcast mechanism used to locate servers
------------------------------------------
Channel address = 228.5.6.7
Channel port  = 14021
 
(1) Name = rep_wls_reports_12cwin2016rep01 : Type = server : Host = 12cWIN2016REP01

siehe auch Fusion Middleware Publishing Reports to the Web with Oracle Reports Services E.1 Overview of rwdiag

Die Architektur der Report Services

Programmierung mit Oracle Reports:


Betrieb überwachen

Über ein Monitor Tool wie PRTG Network Monitor Status info des Servers über ein XML Format aufrufen.

Besser dafür natürlich einen Überwachtungs User anlegen und die Monitor Rolle granten.

(Über WebLogic Server Administration Console, expand Security —> Realms / auf das Realm / User )

http://12cwin2016rep01:9002/reports/rwservlet/getserverinfo?authid=weblogic/admin1234&statusformat=XML
 
<serverInfo name="rep_wls_reports_12cwin2016rep01" version="12.2.1.3.0">
<host>12cWIN2016REP01</host>
<startTime>1510925427808</startTime>
<queue maxQueueSize="1000"/>
<engine id="rwEng" activeEngine="1" runningEngine="0" totalBusyEngines="0" totalIdleEngines="1">
<engineInstance name="rwEng-0" processId="3508" status="1" runJobId="-1" curJobExecTime="-1" idleTime="2033" numJobsRun="3" lifeLeft="47" nls="AMERICAN_AMERICA.WE8MSWIN1252" totalRunTime="2" totalIdleTime="43"/>
</engine>
<engine id="rwURLEng" activeEngine="0" runningEngine="0" totalBusyEngines="0" totalIdleEngines="1"/>
<performance>
<property name="successfulJobs" value="33"/>
<property name="currentJobs" value="0"/>
<property name="futureJobs" value="0"/>
<property name="transferredJobs" value="0"/>
<property name="failedJobs" value="15"/>
<property name="longRunningJobs" value="0"/>
<property name="potentialRunawayJobs" value="0"/>
<property name="averageResponseTime" value="1512.24"/>
<property name="averageElapsedTime" value="0.0"/>
<property name="avgQueuingTime" value="91.94"/>
</performance>
<connection connectionsUsed="1" connectionsAvailable="49"/>
<isSecure>1</isSecure>
<engineInfo maxEnginesUsed="1" avgEnginesUsed="1.0"/>
<avgAuthTime>5.14</avgAuthTime>
</serverInfo>

Und entsprechend die Metriken abfragen.


Wartungs und Verwaltungsaufgaben

Umgebung analysieren

Unter E:\oracle\fmw\user_projects\domains\ReportPisa\reports\bin\ mit rwdiag.bat -findAll die Umgebung analysieren

Port des Report Servlets anpassen

Nach der Installation stellte sich heraus, dass ein anderer Port für das Report rwservlet verwendet werden soll.

Über die Administrative Console der Domain den Listen Port über die Oberflächen anpassen:

  • „Lock & Edit“ aktivieren
  • Managed Server über „enviroment\servers\“ Link „WLS_REPORTS“ auswählen
  • Listen Port anpassen, zum Beispiel von zuvor 9001 auf Port 80
  • Save
  • Mit „Activate Changes“ Änderung übernehmen
  • Manged Server stoppen und neu starten
  • Testen

Doku:

Mail Server einbinden

Über die rwserver.conf kann der Mail Server für den Versandt von Reports eingebunden werden.

Pfad: $DOMAIN_HOME\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration\rwserver.conf wie ⇒ D:\oracle\fmw\user_projects\domains\SPAReport\config\fmwconfig\servers\WLS_REPORTS\applications\reports_12.2.1\configuration\rwserver.conf

<pluginParam name="mailServer" value="%MAILSERVER_NAME%">
      <!--property name="enableSSL" value="yes"/-->
 
      <!--UserName and Password that can be used to connect to the mail server-->
 
      <!--property name="mailUserName" value="%MAIL_USERID%" /-->
      <!--property name="mailPassword" value="%MAIL_PASSWORD%"/-->
   </pluginParam>

Werte entsprechend eintragen, siehe auch ⇒ https://docs.oracle.com/middleware/1221/formsandreports/use-reports/pbr_conf002.htm#g1024234

SSL Konfiguration

Report automatisch per Zeitplan erstellen

Mit „rwclient“ und „rwservlet“ können Reports so in die Queue gestellt werden, da ein Schedule damit umgesetzt werden kann. Dabei wird mit dem Keyword „SCHEDULE=string“ das Schedulling gesteuert.

Wert: [FREQ from] TIME [retry {n} after LEN expires {on|after} time|n]

FREQ hourly | daily | weekly | monthly | {every {LEN | DAYREPEAT}} | {last {WEEKDAYS | weekday | weekend} before {n}+}
LEN {n}+ {minute[s] | hour[s] | day[s] | week[s] | month[s]}
DAYREPEAT {first | second | third | fourth | fifth} WEEKDAYS of month
WEEKDAYS mon | tue | wed | thu | fri | sat | sun
TIME now | CLOCK [DATE]
CLOCK h:m | h:mm | hh:m | hh:mm
DATE today | tomorrow | {MONTHS {d | dd} [,year]}
MONTHS jan | feb | mar | apr | may | jun | jul | aug | sep | oct | nov | dec
EXPIRES on {today | tomorrow | {MONTHS {d | dd} [,year]}}|after n

siehe auch https://docs.oracle.com/middleware/12211/formsandreports/use-reports/pbr_cla008.htm#RSPUB23888

Beispiel (alles später in einer Zeile aufrufen!):

cd D:\oracle\fmw\user_projects\domains\SPAReport\reports\bin>
 
 
rwclient.bat 
server=rep_wls_reports_12cwin2016rep01
report=emp_rep01.rdf 
userid=scott/tiger@gpi
desformat=pdf 
DESTYPE=file 
DESNAME=D:\app\output\emp_rep01.pdf
SCHEDULE="last weekday before 15 from 12:00 DEC 31, 2017 retry after 1 hour expires after 2"
 

Über http://12cwin2016rep01:9002/reports/rwservlet/showjobs können dann die erzeugen Jobs angezeigt werden.  Oracle Reports 11g Job Scheduler

Dokumentation: Fusion Middleware Publishing Reports to the Web with Oracle Reports Services 18.10 Scheduling Reports to Run Automatically



BUG - Berichtsaufruf nicht möglich REP-3301 / REP-56093

Problem

Nach der Umstellung aus der alten Umgebung (Report 11g) lässt sich ein Bericht nicht mehr ausführen, im Logfile ist außer einem nichtssagenden „REP-3301 - Error occurred in Error Checking “ zu finden.

Ein Aufruf in „rwbuilder“ führt zum gleichen Ergebnis.

Ein Trace brachte gar nichts, es wird nichts geloggt, die Ausführung wird anscheinend schon sehr früh in der Verarbeitungskette abgebrochen.

LÖSUNG

Bei Vergleich der alten und der neuen Umgebung zeigt sich das die NLS_LANG Setting unterschiedlich ist!

Mit "http://<server_name>:9002/reports/rwservlet/getserverinfo abfragen:

  • Prod Alt: GERMAN_GERMANY.WE8MSWIN1252
  • Prod Neu: AMERICAN_AMERICA.WE8MSWIN1252

In der Registry den Key NLS_LANG unter „HKEY_LOCAL_MACHINE\SOFTWARE\Oracle\KEY_OracleHome1“ auf den Wert der alten Produktion gesetzt, WLS_REPORTS neu gestartet ⇒ GERMAN_GERMANY.WE8MSWIN1252 und der Bricht funktioniert wieder!

:-)



Report Builder für den Entwicklerarbeitsplatz aufsetzen

Leider kann nur it der Version 12 der 12c Forms Builder auch Standalone aufgesetzt werden.

Sehr ärgerlich …

Für einen Developer Arbeitsplatz heißt das um umkehrschluss das für Reports eine komplette Umgebung aufgesetzt werden muss.

… Rports Builder can only be obtained as part of 'Forms and Reports Deployment' option ….

8-O

Forms Builder installieren

Vorbereitung - Installation Java 8 152

Setzen JAVA_HOME als Umgebungsvariable (sonst startet der Wizard später nicht!!)

Ablauf einer Installation auf einen Windows 10 Client:

# Dateien auspacken
cd D:\install
expand-archive .\V886455-01_1of2.zip
expand-archive .\V886455-01_2of2.zip
cp .\V886455-01_2of2\setup_fmw_12.2.1.3.0_fr_win64-2.zip .\V886455-01_1of2\
 
cd D:\install\V886455-01_1of2
 
.\setup_fmw_12.2.1.3.0_fr_win64.exe
  • Step 1 - Welcome ⇒ next
  • Step 2 - Auto Update - Skip Auto Update ⇒ Next
  • Step 3 - Installation Location - d:\oracle\products\fwm ⇒ Next
  • Step 4 - Installation Type - „Standalone Froms Builder“ ⇒ Next
  • Step 5 - JDK Home auswählen
  • Step 6 - Prerequsit Check ⇒ Next
  • Step 7 - Installation Summary ⇒ Install
  • Step 8 - Installation Progress ⇒ Next

Danach unter C:\oracle\product\fmw\forms\common\bin den config_builder.cmd aufrufen , siehe auch dazu

Anleitung dazu ⇒ https://docs.oracle.com/middleware/1221/formsandreports/install-fnr/install.htm#CIHGBBEH

siehe ⇒ https://blogs.oracle.com/proactivesupportdevtools/oracle-forms-and-reports-builders-in-12c

… Rports Builder can only be obtained as part of 'Forms and Reports Deployment' option ….


Probleme

Oracle Reports Server Installation - Problem Self extraction to … failed. beim Aufruf von setup_fmw_12.2.1.3.0_fr_win64.exe

Launcher log file is D:\temp\Temp\2\OraInstall2017-10-25_11-48-04PM\launcher2017-10-25_11-48-04PM.log.
Extracting the installer . . . . Done
Self extraction to D:\temp\Temp\2\sfxAD3.tmp failed.
The log is located here: D:\temp\Temp\2\OraInstall2017-10-25_11-48-04PM\launcher2017-10-25_11-48-04PM.log.
 
Press Enter to exit
 
# Logfile prüfen:=> 
2017-10-25 23:48:04,798 SEVERE [1] com.oracle.cie.nextgen.launcher.Launcher - 
The jar file D:\install\forms\setup_fmw_12.2.1.3.0_fr_win64-2.zip needed for this installer is missing.

⇒ Darauf achten das der Inhalt des zweiten Archives zum ersten kopiert wird!!

sqlplus und tnsping starten nicht ⇒ Fehlermeldung „The program can’t start because MSVCR100.dll is missing from your computer.“

Microsoft Visual C++ 2010 Redistributable Package für x86 und x64 installieren, download über https://www.microsoft.com/en-us/download/details.aspx?id=5555 und https://www.microsoft.com/en-us/download/details.aspx?id=14632

Domain wieder entfernen Um eine Domain wieder zu entfernen:

  • Prüfen das wirklich alle Weblogics die zur Domain gehören gestopt sind
  • Einträge bzgl. der Domain im „$W_HOME/domain-registry.xml“ file entfernen
     <?xml version="1.0" encoding="UTF-8"?>
    <domain-registry xmlns="http://xmlns.oracle.com/weblogic/domain-registry">
      <domain location="D:\oracle\fmw\user_projects\domains\gpi"/>
    </domain-registry>
  • prüfe ob ein globaler Noder Manager im Einsatz ist, falls ja den „nodemanager.domains“ file entfernen
     #Domains and directories created by Configuration Wizard
    #Fri Nov 03 23:03:32 PDT 2017
    gpi=D\:\\oracle\\fmw\\user_projects\\domains\\gpi
  • Domain Dateien aus dem Filesystem löschen
        rm -Rf D:\oracle\fmw\user_projects\applications\gpi
        rm -Rf D:\oracle\fmw\user_projects\domains\gpi

siehe auch https://oracle-base.com/articles/12c/weblogic-12c-create-extend-and-remove-domains

Error

REP-52266: The in-process Reports Server rep_wls_reports_12cwin2016rep01 failed to start.oracle.reports.RWException: IDL:oracle/reports/RWException:1.0

Beim Aufruf von http://12cwin2016rep01:9002/reports/rwservlet/showenv

Lösung: Nach dem Durchlauf der Konfiguration mit dem Domain Wizard fehlt aber noch der notwendige Reports Config Teil, es müssen noch weitere manuelle Schritte durchgeführt werden, siehe oben die manuelle Configuratoin


Quellen

Oracle Support:

  • Information Center: Oracle Fusion Middleware 12c (Doc ID 2274249.2)
  • Quick Reference to Upgrade Forms and Reports From 12.2.1.2.0 To 12.2.1.3.0 (Doc ID 2311784.1)
  • Reports 12c Relevant Notes and Links Index (Doc ID 2073820.1)

Web

Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information
"Autor: Gunther Pipperr"
forms/oracle_reports_12c_r2_windows64.txt · Zuletzt geändert: 2018/01/19 12:48 von Gunther Pippèrr