I want to get the body and change the payload before calling create account http operation. But I’m getting null Json body for requestEndPoint.getBody().
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.HashMap;
import org.json.JSONObject;
import connector.common.JsonUtil;
import connector.common.Util;
import sailpoint.tools.GeneralException;
import sailpoint.connector.webservices.EndPoint;
import sailpoint.connector.webservices.WebServicesClient;
import sailpoint.object.Application;
import sailpoint.object.ProvisioningPlan;
import sailpoint.object.ProvisioningPlan.AccountRequest;
String logPrefix = “Eagle-Rules”
try{
log.info(logPrefix + “After try block”);
Map body = requestEndPoint.getBody();
String jsonBody = (String) body.get(“jsonBody”);
log.info(logPrefix + "body: " + jsonBody);
log.debug(logPrefix + "body: " + jsonBody);
List jsonList = JsonUtil.toList(jsonBody);
if (jsonList != null && jsonList.size() > 0){
Map roleRequest = (Map) jsonList.get(0);
String uid = roleRequest.get(“uid”);
String firstName = roleRequest.get(“firstName”);
String lastName = roleRequest.get(“lastName”);
String roles = roleRequest.get(“roles”);
String ibus = roleRequest.get(“ibus”);
String pid = roleRequest.get(“pid”);
String lastLogin = roleRequest.get(“lastLogin”);
String isActive = roleRequest.get(“isActive”);
String managerUID = roleRequest.get(“managerUID”);
}
// Put everything back together and set the body
log.info(logPrefix + "roles: " + roles);
log.debug(logPrefix + "roles: " + roles);
} catch (Exception ex) {
log.info(logPrefix + "Rule - Modify Body: " + ex);
}
return requestEndPoint;
