use of com.liferay.portlet.messageboards.MessageBodyException in project liferay-ide by liferay.
the class EditDiscussionAction method processAction.
@Override
public void processAction(ActionMapping actionMapping, ActionForm actionForm, PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {
String cmd = ParamUtil.getString(actionRequest, Constants.CMD);
try {
String redirect = PortalUtil.escapeRedirect(ParamUtil.getString(actionRequest, "redirect"));
if (cmd.equals(Constants.ADD) || cmd.equals(Constants.UPDATE)) {
MBMessage message = updateMessage(actionRequest);
boolean ajax = ParamUtil.getBoolean(actionRequest, "ajax");
if (ajax) {
String randomNamespace = ParamUtil.getString(actionRequest, "randomNamespace");
JSONObject jsonObject = JSONFactoryUtil.createJSONObject();
jsonObject.put("messageId", message.getMessageId());
jsonObject.put("randomNamespace", randomNamespace);
writeJSON(actionRequest, actionResponse, jsonObject);
return;
}
} else if (cmd.equals(Constants.DELETE)) {
deleteMessage(actionRequest);
} else if (cmd.equals(Constants.SUBSCRIBE_TO_COMMENTS)) {
subscribeToComments(actionRequest, true);
} else if (cmd.equals(Constants.UNSUBSCRIBE_FROM_COMMENTS)) {
subscribeToComments(actionRequest, false);
}
sendRedirect(actionRequest, actionResponse, redirect);
} catch (Exception e) {
if (e instanceof MessageBodyException || e instanceof NoSuchMessageException || e instanceof PrincipalException || e instanceof RequiredMessageException) {
JSONObject jsonObject = JSONFactoryUtil.createJSONObject();
jsonObject.putException(e);
writeJSON(actionRequest, actionResponse, jsonObject);
} else {
throw e;
}
}
}
Aggregations