FMW 12.1.2 – beahomelist, Central Inventory, Registry and Distributions

Peter Lorenzen
06/08-2013

beahomelist

In previous versions of the WebLogic server an beahomelist file was created that contained the paths to the installations aka. the Middleware home’s.

Location:
(UNIX) user_home/bea/beahomelist
(Windows) C:\bea\beahomelist

cat beahomelist
/u01/app/oracle/product/fmw;/u01/app/oracle/product/wls;/u01/app/oracle/product/adf;/u01/app/oracle/product/osb

When you deinstall a WebLogic server the path is not removed from beahomelist, but next time you install a WebLogic server the installer will validate the paths and remove the ones that are unused.

WebLogic 12.1.2 does not use the beahomelist file.

Software Inventory

In previous versions of the WebLogic server the Oracles Central Inventory was not used. The FMW products installed on top of WebLogic did use it though.

The WebLogic server 12.1.2 uses the inventory.

On Linux /etc/oraInst.loc will normally contain a path to the inventory. The exception being if you have selected to not use the central inventory and only have a local inventory.
On Windows C:\Program Files\Oracle\Inventory is the default location of the inventory.

In the inventory you can see which Oracle software is installed.

Here is an example.

[oracle@wintermute ContentsXML]$ cd /u01/app/oracle/oraInventory/ContentsXML
[oracle@wintermute ContentsXML]$
[oracle@wintermute ContentsXML]$ cat inventory.xml
<?xml version="1.0" standalone="yes" ?>
<!-- Copyright (c) 1999, 2013, Oracle. All rights reserved. -->
<!-- Do not modify the contents of this file by hand. -->
<INVENTORY>
<VERSION_INFO>
   <SAVED_WITH>11.1.0.9.0</SAVED_WITH>
   <MINIMUM_VER>2.1.0.6.0</MINIMUM_VER>
</VERSION_INFO>
<HOME_LIST>
<HOME NAME="OH30123577" LOC="/u01/app/oracle/product/osb/oracle_common" TYPE="O" IDX="1">
   <REFHOMELIST>
      <REFHOME LOC="/u01/app/oracle/product/osb/Oracle_OSB1"/>
   </REFHOMELIST>
</HOME>
<HOME NAME="OH401995583" LOC="/u01/app/oracle/product/osb/Oracle_OSB1" TYPE="O" IDX="2">
   <DEPHOMELIST>
      <DEPHOME LOC="/u01/app/oracle/product/osb/oracle_common"/>
   </DEPHOMELIST>
</HOME>
<HOME NAME="OH1682979968" LOC="/u01/app/oracle/product/soa/oracle_common" TYPE="O" IDX="3">
   <REFHOMELIST>
      <REFHOME LOC="/u01/app/oracle/product/soa/Oracle_SOA1"/>
   </REFHOMELIST>
</HOME>
<HOME NAME="OH645970143" LOC="/u01/app/oracle/product/soa/Oracle_SOA1" TYPE="O" IDX="4">
   <DEPHOMELIST>
      <DEPHOME LOC="/u01/app/oracle/product/soa/oracle_common"/>
   </DEPHOMELIST>
</HOME>
</HOME_LIST>
<COMPOSITEHOME_LIST>
</COMPOSITEHOME_LIST>
</INVENTORY>

Here we have two Middleware Homes. One with the OSB installed and one with the SOA Suite. The both have a oracle_common home.

Each product contains many components. For FMW 11g the product components can be found in the registry.xml file the Middleware home.

For example.

[oracle@wintermute osb]$ cd /u01/app/oracle/product/osb
[oracle@wintermute osb]$ cat registry.xml
<?xml version="1.0" encoding="UTF-8"?><bea-product-information xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:gpr="http://www.bea.com/ns/cie/gpr">
  <host home="/u01/app/oracle/product/osb" name="wintermute">
    <product format="1.0" name="WebLogic Platform">
      <release level="10.3" ServicePackLevel="6" PatchLevel="0" Status="installed" InstallTime="Jul 20, 2013 2:45:29 PM" InstallDir="/u01/app/oracle/product/osb">
        <component name="Common Infrastructure Engineering" version="7.4.0.0" InstallDir="">
          <component name="Uninstall"/>
          <component name="Patch Client"/>
          <component name="Patch Attachment Facility"/>
          <component name="Clone Facility"/>
        </component>
        <component name="WebLogic Server" version="10.3.6.0" InstallDir="/u01/app/oracle/product/osb/wlserver_10.3">
          <component name="Core Application Server"/>
          <component name="Administration Console"/>
          <component name="Configuration Wizard and Upgrade Framework"/>
          <component name="Web 2.0 HTTP Pub-Sub Server"/>
          <component name="WebLogic SCA"/>
          <component name="WebLogic JDBC Drivers"/>
          <component name="Third Party JDBC Drivers"/>
          <component name="WebLogic Server Clients"/>
          <component name="WebLogic Web Server Plugins"/>
          <component name="UDDI and Xquery Support"/>
          <component name="Evaluation Database"/>
          <component name="Workshop Code Completion Support"/>
        </component>
        <component name="Oracle Configuration Manager" version="10.3.5.0" InstallDir="">
          <component name="Data Collector"/>
        </component>
        <component name="Oracle Coherence" version="3.7.1.1" InstallDir="/u01/app/oracle/product/osb/coherence_3.7">
          <component name="Coherence Product Files"/>
        </component>
      </release>
    </product>
  </host>
</bea-product-information>

For FMW 12.1.2 this has changed a bit. There is now a local inventory in the [Middleware home]/inventory.

There is a lot of stuff in the inventory but also a registry.xml.

Oracle has create two new inventory tools, viewInventory.sh and compareInventory.sh.

This will return a looong list of components and versions:

cd /u01/app/oracle/product/adf12c/oui/bin
./viewInventory.sh -jreLoc /u01/app/oracle/product/java_current/jre -oracle_home /u01/app/oracle/product/adf12c -output_format report

This will compare the installed components in the two Middleware homes:

cd /u01/app/oracle/product/adf/oui/bin
./compareInventory.sh -jreLoc /u01/app/oracle/product/java_current/jre -oracle_home1 /u01/app/oracle/product/adf -oracle_home2 /u01/app/oracle/product/wls

I did a test where I compared two identical Middleware Homes that only contained the WebLogic server. This resulted in the same list of components as a viewInventory.sh.

Distributions

With FMW 12.1.2 Oracle has introduced Distributions. Distributions are jar/bin files that contains the installer for one or more products.

Here are some examples.

  • wls_121200.jar – Distribution: WebLogic Server 12.1.2.0.0
  • fmw_infra_121200.jar – Distribution: WebLogic Server for FMW 12.1.2.0.0
  • ohs_121200_linux64.bin – Distribution: Oracle HTTP Server 12.1.2.0.0

You can use viewInventory.sh to show which distributions are installed in a Middleware home:

cd /u01/app/oracle/product/adf12c/oui/bin
./viewInventory.sh -jreLoc /u01/app/oracle/product/java_current/jre -oracle_home /u01/app/oracle/product/adf12c -output_format report | grep Dist

   Distribution: WebLogic Server for FMW 12.1.2.0.0
   Distribution: WebLogic Server 12.1.2.0.0

Here I have installed two distributions. A WebLogic server and the Fusion Middleware Infrastructure. This is a bit stupid as the Fusion Middleware Infrastructure also contains a WebLogic server …

I compared the Middleware home with the two distributions with one that only contains the WebLogic server. This will list all the components from the first home and then all components from the second.
Each line contains a “,oh1” or “,oh2” depending of which home the line pertains to. So you cannot compare components across distributions even though the contains the same products.

   Distribution: WebLogic Server 12.1.2.0.0,oh1
     FeatureSet: jrf_dmsJse 12.1.2.0.0,oh1
       Component: oracle.jse.dms 12.1.2.0.0,oh1
   …
   Distribution: WebLogic Server for FMW 12.1.2.0.0,oh2
     FeatureSet: jrf_dmsJse 12.1.2.0.0,oh2
       Component: oracle.jse.dms 12.1.2.0.0,oh2

Leave a Comment

Previous post:

Next post: