/** * Return the context path at which the web application is deployed. */ public String getContextPath() { String ctxPath = null; if (_wbd != null) { ctxPath = _wbd.getContextRoot().trim(); // Don't prefix a / if this web module is the default one // i.e. has an empty context-root if ((ctxPath.length() > 0) && !ctxPath.startsWith("/")) { ctxPath = "/" + ctxPath; } else if (ctxPath.equals("/")) { ctxPath = ""; } } return ctxPath; }
for (WebComponentDescriptor webComponentDesc :webBundleDescriptor.getWebComponentDescriptors()) addWebComponentDescriptor(webComponentDescriptor); getContextParametersSet().addAll(webBundleDescriptor.getContextParametersSet()); for (MimeMapping mimeMap : webBundleDescriptor.getMimeMappingsSet()) { addMimeMapping(mimeMap); for (ErrorPageDescriptor errPageDesc : webBundleDescriptor.getErrorPageDescriptorsSet()) { addErrorPageDescriptor(errPageDesc); getAppListeners().addAll(webBundleDescriptor.getAppListeners()); combineSecurityConstraints(getSecurityConstraintsSet(), webBundleDescriptor.getSecurityConstraintsSet()); combineServletFilters(webBundleDescriptor); combineServletFilterMappings(webBundleDescriptor); if (getLocaleEncodingMappingListDescriptor() == null) { setLocaleEncodingMappingListDescriptor(webBundleDescriptor.getLocaleEncodingMappingListDescriptor()); if (webBundleDescriptor.getJspConfigDescriptor() != null) { JspConfigDescriptor jspConfigDesc = getJspConfigDescriptor(); if (jspConfigDesc == null) { jspConfigDesc = new JspConfigDescriptor(); setJspConfigDescriptor(jspConfigDesc); jspConfigDescriptor.add(webBundleDescriptor.getJspConfigDescriptor());
Application app = webDesc.getApplication(); LoginConfiguration loginConfig = webDesc.getLoginConfiguration(); _realmName = app.getRealm(); if (_realmName == null && loginConfig != null) { Iterator bundle = webDesc.getWebComponentDescriptors().iterator(); this.moduleID = webDesc.getModuleID();
protected void combineLoginConfiguration(WebBundleDescriptor webBundleDescriptor) { if (getLoginConfiguration() == null) { if (webBundleDescriptor.conflictLoginConfig) { throw new IllegalArgumentException(localStrings.getLocalString( "enterprise.deployment.exceptionconflictloginconfig", "There are more than one login-config defined in web fragments with different values")); } else { setLoginConfiguration(webBundleDescriptor.getLoginConfiguration()); } } }
/** * Remove the given web component from me. */ public void removeWebComponentDescriptor(WebComponentDescriptor webComponentDescriptor) { webComponentDescriptor.setWebBundleDescriptor(null); getWebComponentDescriptors().remove(webComponentDescriptor); resetUrlPatternToServletNameMap(); }
public static String getContextID(WebBundleDescriptor wbd) { String cid = null; if (wbd != null ) { //String moduleId = wbd.getUniqueFriendlyId(); cid = VersioningUtils.getRepositoryName(wbd.getApplication().getRegistrationName()) + '/' + wbd.getUniqueFriendlyId(); } return cid; }
T webBundleDesc) { Node jarNode = super.writeDescriptor(parent, webBundleDesc); if (webBundleDesc.isDistributable()) { appendChild(jarNode, WebTagNames.DISTRIBUTABLE); addInitParam(jarNode, WebTagNames.CONTEXT_PARAM, webBundleDesc.getContextParametersSet()); for (Enumeration filters = webBundleDesc.getServletFilters().elements();filters.hasMoreElements();) { filterNode.writeDescriptor(jarNode, WebTagNames.FILTER, (ServletFilterDescriptor) filters.nextElement()); for (Enumeration mappings = webBundleDesc.getServletFilterMappings().elements(); mappings.hasMoreElements();) { filterMappingNode.writeDescriptor(jarNode, WebTagNames.FILTER_MAPPING, Vector appListeners = webBundleDesc.getAppListenerDescriptors(); if (appListeners!=null && !appListeners.isEmpty()) { ListenerNode listenerNode = new ListenerNode(); Set servlets = webBundleDesc.getWebComponentDescriptors(); if (servlets!=null && !servlets.isEmpty()) { ServletNode servletNode = new ServletNode(); if (webBundleDesc.getSpecVersion().equals("2.2")) { if (!pattern.startsWith("/") && !pattern.startsWith("*.")) { for (Enumeration e = webBundleDesc.getMimeMappings();e.hasMoreElements();) { MimeMappingDescriptor mimeMapping = (MimeMappingDescriptor) e.nextElement();
ctx.setContextRoot(wbd.getContextRoot()); } else { iasBean = wbd.getSunDescriptor(); if (wbd != null && wbd.hasWebServices()) { wbd.addExtraAttribute("WEBLOADER", loader); if (wbd.getApplication() != null && wbd.getApplication().isVirtual()) { wbd.visit(new WebValidatorWithoutCL()); if (wbd != null && wbd.getApplication() != null) { wbd.getApplication(); ctx.setStandalone(app.isVirtual()); monitoringNodeName = wbd.getModuleID(); } else { moduleName = wbd.getModuleDescriptor().getArchiveUri(); StringBuilder sb = new StringBuilder(); sb.append(app.getRegistrationName()). for (WebComponentDescriptor webCompDesc : wbd.getWebComponentDescriptors()) { if (webCompDesc.isServlet()) { servletNames.add(webCompDesc.getCanonicalName());
while (i.hasNext()) { WebBundleDescriptor wbd = (WebBundleDescriptor)i.next(); logger.finest("--[ Web module: " + wbd.getContextRoot() + " ]--"); LoginConfiguration lconf = wbd.getLoginConfiguration(); if (lconf != null) { logger.finest(" Login config: realm="+ Set webComps = wbd.getWebComponentDescriptors(); Iterator webCompsIt = webComps.iterator(); while (webCompsIt.hasNext()) { Enumeration scEnum = wbd.getSecurityConstraints(); while (scEnum.hasMoreElements()) {
/** * Search for a web component that I have by name. */ public WebComponentDescriptor getWebComponentByName(String name) { for (WebComponentDescriptor next : getWebComponentDescriptors()) { if (next.getName().equals(name)) { return (WebComponentDescriptor) next; } } return null; }
descriptor.addEjbReferenceDescriptor( (EjbReference) newDescriptor); } else if (newDescriptor instanceof EnvironmentProperty) { DOLUtils.getDefaultLogger().fine("Adding env entry" + newDescriptor); descriptor.addEnvironmentProperty((EnvironmentProperty) newDescriptor); } else if (newDescriptor instanceof WebComponentDescriptor) { DOLUtils.getDefaultLogger().fine("Adding web component" + newDescriptor); descriptor.addWebComponentDescriptor((WebComponentDescriptor) newDescriptor); } else if (newDescriptor instanceof TagLibConfigurationDescriptor) { if (descriptor.getJspConfigDescriptor()==null) { descriptor.setJspConfigDescriptor(new JspConfigDescriptor()); descriptor.getJspConfigDescriptor().addTagLib((TagLibConfigurationDescriptor) newDescriptor); } else if (newDescriptor instanceof JspConfigDescriptor) { DOLUtils.getDefaultLogger().fine("Adding JSP Config Descriptor" + newDescriptor); if (descriptor.getJspConfigDescriptor()!=null) { throw new RuntimeException( "Has more than one jsp-config element!"); descriptor.setJspConfigDescriptor( (JspConfigDescriptor)newDescriptor); } else if (newDescriptor instanceof LoginConfiguration) { DOLUtils.getDefaultLogger().fine("Adding Login Config Descriptor" + newDescriptor); if (descriptor.getLoginConfiguration()!=null) { throw new RuntimeException( "Has more than one login-config element!");
if (wbd.isStandalone()) { String contextRoot = params.contextroot; if(contextRoot==null) { contextRoot = wbd.getContextRoot(); if("".equals(contextRoot)) contextRoot = null; contextRoot = wbd.getModuleDescriptor().getModuleName(); if(contextRoot==null) contextRoot = dc.getSource().getName(); contextRoot = "/" + contextRoot; wbd.setContextRoot(contextRoot); wbd.setName(params.name());
contextRoot = webBundle.getContextRoot(); WebComponentDescriptor webComponent = webBundle.getWebComponentByCanonicalName(servletName); WebServicesDescriptor webServices = webBundle.getWebServices(); Collection<WebServiceEndpoint> endpoints = webServices.getEndpointsImplementedBy(webComponent);
(WebBundleDescriptor)map.get(HttpServletConstants.WEB_BUNDLE); if (webBundle != null) { LoginConfiguration loginConfig = webBundle.getLoginConfiguration(); if (loginConfig != null && LoginConfiguration.CLIENT_CERTIFICATION_AUTHENTICATION.equals( map.put(HttpServletConstants.POLICY_CONTEXT, policyContextId); SunWebApp sunWebApp = webBundle.getSunDescriptor(); String pid = (sunWebApp != null ? sunWebApp.getAttributeValue (sunWebApp.HTTPSERVLET_SECURITY_PROVIDER) : null);
private String getWebDir(String baseDir) { if (baseDir == null) { return null; } StringBuilder dir = new StringBuilder(baseDir); dir.append(File.separator); com.sun.enterprise.deployment.Application app = _wbd.getApplication(); if (app != null && !app.isVirtual()) { dir.append(FileUtils.makeFriendlyFilename( app.getRegistrationName())); dir.append(File.separator); dir.append(FileUtils.makeFriendlyFilename( _wbd.getModuleDescriptor().getArchiveUri())); } else { dir.append(FileUtils.makeLegalNoBlankFileName( _wbd.getModuleID())); } return dir.toString(); } }
void configureWebServices(WebBundleDescriptor wbd) { if (wbd.hasWebServices()) { setHasWebServices(true); // creates the list of endpoint addresses String[] endpointAddresses; WebServicesDescriptor webService = wbd.getWebServices(); Vector<String> endpointList = new Vector<String>(); for(WebServiceEndpoint wse : webService.getEndpoints()) { if(wbd.getContextRoot() != null) { endpointList.add(wbd.getContextRoot() + "/" + wse.getEndpointAddressUri()); } else { endpointList.add(wse.getEndpointAddressUri()); } } endpointAddresses = new String[endpointList.size()]; endpointList.copyInto(endpointAddresses); setEndpointAddresses(endpointAddresses); } else { setHasWebServices(false); } }
WLSecurityRoleAssignment roleMap = (WLSecurityRoleAssignment) newDescriptor; if (descriptor!=null) { descriptor.getSunDescriptor().addWLSecurityRoleAssignment(roleMap); Role role = new Role(roleMap.getRoleName()); Application app = descriptor.getApplication(); SecurityRoleMapper rm = null; if (app != null) { descriptor.getSunDescriptor().addResourceRef(resourceRef); try { ResourceReferenceDescriptor rrd = descriptor.getResourceReferenceByName(resourceRef.getResRefName()); rrd.setJndiName(resourceRef.getJndiName()); } catch (IllegalArgumentException iae) { descriptor.getSunDescriptor().addResourceEnvRef(resourceEnvRef); try { JmsDestinationReferenceDescriptor rrd = descriptor.getJmsDestinationReferenceByName(resourceEnvRef.getResourceEnvRefName()); rrd.setJndiName(resourceEnvRef.getJndiName()); } catch (IllegalArgumentException iae) { descriptor.getSunDescriptor().addEjbRef(ejbRef); try { EjbReference ref = descriptor.getEjbReference(ejbRef.getEjbRefName()); ref.setJndiName(ejbRef.getJndiName()); } catch (IllegalArgumentException iae) { descriptor.addServiceReferenceDescriptor((ServiceReferenceDescriptor) newDescriptor); } else { super.addDescriptor(newDescriptor);
private String getAppId() { return wbd.getApplication().getRegistrationName(); }
public WebSecurityManager createManager(WebBundleDescriptor wbd, boolean register, ServerContext context) { String ctxId = WebSecurityManager.getContextID(wbd); WebSecurityManager manager = null; if (register) { manager = getManager(ctxId, null,false); } if (manager == null || !register) { try { probeProvider.securityManagerCreationStartedEvent(wbd.getModuleID()); manager = new WebSecurityManager(wbd, context, this, register); probeProvider.securityManagerCreationEndedEvent(wbd.getModuleID()); if (register) { String appName = wbd.getApplication().getRegistrationName(); addManagerToApp(ctxId, null, appName, manager); probeProvider.securityManagerCreationEvent(ctxId); } } catch (javax.security.jacc.PolicyContextException e) { logger.log(Level.FINE, "[Web-Security] FATAL Exception. Unable to create WebSecurityManager: " + e.getMessage()); throw new RuntimeException(e); } } return manager; } }
boolean delegate = true; com.sun.enterprise.deployment.runtime.web.ClassLoader clBean = wbd.getSunDescriptor().getClassLoader(); if (clBean != null) { String value = clBean.getAttributeValue( classpath.append(ASClassLoaderUtil.getModuleClassPath( sc.getDefaultHabitat(), wbd.getApplication().getName(), dc.getCommandParameters( DeployCommandParameters.class).libraries)); } catch (DeploymentException de) { String msg = rb.getString("webdeployer.jspc"); msg = MessageFormat.format(msg, wbd.getApplication().getName()); logger.log(Level.SEVERE, msg, de); throw de;