001
014
015 package com.liferay.portal.struts;
016
017 import com.liferay.portal.kernel.struts.StrutsAction;
018 import com.liferay.portal.kernel.util.Validator;
019
020 import javax.servlet.http.HttpServletRequest;
021 import javax.servlet.http.HttpServletResponse;
022
023 import org.apache.struts.action.Action;
024 import org.apache.struts.action.ActionForm;
025 import org.apache.struts.action.ActionForward;
026 import org.apache.struts.action.ActionMapping;
027
028
031 public class ActionAdapter extends Action {
032
033 public ActionAdapter(StrutsAction strutsAction) {
034 _strutsAction = strutsAction;
035 }
036
037 @Override
038 public ActionForward execute(
039 ActionMapping actionMapping, ActionForm actionForm,
040 HttpServletRequest request, HttpServletResponse response)
041 throws Exception {
042
043 StrutsAction originalStrutsAction = null;
044
045 if (_originalAction != null) {
046 originalStrutsAction = new StrutsActionAdapter(
047 _originalAction, actionMapping, actionForm);
048 }
049
050 String forward = _strutsAction.execute(
051 originalStrutsAction, request, response);
052
053 if (Validator.isNull(forward)) {
054 return null;
055 }
056
057 ActionForward actionForward = actionMapping.findForward(forward);
058
059 if (actionForward == null) {
060 actionForward = new ActionForward(forward);
061 }
062
063 return actionForward;
064 }
065
066 public void setOriginalAction(Action originalAction) {
067 _originalAction = originalAction;
068 }
069
070 private Action _originalAction;
071 private StrutsAction _strutsAction;
072
073 }