Example returning error message from BLTH handler written in Java.
Identity Manager 14.5.*
Handler 1:
import com.netegrity.imapi.BLTHAdapter;
import com.netegrity.imapi.BLTHContext;
import com.netegrity.ims.exception.IMSException;
import com.netegrity.ims.tabhandlers.ProcessStep;
import com.netegrity.ims.tabhandlers.ErrorLevel;
import com.netegrity.ims.TheContainer;
import java.util.Hashtable;
public class TestMessage extends BLTHAdapter {
public void init(Hashtable imeProperties) {
TheContainer.logDebugMessage("**************************** TestMessage > init()");
}
public boolean shouldExecute(BLTHContext context) {
TheContainer.logDebugMessage("**************************** TestMessage > shouldExecute()");
return true;
}
public void handleSubmission(BLTHContext blthContext) throws Exception {
TheContainer.logDebugMessage("**************************** TestMessage > handleSubmission()");
IMSException e = new IMSException("9004", new Object[] {});
blthContext.addMessageObject(e, "ErrorWhileRegistering", ProcessStep.UNKNOWN, ErrorLevel.ERROR);
}
}
Handler 2:
import com.netegrity.imapi.BLTHAdapter;
import com.netegrity.imapi.BLTHContext;
import com.netegrity.ims.exception.IMSException;
import com.netegrity.ims.tabhandlers.ProcessStep;
import com.netegrity.ims.tabhandlers.ErrorLevel;
import com.netegrity.ims.TheContainer;
import java.util.Hashtable;
public class TestMessage extends BLTHAdapter {
public void init(Hashtable imeProperties) {
TheContainer.logDebugMessage("**************************** TestMessage > init()");
}
public boolean shouldExecute(BLTHContext context) {
TheContainer.logDebugMessage("**************************** TestMessage > shouldExecute()");
return true;
}
public void handleSubmission(BLTHContext blthContext) throws Exception {
TheContainer.logDebugMessage("**************************** TestMessage > handleSubmission()");
IMSException e = new IMSException("9004", new Object[] {});
throw e;
}
}
In both cases the result will be:
In both cases the original iam_im.ear\custom\resourceBundles\IMSExceptions.properties file was modified by adding a new line:
9004=Test error message number 9004
The source code needs to be compiled and copied using the following commands (vApp environment):
javac -cp "/opt/CA/IdentityManager/IAM_Suite/IdentityManager/tools/lib/*" -d ./out ./TestMessage.java
cp out/TestMessage.class /opt/CA/wildfly-idm/standalone/deployments/iam_im.ear/custom/
The BLTH handler needs to be updated for the task as well. For example: