IBM Support

Patching CBAs that InfoSphere MDM Advanced Edition Uses.

Troubleshooting


Problem

InfoSphere MDM Advanced edition is deployed as an OSGi Enterprise Bundle Archive (an EBA) alongside three additional Composite Bundle Archives (CBAs): com.ibm.mdm.mds.api.app, com.ibm.mdm.mds.jni.app, and com.ibm.mdm.thirdparty.cba. These CBAs are deployed into the WebSphere Application Server internal bundle repository. Many of the resources the MDM Server business application depends on are deployed in these CBAs. When MDM Server enterprise is first installed, the WebSphere Application Server OSGi container will resolve these dependencies and ‘provision’ these CBAs to InfoSphere MDM. This provisioning is made implicitly by WebSphere Application Server. WebSphere Application Server has a limitation whereby any bundles that are resolved and provisioned to an application implicitly by the container are permanent. Any implicitly provisioned CBAs cannot be replaced by newer ones should the need arise. For example a newer version of com.ibm.mdm.thirdparty.cba containing newer third party resources such as logging tools, etc. cannot replace an older one that has already been provisioned.

Resolving The Problem

This limitation does not apply to bundles or CBAs that are explicitly listed in the manifest of the EBA. The following steps illustrate how to replace your existing EBA in InfoSphere MDM with this new one. Below are the steps that must be followed:

Step 1: Edit the Application Manifest of the MDM Server EBA

1. Locate the folder in which the installer placed the installable components of InfoSphere MDM. It’s called “InstallableApps” folder. Locate the eba file. It’s called com.ibm.mdm.hub.server.app.eba.


2. Use an application like WinRar to examine the contents of com.ibm.mdm.hub.server.app.eba.

3. Within com.ibm.mdm.hub.server.app.eba, locate the Application.MF file.

4. Edit the Application.MF file, change Application-SymbolicName value in the new EBA file under /META-INF/APPLICATION.MF to match the value of appsoftware table in customer's DB. Then, add the following lines to the bottom of the file:

  • For an InfoSphere MDM instance, use the following (ensure that the <space> is included before each line as indicated below):

    • Use-Bundle: com.ibm.mdm.thirdparty.cba;version=11.0.0,
      <space>com.ibm.mdm.mds.jni.app;version=11.0.0,
      <space>com.ibm.mdm.mds.api.app;version=11.0.0
  • For an InfoSphere Reference Data Management or for an InfoSphere Custom Domain Hub instance, use:

    • Use-Bundle: com.ibm.mdm.thirdparty.cba;version=11.0.0



Step 2: Detach Any Customization CBAs from MDM

1. In WebSphere Application Server Admin Console, Navigate to Applications --> Application Types --> Business Level Applications, and select the MDM-Operational-server-EBA-E001. Then select com.ibm.mdm.hub.server.app-xxx.eba. See below:


2. Select Extensions for this composition unit.


3. Select any customization CBAs you previously attached to this EBA and click Remove.

4. Return to the previous screen and select Update To Latest Deployment.


5. Click Next until you reach the option to click Finish. Click that, then click Save on the following page.

6. Click OK, then click Save on the following page.




Step 3: Remove the Old EBA from the Business Level Application

1. In the WebSphere Application Server Admin Console navigate to Applications --> Application Types --> Business Level Applications. Place a check mark next to MDM-operational-server-EBA-xxx where xxx is a number or a name, then click Stop.

2. After the application has stopped, click on the application as a hyperlink. This will display the following screen:

3. Put a checkmark next to com.ibm.mdm.hub.server.app-xxx.eba and click Delete.




Step 4: Delete the old EBA as an Asset

1. Navigate to Applications --> Application Types --> Assets

2. Put a Check next to com.ibm.mdm.hub.server.app.eba and click Delete.




Step 5: Re-Install the New (Revised) EBA

1. From in the WebSphere Application Server Admin Console navigate to Applications --> Application Types --> Assets.

2. Click on Import and navigate to the location of the EBA file you updated in step 1.




Step 6: Attach the newly imported EBA file to the Business Level Application

1. Navigate to Applications --> Application Types --> Business Level Applications and click on MDM-operational-server-EBA-xxx as a hyperlink.

2. Click to add an asset to the business level application:

3. Click on the radio button next to the new EBA you just imported:

4. Click Continue.

5. Follow the steps in the Wizard as illustrated below.

6. Map the security roles and users and groups:



7. Map RunAs roles for ServiceProvider and ServiceConsumer to mdmadmin user:



Note: any additional user or group that you mapped must be re-added.

8. Map Data Sources



9. Keep clicking Next until you are done.


Step 7: Attach CBA to MDM

1. In WebSphere Application Server Admin Console, navigate to Applications --> Application Types --> Business Level Applications, and select the MDM-Operational-server-EBA-E001. Then select com.ibm.mdm.hub.server.app_E001-0001.eba. See below:

2. Select Extensions for this composition unit.

3. Click Add.

4. Put a check next to all of the .cba files that you previously removed and click Add.

5. Update the running bundles:


    a. Navigate to Applications -> Application Types -> Business-level applications
    b. Click on the EBA asset, for example MDM-operational-server-EBA-E001
    c. Click on the EBA asset associated with this application, for example com.ibm.mdm.hub.server.app-E001_0001.eba.
    d. In the OSGi application deployment status section, click on Update to latest deployment button.
    e. Continue to click Next until you reach the option to click Finish. Click that, then click Save on the following page.
    f. Click OK, then click Save on the following page.
6. Restart the server.


Next Steps


With this technote, if you receive a replacement for any of the CBAs described above, this workaround will enable you to replace them without the need to redeploy InfoSphere MDM each time.

[{"Product":{"code":"SSWSR9","label":"IBM InfoSphere Master Data Management"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"--","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF016","label":"Linux"},{"code":"PF033","label":"Windows"}],"Version":"11.0.0;11.0","Edition":"Advanced","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
27 April 2022

UID

swg21653153