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

📄 saveitemaction.java

📁 OpenWFE是一个开放源码的Java工作流引擎。它是一个完整的业务处理管理套件:一个引擎
💻 JAVA
字号:
/* * Copyright (c) 2001-2006, John Mettraux, OpenWFE.org * All rights reserved. *  * Redistribution and use in source and binary forms, with or without  * modification, are permitted provided that the following conditions are met: *  * . Redistributions of source code must retain the above copyright notice, this *   list of conditions and the following disclaimer.   *  * . Redistributions in binary form must reproduce the above copyright notice,  *   this list of conditions and the following disclaimer in the documentation  *   and/or other materials provided with the distribution. *  * . Neither the name of the "OpenWFE" nor the names of its contributors may be *   used to endorse or promote products derived from this software without *   specific prior written permission. *  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE  * POSSIBILITY OF SUCH DAMAGE. * * $Id: SaveItemAction.java 2908 2006-07-03 11:32:15Z jmettraux $ *///// SaveItemAction.java//// jmettraux@openwfe.org//// generated with // jtmpl 1.0.04 31.10.2002 John Mettraux (jmettraux@openwfe.org)//package openwfe.org.uman.web.actions;import java.rmi.Naming;import java.security.Principal;import java.security.Permission;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.security.auth.Subject;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionError;import org.apache.struts.action.ActionErrors;import org.apache.struts.action.ActionMapping;import org.apache.struts.action.ActionForward;import org.apache.struts.action.DynaActionForm;import openwfe.org.auth.Grant;import openwfe.org.uman.AdminSession;import openwfe.org.rmi.session.WorkSessionServer;import openwfe.org.uman.web.Handler;import openwfe.org.uman.web.FieldSet;import openwfe.org.uman.web.Definitions;/** * The action thats tries to log a user in * * <p><font size=2>CVS Info : * <br>$Author: jmettraux $ * <br>$Date: 2006-07-03 13:32:15 +0200 (Mon, 03 Jul 2006) $ * <br>$Id: SaveItemAction.java 2908 2006-07-03 11:32:15Z jmettraux $ </font> * * @author john.mettraux@openwfe.org */public class SaveItemAction    extends UmanAction{    private final static org.apache.log4j.Logger log = org.apache.log4j.Logger        .getLogger(SaveItemAction.class.getName());    //    // CONSTANTS (definitions)    public final static String CANCEL = "cancel";    //    // FIELDS    //    // CONSTRUCTORS    //    // METHODS    public ActionForward execute        (ActionMapping mapping,         ActionForm form,         HttpServletRequest req,         HttpServletResponse res)    throws         java.lang.Exception    {        if (req.getParameter(CANCEL) != null)            return mapping.findForward(Definitions.SUCCESS);        ActionErrors errors = new ActionErrors();        try        {            Handler handler = (Handler)req.getSession()                .getAttribute(Handler.HANDLER);            Object handledItem = req.getSession()                .getAttribute(Handler.HANDLED_ITEM);            handledItem = handler.updateFromRequest(handledItem, req);            //            // do something with the handledItem !!!!!            if (handledItem instanceof Principal)            {                Principal principal = (Principal)handledItem;                //getAdminSession(req).getPrincipals()                //    .put(principal.getName(), principal);                getAdminSession(req).getPrincipals().add(principal);                getAdminSession(req).isModified = true;                log.debug                    ("Updated/Added principal '"+principal.getName()+"'");            }            else if (handledItem instanceof Grant)            {                Grant grant = (Grant)handledItem;                getAdminSession(req).getGrants()                    .put(grant.getName(), grant);                getAdminSession(req).isModified = true;                log.debug                    ("Updated/Added grant '"+grant.getName()+"'");            }            else if (handledItem instanceof Permission)            {                //log.debug ("handling a Permission");                String grantName = (String)req.getSession()                    .getAttribute(EditItemAction.GRANT_NAME);                String permissionKey = (String)req.getSession()                    .getAttribute(EditItemAction.PERMISSION_KEY);                Permission permission = (Permission)handledItem;                getAdminSession(req).replacePermission                    (grantName, permissionKey, permission);                req.getSession().removeAttribute(EditItemAction.GRANT_NAME);                req.getSession().removeAttribute(EditItemAction.PERMISSION_KEY);                log.debug                    ("Updated/Added permission '"+permission+"'");            }            else            {                log.warn                    ("cannot handle instance of "+                     handledItem.getClass().getName());            }            //            // and finally            req.getSession().removeAttribute(Handler.HANDLER);            req.getSession().removeAttribute(Handler.HANDLED_ITEM);            FieldSet.removeFieldSet(req);        }        catch (Exception e)        {            log.info("Error", e);            errors.add                (ActionErrors.GLOBAL_ERROR,                  new ActionError("wuman.error", ""+e.getMessage()));            saveErrors(req, errors);            return mapping.findForward(Definitions.FAILURE);        }        return mapping.findForward(Definitions.SUCCESS);    }}

⌨️ 快捷键说明

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