Announcement

Collapse
No announcement yet.

[SOLVED] Oracle Reports on AIX

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [SOLVED] Oracle Reports on AIX

    I've been fighting an Oracle Reports installation on AIX. Everything has been configured correctly, but every time I run a report, it hangs for about 1 minute and then returns with the following error:
    Code:
    REP-52266: The in-process Reports Server rep_OTMTEST_REPSVR_HOME failed to start.java.lang.InterruptedException: JVMLK007: operation interrupted
    After searching around Metalink, i found Doc #382822.1, which explains exactly why this isn't working. Basically the issue is that the IBM JDK doesn't support headless generation of graphics, so you need to install and configure an XWindows server and hack Oracle Reports to use it. What is this?!?! It's like jumping back to OTM v4.0. Anyways, for your reference, the full details are below

    ------ Disclaimer: Oracle's Copyright, reproduced for informational purposes. ------
    Applies to

    Oracle Reports Developer - Version: 10.1.2.0.2
    AIX5L Based Systems (64-bit)

    Symptoms
    Before executing test.rdf report, OC4J_BI_FORMS is up and running and you are able to execute getserverinfo or showjobs urls for the default in-process reports server:

    a) b) Executing "opmnctl status" shows OC4J_BI_FORMS up and running, in "Alive" status.

    c) Running test.rdf shows REP-52266 and after that, OC4J_BI_Forms could shows status "Stop" executing "opmnctl status"
    d) Any executed report displays error messages as follows:
    REP-52266: The in-process Reports Server <repservername> failed to
    start.java.lang.InterruptedException: JVMLK007: operation interrupted
    OR
    REP-52266: The in-process Reports Server <repservername> failed to
    start.oracle.reports.RWException: IDL:Oracle/reports/RWException:1.0
    OR
    REP-52266: The in-process Reports Server <repservername> failed
    to start.org.omg.CORBA.OBJECT_NOT_EXIST:
    Trace from server: -703082801 at host <ip-address>
    org.omg.CORBA.OBJECT_NOT_EXIST: SERVANT_NOT_FOUND (1)
    Changes
    Fresh installation using the default in-process reports server in AIX

    Cause Reports Manual "Oracle® Application Server Reports Services Publishing Reports to the Web"
    Environment Variables ) -> REPORTS_DEFAULT_DISPLAY ->
    "Usage Notes" indicated REPORTS_DEFAULT_DISPLAY=YES new functionality is not available in AIX box:

    "...This feature is not available on the IBM AIX platform due to lack of functionality in the IBM JDK 1.4 (does not support headless option). For this reason, the dependency on DISPLAY still exists on AIX.
    To revert to the dependency on DISPLAY and use screen fonts (old font look up algorithm):
    Set REPORTS_DEFAULT_DISPLAY=NO
    Remove the screenprinter.ppd entry in the uiscreenprint.txt file.
    Set the DISPLAY variable to the active X-Windows display surface.

    Solution
    To implement the solution, setup DISPLAY enviroment variable instead of the new headless REPORTS_DEFAULT_DISPLAY option executing the following steps:

    1. Backup $ORACLE_HOME/bin/reports.sh and $ORACLE_HOME/opmn/conf/opmn.xml configuration files

    2. Stop OC4J_BI_FORMS were repserver is installed; in-process reports server is a child process of OC4J_BI_FORMS.

    3. Open reports.sh and setup the following environment variables:

    DISPLAY=<ip-address>:0.0 ; export DISPLAY

    REPORTS_DEFAULT_DISPLAY=NO; export REPORTS_DEFAULT_DISPLAY

    Save the changes.

    NOTE: If you do not have Motif installed in your box, you can use XVFB as alternative. You should startup XVFB in AIX as suggested in Note:200474.1 "Comprehensive REP-3000 Troubleshooting and Overview Guide" -> "E) Rep-3000 even with DISPLAY pointing to XVFB process"

    4. Open opmn.xml located in $ORACLE_HOME/opmn/conf and look for process-type id="OC4J_BI_Forms"

    Change DISPLAY environment variable from the default value:

    <process-type id="OC4J_BI_Forms" module-id="OC4J">
    <environment>
    <variable id="DISPLAY" value="localhost:0"/>
    <variable id="LIBPATH"
    value="$ORACLE_HOME/lib32:$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:$ORACLE_HOME/jdk/jre/lib/sparc"/>
    </environment>


    To:

    <process-type id="OC4J_BI_Forms" module-id="OC4J">
    <environment>
    <variable id="DISPLAY" value="<ip-address>:0.0"/>
    <variable id="LIBPATH"
    value="$ORACLE_HOME/lib32:$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:$ORACLE_HOME/jdk/jre/lib/sparc"/>
    </environment>


    5. Startup OC4J_BI_FORMS and test again the default in-process reports server, it should work now:
    ------ Disclaimer: Oracle's Copyright, reproduced for informational purposes. ------

    Lesson learned - AIX and OTM (or Oracle Reports) is not the best of choices... (i.e. DON'T DO IT!)

    Hope this helps,

    --Chris
    Last edited by chrisplough; July 3, 2007, 03:39.
Working...
X