/** * Remove the given web component from me. */ public void removeWebComponentDescriptor(WebComponentDescriptor webComponentDescriptor) { webComponentDescriptor.setWebBundleDescriptor(null); getWebComponentDescriptors().remove(webComponentDescriptor); resetUrlPatternToServletNameMap(); }
/** * Adds a new Web Component Descriptor to me. * @param webComponentDescriptor */ public void addWebComponentDescriptor(WebComponentDescriptor webComponentDescriptor) { String name = webComponentDescriptor.getCanonicalName(); webComponentDescriptor.setWebBundleDescriptor(this); WebComponentDescriptor webCompDesc = getWebComponentByCanonicalName(name); WebComponentDescriptor resultDesc = combineWebComponentDescriptor(webComponentDescriptor); // sync up urlPattern2ServletName map for (String up : resultDesc.getUrlPatternsSet()) { String oldName = getUrlPatternToServletNameMap().put(up, name); if (oldName != null && (!oldName.equals(name))) { throw new IllegalArgumentException(localStrings.getLocalString( "enterprise.deployment.exceptionsameurlpattern", "Servlet [{0}] and Servlet [{1}] have the same url pattern: [{2}]", new Object[] { oldName, name, up })); } } }
/** * The copy constructor. */ public WebComponentDescriptor(WebComponentDescriptor other) { setCanonicalName(other.getCanonicalName()); setServlet(other.isServlet()); setWebComponentImplementation( other.getWebComponentImplementation()); getInitializationParameterSet().addAll( other.getInitializationParameterSet()); getUrlPatternsSet().addAll(other.getUrlPatternsSet()); setLoadOnStartUp(other.getLoadOnStartUp()); getSecurityRoleReferenceSet().addAll( other.getSecurityRoleReferenceSet()); setRunAsIdentity(other.getRunAsIdentity()); setAsyncSupported(other.isAsyncSupported()); setMultipartConfig(other.getMultipartConfig()); setWebBundleDescriptor(other.getWebBundleDescriptor()); setConflict(other.isConflict()); }
webComponentDescriptor.setWebBundleDescriptor(null);