Friday, April 29, 2011

Migrate Oracle BAM Reports and DO across environments

Today, I am blogging on the migration of Oracle BAM reports and Data Objects across environments.

First we should export the built BAM reports and data objects as XML objects from the development environment. ICommand utility bundled with Oracle SOA suite comes in handy for this purpose.

1. Ensure that the server on which Oracle BAM reports are available is up & running as the ICommand utility extracts the reports/data objects from the MDS store

2. If you have developed the BAM reports under the 'Shared Reports', issue the following icommand in the command prompt/terminal window;

change directory to \Oracle_SOA1\bam\bin

icommand -CMD EXPORT -NAME "/public/Report/Samples/<>" -TYPE report -file Report.xml

If the BAM report is available under 'My Reports' folder, then issue the following command;

icommand -CMD EXPORT -NAME "<Report Name>" -TYPE report -file Report.xml


./icommand -CMD EXPORT -NAME "/private:weblogic/Report/<Report Name>" -TYPE report -file Report.xml

Note that the /private:weblogic/Report must be used to qualify the report export with a admin user privilege.

This will generate Report1.xml under the bin directory.

To export a data object issue the following icommand;

icommand -CMD EXPORT -NAME "/Samples/Monitor Express/<>" -file DO.xml

This will generate DO.xml under the bin directory.

Transfer the generated xml files to the destination server (As per the following example, the xmls are migrated into the bin directory)

3. Now, login to the server where the exported BAM reports and DOs should be installed

4. Ensure that the server is up & running. Change directory to \Oracle_SOA1\bam\bin

5. Issue the following icommand to import the DO & report XMLs

icommand -CMD IMPORT -file DO.xml
icommand -CMD IMPORT -file Report1.xml
Wait for the success message and verify the successful import of 
reports & DOs in the destination server

Friday, April 8, 2011

BEA-280101 Persistent File Store using Bufferd I/O

While installing the Oracle SOA suite 11g on a 64-bit environment (using a 64-bit JVM), 64-bit native server libraries are created automatically in the Middleware home. However, these may not get referenced during the SOA domain startup. As a result of this, you may encounter the following Weblogic 'Warning' message in the server logs. Although being a warning message that our intuition immediately asks to ignore, this particular warning makes us inquisitive as it threatens of a 'Significantly degraded performance'.

<BEA-280101> <The persistent file store "_WLS_xxxdomain" is forced to use buffered I/O and so may have significantly degraded performance. Either the OS/hardware environment does not support the chosen write policy or the native wlfileio library is missing. See store open log messages for the requested and final write policies. See the documentation on store synchronous write policy configuration for advice.>

To overcome this Weblogic warning, ensure that the generated 64-bit native libraries are referenced during server start-up.

Go to <Middleware_Home>\user_projects\domains\<SOA Domain>\bin\SetSOADomainEnv.cmd  (or if Linux) and add the -Djava.library.path to JAVA_OPTIONS as shown below;

set JAVA_OPTIONS=%JAVA_OPTIONS% -Djava.library.path=<Middleware_Home>\wlserver_10.3\server\native\win\x64 [Depending on whether your OS is Windows or Linux the path might slightly change]

After performing the above configuration, restart the server and Weblogic warning should now disappear.