Troubleshooting
Problem
Importing a Teamworks file that references LDAP Users and Groups into a system that is not configured to use the same LDAP repository can result in failure. The references are added when a user selects users and groups from LDAP when defining a participant group. Exporting a snapshot to a Teamworks file causes that file to contain references to content from LDAP.
Symptom
The import fails with a null pointer exception, with a stack trace in the System.out log file:
10/20/11 3:57:07:609 PDT] 00000075 wle E CWLLG2229E: An exception occurred in an EJB call. Error: null java.lang.NullPointerException at Lom.lombardisoftware.server.ejb.repositoryservices.RepositoryServicesCore.newSnapshotIfShortnameChanged(RepositoryServicesCore.java:1031) at Lom.lombardisoftware.server.ejb.repositoryservices.RepositoryServicesCore.importPackageInternal(RepositoryServicesCore.java:1000) at com.lombardisoftware.server.ejb.repositoryservices.RepositoryServicesCore.importUploadedFile(RepositoryServicesCore.java:938)
Cause
The federated repositories user registry generates an error when it cannot find groups in the configured user registries. When handling this error, the federated repositories user registry marks the transaction performing the Teamworks import as rollback-only. This situation causes the import to fail silently. The null pointer exception that follows is caused by the silent rollback of the transaction.
Diagnosing The Problem
Check the System.out log file for the null pointer stack trace that is shown in the Resolution section.
Resolving The Problem
To resolve this issue, complete the following steps:
- Stop the server.
- Edit the security.xml file, which you can find in the following location: <AppServer>/profiles/<profile>/config/cells/<cell_name>/security.xml
It is recommended that you create a backup copy of this file in case you need to restore the previous version.
- Find the <userRegistries> element for the federated repositories user registry. It will look like this example: <userRegistries xmi:type="security:WIMUserRegistry" ...
Add the following custom property definition as a nested element of this <userRegistries> element:
<properties xmi:id="Property_1294045326812" name="com.ibm.ws.wim.registry.useGlobalTransaction" value="false" />
- Restart the server and try to import the Teamworks file again.
With this workaround in place, the failed lookup from the user registry does not cause a rollback of the transaction. However, you still might see some error messages in the log file that is associated with the import. For example:
[11/9/11 10:39:27:812 CST] 0000002e wle I CWLLG0379I: Importing snapshot <snapshot_name> from process application <process application> :STARTING
[11/9/11 10:39:28:951 CST] 0000002e JTAHelper E com.ibm.ws.wim.tx.JTAHelper handleException
[11/9/11 10:39:28:951 CST] 0000002e FfdcProvider W com.ibm.ws.ffdc.impl.FfdcProvider logIncident FFDC1003I: FFDC Incident emitted on C:\wle\deploy2\AppServer\profiles\StandAloneProfile\logs\ffdc\server1_9a009a0_11.11.09_10.39.28.9515195023103513689461.txt com.ibm.ws.extensionhelper.tran.impl.TransactionControlImpl.handleException 578
[11/9/11 10:39:29:279 CST] 0000002e JTAHelper E com.ibm.ws.wim.tx.JTAHelper handleException
[11/9/11 10:39:29:544 CST] 0000002e JTAHelper E com.ibm.ws.wim.tx.JTAHelper handleException
[11/9/11 10:39:30:137 CST] 0000002e JTAHelper E com.ibm.ws.wim.tx.JTAHelper handleException
[11/9/11 10:39:30:636 CST] 0000002e wle I CWLLG0430I: END: importModel, result = null.
[11/9/11 10:39:30:652 CST] 0000002e wle I CWLLG0380I: Importing snapshot <snapshot name> from process application <process application> :FINISHED SUCCESSFULLY
[11/9/11 10:39:32:352 CST] 0000002e wle_expimp I CWLLG0162I: Import finished successfully
These messages indicate problems with a number of LDAP groups that cannot be found on import. However, the import still succeeds.
Product Synonym
BPM
Was this topic helpful?
Document Information
Modified date:
15 June 2018
UID
swg21571843