logger.debug("The following columns are required in order to invoke " +
"the required service: " + join(missingColumns, ","));
try {
JSONObject obj = new JSONObject();
obj.put("missingcolumns", join(missingColumns, ","));
writeBackToClient( new JSONSuccess(obj) );
return;
} catch (IOException e) {
String message = "Impossible to write back the responce to the client";
throw new SpagoBIEngineServiceException(getActionName(), message, e);
}
}
// invoke external service
String serviceResponse = null;
try {
extServiceMonitor = MonitorFactory.start("QbeEngine.externalService");
serviceResponse = invokeExternalService(serviceConfig, records);
} finally {
extServiceMonitor.stop();
}
logger.debug("Service has returned this message response:\n" + serviceResponse);
try {
JSONObject obj = new JSONObject();
obj.put("serviceresponse", serviceResponse);
writeBackToClient( new JSONSuccess(obj) );
} catch (IOException e) {
String message = "Impossible to write back the responce to the client";
throw new SpagoBIEngineServiceException(getActionName(), message, e);
}