[webbeans-commits] Webbeans SVN: r308 - in ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans: contexts and 1 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Fri Nov 14 07:36:23 EST 2008
Author: nickarls
Date: 2008-11-14 07:36:22 -0500 (Fri, 14 Nov 2008)
New Revision: 308
Added:
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/Lifecycle.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/Contexts.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ContextualHttpServletRequest.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletApplicationMap.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletRequestMap.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletRequestSessionMap.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletSessionMap.java
Modified:
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/ApplicationContext.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/NormalContext.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/RequestContext.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/SessionContext.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/WebBeansListener.java
Log:
First attempt at migrating parts of bootstrap/lifecycle/session propagation from Seam
Added: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/Lifecycle.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/Lifecycle.java (rev 0)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/Lifecycle.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -0,0 +1,52 @@
+package org.jboss.webbeans;
+
+import java.util.Map;
+
+import javax.webbeans.ApplicationScoped;
+import javax.webbeans.SessionScoped;
+
+import org.jboss.webbeans.contexts.Contexts;
+import org.jboss.webbeans.contexts.SessionContext;
+import org.jboss.webbeans.servlet.ServletApplicationMap;
+import org.jboss.webbeans.servlet.ServletSessionMap;
+
+public class Lifecycle
+{
+ private static ServletApplicationMap application;
+
+ public static void beginApplication(ServletApplicationMap serverApplicationMap)
+ {
+ application = serverApplicationMap;
+ }
+
+ public static Map<String, Object> getApplication()
+ {
+ return application;
+ }
+
+ public static void endApplication()
+ {
+ Contexts.destroyContext(ApplicationScoped.class);
+ Contexts.applicationContext.set(null);
+ application = null;
+ }
+
+ public static void beginSession(ServletSessionMap servletSessionMap)
+ {
+ Contexts.sessionContext.set(new SessionContext(servletSessionMap));
+ }
+
+ public static void endSession(ServletSessionMap servletSessionMap)
+ {
+ Contexts.destroyContext(SessionScoped.class);
+ Contexts.sessionContext.set(null);
+ }
+
+ public static void clearThreadlocals()
+ {
+ Contexts.applicationContext.set(null);
+ Contexts.sessionContext.set(null);
+ Contexts.requestContext.set(null);
+ }
+
+}
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java 2008-11-14 10:48:00 UTC (rev 307)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ManagerImpl.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -66,7 +66,7 @@
public DependentContext getDependentContext()
{
- return (DependentContext) get(Dependent.class).get(0);
+ return (DependentContext) get(Dependent.class).iterator().next();
}
@Override
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/ApplicationContext.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/ApplicationContext.java 2008-11-14 10:48:00 UTC (rev 307)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/ApplicationContext.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -1,5 +1,7 @@
package org.jboss.webbeans.contexts;
+import java.util.Map;
+
import javax.webbeans.ApplicationScoped;
public class ApplicationContext extends NormalContext {
@@ -9,6 +11,11 @@
super(ApplicationScoped.class);
}
+ public ApplicationContext(Map<String, Object> data)
+ {
+ super(ApplicationScoped.class, data);
+ }
+
@Override
public String toString()
{
Added: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/Contexts.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/Contexts.java (rev 0)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/Contexts.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -0,0 +1,30 @@
+package org.jboss.webbeans.contexts;
+
+import java.lang.annotation.Annotation;
+
+import javax.webbeans.manager.Context;
+
+public class Contexts
+{
+ public static final ThreadLocal<Context> sessionContext = new ThreadLocal<Context>();
+ public static final ThreadLocal<Context> requestContext = new ThreadLocal<Context>();
+ public static final ThreadLocal<Context> applicationContext = new ThreadLocal<Context>();
+
+ public Context getSessionContext() {
+ return sessionContext.get();
+ }
+
+ public Context getRequestContext() {
+ return requestContext.get();
+ }
+
+ public Context getApplicationContext() {
+ return applicationContext.get();
+ }
+
+ public static void destroyContext(Class<? extends Annotation> scopeType)
+ {
+ // TODO: destroy the context;
+ }
+
+}
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/NormalContext.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/NormalContext.java 2008-11-14 10:48:00 UTC (rev 307)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/NormalContext.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -1,6 +1,7 @@
package org.jboss.webbeans.contexts;
import java.lang.annotation.Annotation;
+import java.util.Map;
import javax.webbeans.ContextNotActiveException;
import javax.webbeans.manager.Bean;
@@ -18,6 +19,12 @@
active = true;
}
+ public NormalContext(Class<? extends Annotation> scopeType, Map<String, Object> data) {
+ super(scopeType);
+ // TODO: load data into map
+ active = true;
+ }
+
public <T> T get(Bean<T> bean, boolean create)
{
if (!active)
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/RequestContext.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/RequestContext.java 2008-11-14 10:48:00 UTC (rev 307)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/RequestContext.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -1,14 +1,22 @@
package org.jboss.webbeans.contexts;
+import java.util.Map;
+
import javax.webbeans.RequestScoped;
-public class RequestContext extends NormalContext {
+public class RequestContext extends NormalContext
+{
public RequestContext()
{
super(RequestScoped.class);
}
+ public RequestContext(Map<String, Object> data)
+ {
+ super(RequestScoped.class, data);
+ }
+
@Override
public String toString()
{
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/SessionContext.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/SessionContext.java 2008-11-14 10:48:00 UTC (rev 307)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/contexts/SessionContext.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -1,5 +1,7 @@
package org.jboss.webbeans.contexts;
+import java.util.Map;
+
import javax.webbeans.SessionScoped;
public class SessionContext extends NormalContext {
@@ -9,6 +11,11 @@
super(SessionScoped.class);
}
+ public SessionContext(Map<String, Object> data)
+ {
+ super(SessionScoped.class, data);
+ }
+
@Override
public String toString()
{
Added: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ContextualHttpServletRequest.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ContextualHttpServletRequest.java (rev 0)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ContextualHttpServletRequest.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -0,0 +1,41 @@
+package org.jboss.webbeans.servlet;
+
+import java.io.IOException;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+
+
+public abstract class ContextualHttpServletRequest
+{
+ private final HttpServletRequest request;
+
+ public ContextualHttpServletRequest(HttpServletRequest request)
+ {
+ this.request = request;
+ }
+
+ public abstract void process() throws Exception;
+
+ public void run() throws ServletException, IOException
+ {
+ ServletLifecycle.beginRequest(request);
+
+ if (request.getSession(false) == null)
+ {
+ request.getSession(true);
+ }
+
+ try
+ {
+ process();
+ } catch (Exception e)
+ {
+ throw new IOException(e);
+ } finally
+ {
+ ServletLifecycle.endRequest(request);
+ }
+ }
+
+}
Added: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletApplicationMap.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletApplicationMap.java (rev 0)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletApplicationMap.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -0,0 +1,90 @@
+package org.jboss.webbeans.servlet;
+
+import java.util.Collection;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import javax.servlet.ServletContext;
+
+public class ServletApplicationMap implements Map<String, Object>
+{
+ private ServletContext servletContext;
+
+ public ServletApplicationMap(ServletContext servletContext)
+ {
+ this.servletContext = servletContext;
+ }
+
+ public void clear()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public boolean containsKey(Object key)
+ {
+ return servletContext.getAttribute( (String) key )!=null;
+ }
+
+ public boolean containsValue(Object value)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Set<java.util.Map.Entry<String, Object>> entrySet()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Object get(Object key)
+ {
+ return servletContext.getAttribute( (String) key );
+ }
+
+ public boolean isEmpty()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Set<String> keySet()
+ {
+ Set<String> keys = new HashSet<String>();
+ Enumeration<String> names = servletContext.getAttributeNames();
+ while ( names.hasMoreElements() )
+ {
+ keys.add( names.nextElement() );
+ }
+ return keys;
+ }
+
+ public Object put(String key, Object value)
+ {
+ Object result = servletContext.getAttribute(key);
+ servletContext.setAttribute(key, value);
+ return result;
+ }
+
+ public void putAll(Map<? extends String, ? extends Object> t)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Object remove(Object key)
+ {
+ Object result = servletContext.getAttribute( (String) key );
+ servletContext.removeAttribute( (String) key );
+ return result;
+ }
+
+ public int size()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Collection<Object> values()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+}
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java 2008-11-14 10:48:00 UTC (rev 307)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletLifecycle.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -1,14 +1,15 @@
package org.jboss.webbeans.servlet;
import javax.servlet.ServletContext;
+import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
+import org.jboss.webbeans.Lifecycle;
+import org.jboss.webbeans.contexts.ApplicationContext;
+import org.jboss.webbeans.contexts.Contexts;
+import org.jboss.webbeans.contexts.RequestContext;
+import org.jboss.webbeans.contexts.SessionContext;
-/**
- *
- * @author Shane Bryzak
- *
- */
public class ServletLifecycle
{
private static ServletContext servletContext;
@@ -16,13 +17,33 @@
public static void beginApplication(ServletContext context)
{
servletContext = context;
+ Lifecycle.beginApplication(new ServletApplicationMap(context));
}
+ public static void endApplication() {
+ Lifecycle.endApplication();
+ servletContext = null;
+ }
+
public static void beginSession(HttpSession session)
{
- // TODO
+ Lifecycle.beginSession( new ServletSessionMap(session) );
}
+ public static void endSession(HttpSession session) {
+ Lifecycle.endSession( new ServletSessionMap(session) );
+ }
+
+ public static void beginRequest(HttpServletRequest request) {
+ Contexts.applicationContext.set(new ApplicationContext( Lifecycle.getApplication() ) );
+ Contexts.requestContext.set( new RequestContext( new ServletRequestMap(request) ) );
+ Contexts.sessionContext.set( new SessionContext( new ServletRequestSessionMap(request) ) );
+ }
+
+ public static void endRequest(HttpServletRequest request) {
+ Lifecycle.clearThreadlocals();
+ }
+
public static ServletContext getServletContext()
{
return servletContext;
Added: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletRequestMap.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletRequestMap.java (rev 0)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletRequestMap.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -0,0 +1,91 @@
+package org.jboss.webbeans.servlet;
+
+import java.util.Collection;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import javax.servlet.ServletRequest;
+
+public class ServletRequestMap implements Map<String, Object>
+{
+
+ private ServletRequest request;
+
+ public ServletRequestMap(ServletRequest request)
+ {
+ this.request = request;
+ }
+
+ public void clear()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public boolean containsKey(Object key)
+ {
+ return request.getAttribute( (String) key )!=null;
+ }
+
+ public boolean containsValue(Object value)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Set<java.util.Map.Entry<String, Object>> entrySet()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Object get(Object key)
+ {
+ return request.getAttribute( (String) key );
+ }
+
+ public boolean isEmpty()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Set<String> keySet()
+ {
+ Set<String> keys = new HashSet<String>();
+ Enumeration<String> names = request.getAttributeNames();
+ while ( names.hasMoreElements() )
+ {
+ keys.add( names.nextElement() );
+ }
+ return keys;
+ }
+
+ public Object put(String key, Object value)
+ {
+ Object result = request.getAttribute(key);
+ request.setAttribute(key, value);
+ return result;
+ }
+
+ public void putAll(Map<? extends String, ? extends Object> t)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Object remove(Object key)
+ {
+ Object result = request.getAttribute( (String) key );
+ request.removeAttribute( (String) key );
+ return result;
+ }
+
+ public int size()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Collection<Object> values()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+}
Added: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletRequestSessionMap.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletRequestSessionMap.java (rev 0)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletRequestSessionMap.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -0,0 +1,111 @@
+package org.jboss.webbeans.servlet;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
+
+public class ServletRequestSessionMap implements Map<String, Object>
+{
+ private HttpServletRequest request;
+
+ public ServletRequestSessionMap(HttpServletRequest request)
+ {
+ this.request = request;
+ }
+
+ public void clear()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public boolean containsKey(Object key)
+ {
+ HttpSession session = request.getSession(false);
+ return session==null ? false : session.getAttribute( (String) key )!=null;
+ }
+
+ public boolean containsValue(Object value)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Set<java.util.Map.Entry<String, Object>> entrySet()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Object get(Object key)
+ {
+ HttpSession session = request.getSession(false);
+ return session==null ? null : session.getAttribute( (String) key );
+ }
+
+ public boolean isEmpty()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Set<String> keySet()
+ {
+ HttpSession session = request.getSession(false);
+ if (session==null)
+ {
+ return Collections.EMPTY_SET;
+ }
+ else
+ {
+ Set<String> keys = new HashSet<String>();
+ Enumeration<String> names = session.getAttributeNames();
+ while ( names.hasMoreElements() )
+ {
+ keys.add( names.nextElement() );
+ }
+ return keys;
+ }
+ }
+
+ public Object put(String key, Object value)
+ {
+ HttpSession session = request.getSession(true);
+ Object result = session.getAttribute(key);
+ session.setAttribute(key, value);
+ return result;
+ }
+
+ public void putAll(Map<? extends String, ? extends Object> t)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Object remove(Object key)
+ {
+ HttpSession session = request.getSession(false);
+ if (session==null)
+ {
+ return null;
+ }
+ else
+ {
+ Object result = session.getAttribute( (String) key );
+ session.removeAttribute( (String) key );
+ return result;
+ }
+ }
+
+ public int size()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Collection<Object> values()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+}
Added: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletSessionMap.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletSessionMap.java (rev 0)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/ServletSessionMap.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -0,0 +1,90 @@
+package org.jboss.webbeans.servlet;
+
+import java.util.Collection;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import javax.servlet.http.HttpSession;
+
+public class ServletSessionMap implements Map<String, Object>
+{
+ private HttpSession session;
+
+ public ServletSessionMap(HttpSession session)
+ {
+ this.session = session;
+ }
+
+ public void clear()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public boolean containsKey(Object key)
+ {
+ return session.getAttribute( (String) key )!=null;
+ }
+
+ public boolean containsValue(Object value)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Set<java.util.Map.Entry<String, Object>> entrySet()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Object get(Object key)
+ {
+ return session.getAttribute( (String) key );
+ }
+
+ public boolean isEmpty()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Set<String> keySet()
+ {
+ Set<String> keys = new HashSet<String>();
+ Enumeration<String> names = session.getAttributeNames();
+ while ( names.hasMoreElements() )
+ {
+ keys.add( names.nextElement() );
+ }
+ return keys;
+ }
+
+ public Object put(String key, Object value)
+ {
+ Object result = session.getAttribute(key);
+ session.setAttribute(key, value);
+ return result;
+ }
+
+ public void putAll(Map<? extends String, ? extends Object> t)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Object remove(Object key)
+ {
+ Object result = session.getAttribute( (String) key );
+ session.removeAttribute( (String) key );
+ return result;
+ }
+
+ public int size()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public Collection<Object> values()
+ {
+ throw new UnsupportedOperationException();
+ }
+
+}
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/WebBeansListener.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/WebBeansListener.java 2008-11-14 10:48:00 UTC (rev 307)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/servlet/WebBeansListener.java 2008-11-14 12:36:22 UTC (rev 308)
@@ -5,35 +5,27 @@
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
-
-/**
- *
- * @author Shane Bryzak
- *
- */
public class WebBeansListener implements ServletContextListener, HttpSessionListener
{
public void contextInitialized(ServletContextEvent event)
{
- ServletLifecycle.beginApplication( event.getServletContext() );
+ ServletLifecycle.beginApplication(event.getServletContext());
}
public void sessionCreated(HttpSessionEvent event)
{
- ServletLifecycle.beginSession( event.getSession() );
+ ServletLifecycle.beginSession(event.getSession());
}
public void sessionDestroyed(HttpSessionEvent event)
{
- // TODO Auto-generated method stub
-
+ ServletLifecycle.endSession(event.getSession());
}
public void contextDestroyed(ServletContextEvent event)
{
- // TODO Auto-generated method stub
-
+ ServletLifecycle.endApplication();
}
}
More information about the weld-commits
mailing list