WebServiceUserCredAddViewBean.java revision 4a2f0f0be43dfd4c1b490cbf3cc48b6ba6084b1c
07856bf23b706ef4e3654388d9ca26a720e0ad6aPeter Major/**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Copyright (c) 2007 Sun Microsystems Inc. All Rights Reserved
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * The contents of this file are subject to the terms
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * of the Common Development and Distribution License
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * (the License). You may not use this file except in
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * compliance with the License.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * You can obtain a copy of the License at
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * https://opensso.dev.java.net/public/CDDLv1.0.html or
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * opensso/legal/CDDLv1.0.txt
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * See the License for the specific language governing
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * permission and limitations under the License.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * When distributing Covered Code, include this CDDL
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Header Notice in each file and include the License file
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * at opensso/legal/CDDLv1.0.txt.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * If applicable, add the following below the CDDL Header,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * with the fields enclosed by brackets [] replaced by
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * your own identifying information:
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * "Portions Copyrighted [year] [name of copyright owner]"
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * $Id: WebServiceUserCredAddViewBean.java,v 1.3 2008/11/24 21:36:49 farble1670 Exp $
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
07856bf23b706ef4e3654388d9ca26a720e0ad6aPeter Major */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterpackage com.sun.identity.console.agentconfig;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.iplanet.jato.RequestManager;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.iplanet.jato.model.ModelControlException;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.iplanet.jato.view.View;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.iplanet.jato.view.event.RequestInvocationEvent;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.console.base.AMPrimaryMastHeadViewBean;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.console.base.AMPropertySheet;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.console.base.model.AMConsoleException;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.console.base.model.AMModel;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.console.base.model.AMModelBase;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.console.base.model.AMPropertySheetModel;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.identity.console.idm.model.EntitiesModel;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.web.ui.model.CCPageTitleModel;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.web.ui.model.CCPropertySheetModel;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.web.ui.view.alert.CCAlert;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport com.sun.web.ui.view.pagetitle.CCPageTitle;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport java.io.Serializable;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport java.util.Map;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport java.util.Set;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterimport javax.servlet.http.HttpServletRequest;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster/**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * View Bean to create new User Credential entry.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Fosterpublic class WebServiceUserCredAddViewBean
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster extends AMPrimaryMastHeadViewBean
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster{
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster static final String DEFAULT_DISPLAY_URL =
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "/console/agentconfig/WebServiceUserCredAdd.jsp";
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster private static final String PGTITLE_TWO_BTNS = "pgtitleTwoBtns";
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster private static final String PROPERTY_ATTRIBUTE = "propertyAttributes";
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster protected CCPageTitleModel ptModel;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster private AMPropertySheetModel propertySheetModel;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Creates a add user credential view bean.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public WebServiceUserCredAddViewBean() {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster super("WebServiceUserCredAdd");
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster setDefaultDisplayURL(DEFAULT_DISPLAY_URL);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster createPageTitleModel();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster propertySheetModel = new AMPropertySheetModel(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster getClass().getClassLoader().getResourceAsStream(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "com/sun/identity/console/propertyWebServiceAddUserCred.xml"));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster propertySheetModel.clear();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster registerChildren();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster protected void registerChildren() {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster super.registerChildren();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ptModel.registerChildren(this);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster registerChild(PGTITLE_TWO_BTNS, CCPageTitle.class);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster registerChild(PROPERTY_ATTRIBUTE, AMPropertySheet.class);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster propertySheetModel.registerChildren(this);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster protected View createChild(String name) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster View view = null;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster if (name.equals(PGTITLE_TWO_BTNS)) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster view = new CCPageTitle(this, ptModel, name);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } else if (name.equals(PROPERTY_ATTRIBUTE)) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster view = new AMPropertySheet(this, propertySheetModel, name);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } else if (propertySheetModel.isChildSupported(name)) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster view = propertySheetModel.createChild(this, name, getModel());
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } else if (ptModel.isChildSupported(name)) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster view = ptModel.createChild(this, name);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } else {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster view = super.createChild(name);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return view;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster private void createPageTitleModel() {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ptModel = new CCPageTitleModel(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster getClass().getClassLoader().getResourceAsStream(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "com/sun/identity/console/twoBtnsPageTitle.xml"));
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ptModel.setValue("button1",
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "web.services.profile.username-token-add-btn");
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ptModel.setValue("button2", "button.cancel");
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Handles cancel request.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @param event Request invocation event
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public void handleButton2Request(RequestInvocationEvent event) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster backTrail();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster WebServiceProviderEditViewBean vb = (WebServiceProviderEditViewBean)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster getViewBean(WebServiceProviderEditViewBean.class);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster passPgSessionMap(vb);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster vb.forwardTo(getRequestContext());
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster /**
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * Handles add user token request.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster *
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster * @param event Request invocation event
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster */
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster public void handleButton1Request(RequestInvocationEvent event)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster throws ModelControlException
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster AMPropertySheet ps = (AMPropertySheet)getChild(PROPERTY_ATTRIBUTE);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster CCPropertySheetModel model = (CCPropertySheetModel)ps.getModel();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster String username = (String)model.getValue("username");
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster String password = (String)model.getValue("password");
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster if ((username == null) || (username.trim().length() == 0) ||
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster (password == null) || (password.trim().length() == 0)) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster setInlineAlertMessage(CCAlert.TYPE_ERROR, "message.error",
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "breadcrumbs.add-web-service-usercred-mandate-username-password"
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster );
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster forwardTo();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } else {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Map map = (Map)getPageSessionAttribute(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster WebServiceEditViewBean.TRACKER_ATTR);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster try {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster WebServiceEditViewBean.addToUserCredTokenAttr(
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster username, password, map, getModel());
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster setPageSessionAttribute(WebServiceEditViewBean.TRACKER_ATTR,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster (Serializable)map);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster setPageSessionAttribute(AgentProfileViewBean.MODIFIED_PROFILE, "true");
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster backTrail();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster WebServiceProviderEditViewBean vb =
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster (WebServiceProviderEditViewBean)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster getViewBean(WebServiceProviderEditViewBean.class);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster passPgSessionMap(vb);
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster vb.forwardTo(getRequestContext());
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster } catch (AMConsoleException e) {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster setInlineAlertMessage(CCAlert.TYPE_ERROR, "message.error",
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster e.getMessage());
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster forwardTo();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster protected String getBreadCrumbDisplayName() {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return "breadcrumbs.add-web-service-usercred";
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster protected boolean startPageTrail() {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return false;
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster protected AMModel getModelInternal() {
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster HttpServletRequest req =
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster RequestManager.getRequestContext().getRequest();
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster return new AMModelBase(req, getPageSessionAttributes());
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster }
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster}
87eb3f7fa6a83f2e2682123f21cf20afcdc88f4aPeter Major