Monday, April 9, 2012

OSB coherence cache localhost configuration

I have a standard localhost SOA install. I have global result caching enabled (default) and i enabled result caching for my business service. However, the result is not cached.

I have checked coherence configure files under C:\Oracle\Middleware\user_projects\domains\soa_domain\config\osb\coherence, but I couldn't tell what's wrong.

I did some search and this link turned up:

Here is the section (5.14.9) of the doc I followed to get mine to work:
  1. Log into Oracle WebLogic Server Administration Console. In the Change Center, click Lock & Edit.
  2. In the Domain Structure window, expand the Environment node.
  3. Click Servers. The Summary of Servers page appears.
  4. Click the name of the server (represented as a hyperlink) in the Name column of the table. The settings page for the selected server appears.
  5. Click the Server Start tab.
  6. Enter the following for WLS_OSB1 (on a single line, without a carriage returns):
    -DOSB.coherence.localhost=osbhost1vhn1 -DOSB.coherence.localport=7890 
    -DOSB.coherence.wka1= osbhost1vhn1 -DOSB.coherence.wka1.port=7890 
    -DOSB.coherence.wka2= osbhost2vhn1 -DOSB.coherence.wka1.port=7890
Except step 6 is not 100% clear, it should say to put the value into the "arguments" field. See screen shot.

I also adjusted the value for my specific case (by default, my OSB server is "osb_server1"):

-DOSB.coherence.localhost=localhost -DOSB.coherence.localport=7890 -DOSB.coherence.wka1= localhost -DOSB.coherence.wka1.port=7890 -DOSB.coherence.wka2= localhost -DOSB.coherence.wka1.port=7890

After that I restarted OSB server, and it worked.

BTW, you may need to adjust the port#. I think the number should match the config files under your_domain/config/osb/coherence/

No comments:

Post a Comment