Thursday, February 11, 2016

MDM v 11.4 some Issues and resolutions

1.       After successful addition of a CBA and its linking to EBA from Server view, sometimes an error is observed which is misleading.
<ErrorMessage>DWLParser Exception. An error has occurred while parsing the xml.</ErrorMessage>

Finding & Resolution:- Though it gives an impression of CBA successfully associated with EBA from server view. But when checked from admin console it is found CBA doesn’t get linked with EBA for some valid error of project. Try to associate the CBA to EBA from admin console. If any error message is encountered fix in project and then re-try associating CBA to EBA again. Once EBA gets associated successfully, the above error should go.


2.       While trying to run any transaction from a migrated Project from MDM 9.0.2 to 11.4 an error may be  encountered which misleads
<Error Message>Transaction not defined in the properties file.</ErrorMessage>

Finding & Resolution:- The services entries which are present in blueprint.xml which are to be exposed of a Hub Module project has to be present under Export-Package of CompositeBundle.MF of CBA.
It might happen sometimes while migrating a project that this entries are not present in CompositeBundle.MF and this error may be encountered. Add the appropriate service entries by clicking on the add button of Exported-Services in OverView tab of CompositeBunle.MF of CBA to fix this.

Further read on this:

3.       When Projects are migrated from MDM 9.0.2 to 11.4 code has to be regenerated from module.mdmxmi to generate osgi related artefacts required for OSGI Migration of MDM.
This may lead to overridden of some of components customised by us.

Finding & Resolution:- Make sure @generated-Not annotation is appropriately placed at all the places wherever customised code is present. After code generation manually check the Customised code remains good. Rest all code will be appropriately upgraded to new Standards(eg: Generics Collections- Type safe are added) which shall work fine.


4.       Crashing of Server is reported with immediate power shut down of Development machines owing to antivirus definitions upgrade.
Machines were kept ON with Build, Deployment tasked in line. Once the Machine is restarted and Server is restarted again, transaction fails to run. The EBA on admin console shows red cross symbol against it.
Alternative Fix1:- Remove all the CBA and there associations. Uninstalled the EBA. Re add the EBA again from admin console. Add all CBA and associate them with EBA. It should work now.

Alternative Fix2:- Stop the server. Go to Server installed directory from Windows directory. Delete the content of temp, wstemp, translog folders. Restart the Server. It should work now.

Sunday, February 7, 2016

CWSAJ0078E:org.apache.aries.application.management.ResolverException.( Error while deploying CBA)

I was getting an exception while doing manage extension for my cba in worbench.
Reason behind that was:

When deploying multiple applications to an application server
at the same time, CWSAL0015 errors may be reported:
CWSAL0015E:
Cannot resolve EBA file. Exception:
org.apache.aries.application.management.ResolverException: The
system cannot provision the EBA <application> because the
following problems in the dependency chain were detected
If the applications are redeployed individually, with no other
application deployment activity on the server, the problem does
not occur.

If deploying OSGi applications at exactly the same time, it
is possible for an internal data structure to be overwritten
by multiple threads. This causes OSGi dependency resolution to

fail, as OSGi bundles are not registered correctly.


If more than one cbas are trying to deploy on operational server this error will occur.
You will have to check the Manifest.MF and Compositebundle.MF for overwritten package entries, and redeploy cba again.

Tuesday, February 2, 2016

Customization of PME OUT-OF-BOX algoithm in IBM MDM 11.4


Guys I was doing customization of PME out-of-box algorithm for one of the business requirement.
Here are some interesting points I have noticed while development:

1. I have created configuration project (suppose MDMpmeconfig)

2. for every configuration project you can find .imm file in the workspace where you can see all the configuration details(algorithms n alll).

3. In .imm file under Algorithm tag you will have to add your new attribute(Here I have added OrgLegalAddress attribute which will refer out of box entity partyAddress).

4.You will have to include required dependencies for this new attribute with out of box entities.

5. Insert entry in the CRITICALDATAELEMENT table for this new attribute and of course in the code tables as well(here CDADDRESSUSAGETP etc.)

6. Most Important step you will have to make an entry in the converter classes(which I have missed and got some error.)
here is high level path where you can find this converter class(you can't find it in workspace):

E:\Program Files\IBM\MDM_1\Samples\Rules\com.ibm.mdm.server.extrules.default\src\com\ibm\mdm\eme\party\converter

7. Again you will have to make an entry in the TCRM_extension.properties/TCRM.properties
(can be downloded from admin console under Application->Assets)



I hope this will be useful to you for customization.

Thanks.