/** * Configure context initialization parameter that is configured * in the server configuration file, rather than the application deployment * descriptor. This is convenient for establishing default values (which * may be configured to allow application overrides or not) without having * to modify the application deployment descriptor itself. */ protected static void configureApplicationListener( WebModule webModule, WebBundleDescriptor wmd) { Vector vector = wmd.getAppListenerDescriptors(); for (int i=0; i < vector.size() ; i++){ webModule.addApplicationListener( ((AppListenerDescriptor)vector.get(i)).getListener() ); } }
private HandlerProcessingResult processAnnotation( AnnotationInfo ainfo, WebBundleDescriptor webBundleDesc) throws AnnotationProcessorException { Class listenerClass = (Class)ainfo.getAnnotatedElement(); if (!(ServletContextListener.class.isAssignableFrom(listenerClass) || ServletContextAttributeListener.class.isAssignableFrom(listenerClass) || ServletRequestListener.class.isAssignableFrom(listenerClass) || ServletRequestAttributeListener.class.isAssignableFrom(listenerClass) || HttpSessionListener.class.isAssignableFrom(listenerClass) || HttpSessionAttributeListener.class.isAssignableFrom(listenerClass))) { log(Level.SEVERE, ainfo, localStrings.getLocalString( "enterprise.deployment.annotation.handlers.needtoimpllistenerinterface", "The Class {0} having annotation javax.servlet.annotation.WebListener need to implement one of the following interfaces: javax.servlet.ServletContextLisener, javax.servlet.ServletContextAttributeListener, javax.servlet.ServletRequestListener, javax.servletServletRequestAttributeListener, javax.servlet.http.HttpSessionListener, javax.servlet.http.HttpSessionAttributeListener.", listenerClass.getName())); return getDefaultFailedResult(); } WebListener listenerAn = (WebListener)ainfo.getAnnotation(); AppListenerDescriptor appListener = new AppListenerDescriptorImpl(listenerClass.getName()); appListener.setDescription(listenerAn.value()); webBundleDesc.addAppListenerDescriptor(appListener); return getDefaultProcessedResult(); } }
private void addWSServletContextListener(WebBundleDescriptor webBunDesc) { for(AppListenerDescriptor appListner: webBunDesc.getAppListenerDescriptors()) { if(appListner.getListener().equals(WSServletContextListener.class.getName())) { //already registered return; } } webBunDesc.addAppListenerDescriptor(new AppListenerDescriptorImpl(WSServletContextListener.class.getName())); }
AppListenerDescriptor listenerDesc = (AppListenerDescriptor) listeners.elementAt(j); String listenerName = listenerDesc.getListener(); if (isScan(listenerName, commonCL)) { addScanClassName(listenerDesc.getListener());