Friday, March 9, 2012

Oracle SOA Suite – Utility to manage the composite revisions.

Oracle SOA Suite – Utility to manage the composite revisions:

In our project we had a requirement to retire/undeploy the older versions of composites and keep the specified number of newer versions. We have developed a java utility to do this functionality.
Thought of sharing the same, it may help someone looking for the similar utility.
If we have more number of deployed composite, it will increase the server startup time and also the loading time of the em console, its better we can keep only the latest versions and retire or undeploy the older versions.
This java utility will keep the specified number of latest versions (based on the user input) and undeploy/retire all the other older versions based on the operation specified by the user. The default version will be skipped from undeploy/retire operation.
This utility is developed for UNIX server; the same can be modified to work on windows.
Steps to execute:-
Copy ManageComposites.java and ManageComposites.xml (Refer the attachment) files to the server to a particular location.
Open the putty session; change the window scroll size of the putty session to a higher value (to increase the display size)
Set the following environment variables before executing the utility
ORACLE_HOME
MWHOME
WLSHOME
Execute the script - ant –f ManageComposites.xml
Enter the input for the server details, operation(R – retire, U - Undeploy) and the number of versions to be kept for a composite.
O/P
Undeploy the older versions of all the composites expect the last two versions.






Retire the older version of all the composites expect the last two versions.


DOWNLOAD managecomposite.zip


5 comments:

  1. Hi, Could you please tell me the tables where i can get the retired or sutdown composites ?

    pl mail me sougata26atgmaildotcom

    thanks,
    Sougata

    ReplyDelete
  2. Hi

    The state of the composite will be stored in MDS schema.

    I don't think so we can use the direct query to get the details.

    I never tried this,you can try to get the details from MDS schema.

    Regards
    Albin I

    ReplyDelete
  3. Hi Albin,

    Nice one.. Great job!!

    I was wondering can we make is composite specific. As in we specify the composite name to undeploy?

    cheers,
    SG

    ReplyDelete
  4. The same utility can be changed based on the composite name.

    Change the CompositeFilter definition as below

    CompositeFilter compositeFilter=new CompositeFilter();
    compositeFilter.setCompositeName(compositename);
    ArrayList composites =(ArrayList)locator.getComposites(compositeFilter);

    I believe u are lokking for the same.

    Regards
    Albin I

    ReplyDelete
  5. Thanks Albin. I shall try and let you know the progress.

    Cheers,
    SG

    ReplyDelete