⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 action.jsp

📁 OBPM是一个开源
💻 JSP
字号:
<%@ page language="java" contentType="text/html; charset=GBK"%>
<%@ page import="java.util.*"%>
<%@ taglib prefix="ww" uri="webwork"%>
<%@ taglib prefix="o" uri="myapps"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
<%@ page import="cn.myapps.core.dynaform.activity.ejb.Activity"%>
<%@ page import="cn.myapps.core.dynaform.document.ejb.Document"%>
<%@ page import="cn.myapps.core.dynaform.form.ejb.Form"%>
<%@ page import="cn.myapps.core.dynaform.form.action.FormHelper"%>
<%@ page import="cn.myapps.base.action.ParamsTable"%>
<%@ page import="cn.myapps.core.user.action.WebUser"%>
<%@ page import="cn.myapps.core.user.ejb.UserVO"%>
<%@ page import="cn.myapps.constans.Web"%>
<%@ page import="cn.myapps.core.style.repository.ejb.StyleRepositoryVO"%>
<%@ page import="cn.myapps.core.workflow.engine.StateMachineHelper"%>
<%@ page import="cn.myapps.core.dynaform.view.ejb.View"%>
<%@ page import="cn.myapps.core.macro.runner.JavaScriptRunner"%>
<%@ page import="javax.servlet.RequestDispatcher"%>
<script>
</script>
<%//
			Document doc = null;
			Object content = request.getAttribute("content");
			if (content!=null && content instanceof Document) {
				doc = (Document)content;
			}
			else {
				doc = new Document();
			}

			WebUser webUser = (WebUser) session
					.getAttribute(Web.SESSION_ATTRIBUTE_USER);

			ParamsTable params = ParamsTable.convertHTTP(request);

			JavaScriptRunner runner = JavaScriptRunner.getInstance();
			runner.initBSFManager(doc, params, webUser, new ArrayList(),webUser.getApplicationid());

			Activity act = (Activity) request.getAttribute("content");
			boolean flag = true;
			if ((act.getBeforeActionScript()) != null
					&& (act.getBeforeActionScript()).trim().length() > 0) {
				Object result = runner.run(act.getBeforeActionScript());//运行脚本
				if (result != null && result instanceof String) {
					String msg = (String) result;
					msg = msg.replaceAll("\n", "\\\\n");
					msg = msg.replaceAll("'", "\\\\'");
					out.println("<script>alert('" + msg
							+ "');window.history.back();</script>");
					flag = false;
				}
			}
			boolean isRedirect = false;
			if (flag) {
				int type = act.getType();
				String backURL = request.getParameter("_backURL");
				String closeScript = "<script>if(parent){parent.close();}else {window.close();}</script>";
				if (type == Activity.ACTIVITY_TYPE_CLOSE_WINDOW) {
					out.println(closeScript);
				} else {
					String actionUrl = "/";
					if (type == Activity.ACTIVITY_TYPE_DOCUMENT_CREATE) {
						actionUrl = "/core/dynaform/document/new.action?formid="
								+ act.getOnActionForm().getId();
					} else if (type == Activity.ACTIVITY_TYPE_DOCUMENT_DELETE) {
						actionUrl = "/core/dynaform/document/delete.action?";
					} else if (type == Activity.ACTIVITY_TYPE_DOCUMENT_MODIFY) {
					} else if (type == Activity.ACTIVITY_TYPE_DOCUMENT_QUERY) {
							String viewid = act.getOnActionView().getId();
							actionUrl = "/core/dynaform/view/displayView.action?_viewid="
									+ viewid;
					} else if (type == Activity.ACTIVITY_TYPE_DOCUMENT_UPDATE) {
						actionUrl = "/core/dynaform/document/save.action";
					} else if (type == Activity.ACTIVITY_TYPE_SCRIPT_PROCESS) {
						actionUrl = "success.jsp";
					} else if (type == Activity.ACTIVITY_TYPE_WORKFLOW_PROCESS) {
						actionUrl = "/core/dynaform/document/flow.action";
					} else if (type == Activity.ACTIVITY_TYPE_SAVE_CLOSE_WINDOW) {
						actionUrl = "/core/dynaform/document/saveclose.action";
					} else if (type == Activity.ACTIVITY_TYPE_Nothing) {
						actionUrl = "/core/dynaform/document/nothing.action";
					} else if (type == Activity.ACTIVITY_TYPE_EXPTOEXCEL) {
						actionUrl = "/core/dynaform/view/expDocToExcel.action";
					} else if (type == Activity.ACTIVITY_TYPE_SAVE_BACK) {
						if (!backURL.equals("null") && !backURL.equals("")) {
							int index = backURL.indexOf("?_viewid");
							String param = "";
							if (index != -1) {
								param = backURL.substring(index, backURL
										.length());
							}
							
							actionUrl = "/core/dynaform/document/saveback.action";
							actionUrl += param;
						} else {
							out.println(closeScript);
							return;
						}
					} else if (type == Activity.ACTIVITY_TYPE_SAVE_NEW) {
						actionUrl = "/core/dynaform/document/savenew.action";
					} else if (type == Activity.ACTIVITY_TYPE_DOCUMENT_BACK) {
						if (!backURL.equals("null") && !backURL.equals("")) {
							// 根据backURL参数重新设置actionUrl
							if (backURL.indexOf(".jsp") != -1) {
								isRedirect = true;
								actionUrl = backURL;
							} else {
								String path = request.getContextPath();
								int index = backURL.indexOf(path);
								actionUrl = backURL.substring(index + path.length(),
										backURL.length());
							}
						} else {
							out.println(closeScript);
							return;
						}
					}
					
					if (isRedirect) {
						response.sendRedirect(actionUrl);
					} else {
						RequestDispatcher dispatcher = ((HttpServletRequest) request)
								.getSession().getServletContext()
								.getRequestDispatcher(actionUrl);
						dispatcher.forward(request, response);
					}

				}

			}

		%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -