📄 edituserdatasourcejsphelper.java
字号:
/************************************************************************* * * * EJBCA: The OpenSource Certificate Authority * * * * This software is free software; you can redistribute it and/or * * modify it under the terms of the GNU Lesser General Public * * License as published by the Free Software Foundation; either * * version 2.1 of the License, or any later version. * * * * See terms of license at gnu.org. * * * *************************************************************************/package org.ejbca.ui.web.admin.rainterface;import java.io.UnsupportedEncodingException;import java.util.ArrayList;import java.util.Collection;import java.util.HashSet;import java.util.Iterator;import java.util.Set;import java.util.TreeMap;import javax.servlet.http.HttpServletRequest;import org.ejbca.core.ejb.ra.userdatasource.IUserDataSourceSessionLocal;import org.ejbca.core.model.authorization.AuthorizationDeniedException;import org.ejbca.core.model.authorization.AvailableAccessRules;import org.ejbca.core.model.log.Admin;import org.ejbca.core.model.ra.userdatasource.BaseUserDataSource;import org.ejbca.core.model.ra.userdatasource.CustomUserDataSourceContainer;import org.ejbca.core.model.ra.userdatasource.UserDataSourceConnectionException;import org.ejbca.core.model.ra.userdatasource.UserDataSourceExistsException;import org.ejbca.core.model.ra.userdatasource.UserDataSourceVO;import org.ejbca.ui.web.RequestHelper;import org.ejbca.ui.web.admin.configuration.EjbcaWebBean;import org.ejbca.util.dn.DNFieldExtractor;/** * Contains help methods used to parse a edit user data source jsp page requests. * * @author Philip Vendil * @version $Id: EditUserDataSourceJSPHelper.java,v 1.2 2006/12/02 11:17:57 anatom Exp $ */public class EditUserDataSourceJSPHelper implements java.io.Serializable { /** * Determines if a de-serialized file is compatible with this class. * * Maintainers must change this value if and only if the new version * of this class is not compatible with old versions. See Sun docs * for <a href=http://java.sun.com/products/jdk/1.1/docs/guide * /serialization/spec/version.doc.html> details. </a> * */ private static final long serialVersionUID = 436830207093078432L; public static final String ACTION = "action"; public static final String ACTION_EDIT_USERDATASOURCES = "edituserdatasources"; public static final String ACTION_EDIT_USERDATASOURCE = "edituserdatasource"; public static final String ACTION_CHANGE_USERDATASOURCETYPE = "changeuserdatasourcetype"; public static final String CHECKBOX_VALUE = BaseUserDataSource.TRUE;// Used in userdatasources.jsp public static final String BUTTON_EDIT_USERDATASOURCE = "buttonedituserdatasource"; public static final String BUTTON_DELETE_USERDATASOURCE = "buttondeleteuserdatasource"; public static final String BUTTON_ADD_USERDATASOURCE = "buttonadduserdatasource"; public static final String BUTTON_RENAME_USERDATASOURCE = "buttonrenameuserdatasource"; public static final String BUTTON_CLONE_USERDATASOURCE = "buttoncloneuserdatasource"; public static final String SELECT_USERDATASOURCE = "selectuserdatasource"; public static final String TEXTFIELD_USERDATASOURCENAME = "textfielduserdatasourcename"; public static final String HIDDEN_USERDATASOURCENAME = "hiddenuserdatasourcename";// Buttons used in userdatasource.jsp public static final String BUTTON_TESTCONNECTION = "buttontestconnection"; public static final String BUTTON_SAVE = "buttonsave"; public static final String BUTTON_CANCEL = "buttoncancel"; public static final String TYPE_CUSTOM = "typecustom"; public static final String HIDDEN_USERDATASOURCETYPE = "hiddenuserdatasourcetype"; public static final String SELECT_USERDATASOURCETYPE = "selectuserdatasourcetype"; public static final String SELECT_APPLICABLECAS = "selectapplicablecas"; public static final String SELECT_MODIFYABLEFIELDS = "selectmodifyablefields"; public static final String TEXTAREA_DESCRIPTION = "textareadescription"; public static final String TEXTFIELD_CUSTOMCLASSPATH = "textfieldcustomclasspath"; public static final String TEXTAREA_CUSTOMPROPERTIES = "textareacustomproperties"; public static final String PAGE_USERDATASOURCE = "userdatasourcepage.jspf"; public static final String PAGE_USERDATASOURCES = "userdatasourcespage.jspf"; /** Creates new LogInterfaceBean */ public EditUserDataSourceJSPHelper(){ } // Public methods. /** * Method that initialized the bean. * * @param request is a reference to the http request. */ public void initialize(HttpServletRequest request, EjbcaWebBean ejbcawebbean, RAInterfaceBean rabean) throws Exception{ if(!initialized){ initialized = true; userdatasourcesession = rabean.getUserDataSourceSession(); issuperadministrator = false; admin = ejbcawebbean.getAdminObject(); this.ejbcawebbean = ejbcawebbean; try{ issuperadministrator = ejbcawebbean.isAuthorizedNoLog(AvailableAccessRules.ROLE_SUPERADMINISTRATOR); }catch(AuthorizationDeniedException ade){} } } public String parseRequest(HttpServletRequest request) throws AuthorizationDeniedException{ String includefile = PAGE_USERDATASOURCES; String userdatasource = null; String action = null; try { RequestHelper.setDefaultCharacterEncoding(request); } catch (UnsupportedEncodingException e1) { // itgnore } action = request.getParameter(ACTION); if( action != null){ if( action.equals(ACTION_EDIT_USERDATASOURCES)){ if( request.getParameter(BUTTON_EDIT_USERDATASOURCE) != null){ userdatasource = request.getParameter(SELECT_USERDATASOURCE); if(userdatasource != null){ if(!userdatasource.trim().equals("")){ includefile=PAGE_USERDATASOURCE; this.userdatasourcename = userdatasource; this.userdatasourcedata = userdatasourcesession.getUserDataSource(admin,userdatasourcename); } else{ userdatasource= null; } } if(userdatasource == null){ includefile=PAGE_USERDATASOURCES; } } if( request.getParameter(BUTTON_DELETE_USERDATASOURCE) != null) { userdatasource = request.getParameter(SELECT_USERDATASOURCE); if(userdatasource != null){ if(!userdatasource.trim().equals("")){ userdatasourcedeletefailed = !userdatasourcesession.removeUserDataSource(admin,userdatasource); } } includefile=PAGE_USERDATASOURCES; } if( request.getParameter(BUTTON_RENAME_USERDATASOURCE) != null){ // Rename selected userdatasource and display profilespage. String newuserdatasourcename = request.getParameter(TEXTFIELD_USERDATASOURCENAME); String olduserdatasourcename = request.getParameter(SELECT_USERDATASOURCE); if(olduserdatasourcename != null && newuserdatasourcename != null){ if(!newuserdatasourcename.trim().equals("") && !olduserdatasourcename.trim().equals("")){ try{ userdatasourcesession.renameUserDataSource(admin,olduserdatasourcename.trim(),newuserdatasourcename.trim()); }catch( UserDataSourceExistsException e){ userdatasourceexists=true; } } } includefile=PAGE_USERDATASOURCES; } if( request.getParameter(BUTTON_ADD_USERDATASOURCE) != null){ userdatasource = request.getParameter(TEXTFIELD_USERDATASOURCENAME); if(userdatasource != null){ if(!userdatasource.trim().equals("")){ try{ userdatasourcesession.addUserDataSource(admin,userdatasource.trim(), new CustomUserDataSourceContainer()); }catch( UserDataSourceExistsException e){ userdatasourceexists=true; } } } includefile=PAGE_USERDATASOURCES; } if( request.getParameter(BUTTON_CLONE_USERDATASOURCE) != null){ String newuserdatasourcename = request.getParameter(TEXTFIELD_USERDATASOURCENAME); String olduserdatasourcename = request.getParameter(SELECT_USERDATASOURCE); if(olduserdatasourcename != null && newuserdatasourcename != null){ if(!newuserdatasourcename.trim().equals("") && !olduserdatasourcename.trim().equals("")){ try{ userdatasourcesession.cloneUserDataSource(admin,olduserdatasourcename.trim(),newuserdatasourcename.trim()); }catch( UserDataSourceExistsException e){ userdatasourceexists=true; } } } includefile=PAGE_USERDATASOURCES; } } if( action.equals(ACTION_EDIT_USERDATASOURCE)){ // Display edit access rules page.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -