// This is not mandated by the spec. It is for WSIT. // We will also scan any servlets/filters/listeners classes specified // in web.xml additionally if those classes are not resided in the wars. private void scanXmlDefinedClassesIfNecessary(WebBundleDescriptor webBundleDesc) throws IOException { ClassLoader commonCL = clh.getCommonClassLoader(); for (Iterator webComponents = webBundleDesc.getWebComponentDescriptors().iterator(); webComponents.hasNext(); ) { WebComponentDescriptor webCompDesc = (WebComponentDescriptor) webComponents.next(); if (webCompDesc.isServlet()) { String servletName = webCompDesc.getWebComponentImplementation(); if (isScan(servletName, commonCL)) { addScanClassName(servletName); } } } Vector servletFilters = webBundleDesc.getServletFilters(); for (int i = 0; i < servletFilters.size(); i++) { ServletFilter filter = (ServletFilter) servletFilters.elementAt(i); String filterName = filter.getClassName(); if (isScan(filterName, commonCL)) { addScanClassName(filter.getClassName()); } } Vector listeners = webBundleDesc.getAppListenerDescriptors(); for (int j = 0; j < listeners.size(); j++) { AppListenerDescriptor listenerDesc = (AppListenerDescriptor) listeners.elementAt(j); String listenerName = listenerDesc.getListener(); if (isScan(listenerName, commonCL)) { addScanClassName(listenerDesc.getListener()); } } }
public WebComponentContext(WebComponentDescriptor wComp) { setDescriptor(wComp); if (wComp.isServlet()) { componentClassName = wComp.getWebComponentImplementation(); } }