You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by we...@apache.org on 2012/04/12 15:06:36 UTC
svn commit: r1325240 - in
/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main:
java/org/apache/myfaces/extensions/scripting/cdi/api/
java/org/apache/myfaces/extensions/scripting/cdi/core/
java/org/apache/myfaces/extensions/sc...
Author: werpu
Date: Thu Apr 12 13:06:35 2012
New Revision: 1325240
URL: http://svn.apache.org/viewvc?rev=1325240&view=rev
Log:
EXTSCRIPT-107: cdi works
Added:
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/resources/META-INF/beans.xml
Modified:
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/api/CdiContainerLoader.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/core/ReloadingListener.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContainerControl.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContextControl.java
myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/startup/ExtScriptStartupPlugin.java
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/api/CdiContainerLoader.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/api/CdiContainerLoader.java?rev=1325240&r1=1325239&r2=1325240&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/api/CdiContainerLoader.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/api/CdiContainerLoader.java Thu Apr 12 13:06:35 2012
@@ -49,14 +49,14 @@ public final class CdiContainerLoader
}
else
{
- throw new IllegalStateException("Could not find an implementation of " + org.apache.deltaspike.cdise.api.CdiContainer.class.getName() +
+ throw new IllegalStateException("Could not find an implementation of " + CdiContainer.class.getName() +
" available in the classpath!");
}
if (cdiIt.hasNext())
{
String foundContainers = getContainerDetails();
- throw new IllegalStateException("Too many implementations of " + org.apache.deltaspike.cdise.api.CdiContainer.class.getName() +
+ throw new IllegalStateException("Too many implementations of " + CdiContainer.class.getName() +
" found in the classpath! Details: " + foundContainers);
}
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/core/ReloadingListener.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/core/ReloadingListener.java?rev=1325240&r1=1325239&r2=1325240&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/core/ReloadingListener.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/core/ReloadingListener.java Thu Apr 12 13:06:35 2012
@@ -20,6 +20,7 @@
package org.apache.myfaces.extensions.scripting.cdi.core;
import org.apache.myfaces.extensions.scripting.cdi.api.CdiContainerLoader;
+import org.apache.myfaces.extensions.scripting.cdi.owb.OpenWebBeansContainerControl;
import org.apache.myfaces.extensions.scripting.core.api.eventhandling.WeavingEvent;
import org.apache.myfaces.extensions.scripting.core.api.eventhandling.WeavingEventListener;
import org.apache.myfaces.extensions.scripting.core.api.eventhandling.events.RefreshBeginEvent;
@@ -58,23 +59,27 @@ public class ReloadingListener implement
//TODO plug reloadable classloader in here temporarily
//as context classloader, then restart the container
//then restore the old classloader
- ClassLoader oldClassLoader = Thread.currentThread().getContextClassLoader();
- ClassLoader tempClassLoader = new ThrowAwayClassloader(oldClassLoader);
- Thread.currentThread().setContextClassLoader(tempClassLoader);
+ //ClassLoader oldClassLoader = Thread.currentThread().getContextClassLoader();
+ //ClassLoader tempClassLoader = new ThrowAwayClassloader(oldClassLoader);
+ //Thread.currentThread().setContextClassLoader(tempClassLoader);
try
{
- CdiContainerLoader.getCdiContainer().getContextControl(req.getServletContext(),
+ OpenWebBeansContainerControl container = (OpenWebBeansContainerControl) CdiContainerLoader
+ .getCdiContainer();
+ container.init();
+
+ container.getContextControl(req.getServletContext(),
req.getSession()).stopContexts();
- CdiContainerLoader.getCdiContainer().shutdown();
+ //container.shutdown();
- CdiContainerLoader.getCdiContainer().boot();
+ //CdiContainerLoader.getCdiContainer().boot();
- CdiContainerLoader.getCdiContainer().getContextControl(req.getServletContext(),
+ container.getContextControl(req.getServletContext(),
req.getSession()).startContexts();
}
finally
{
- Thread.currentThread().setContextClassLoader(oldClassLoader);
+ //Thread.currentThread().setContextClassLoader(oldClassLoader);
}
}
}
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContainerControl.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContainerControl.java?rev=1325240&r1=1325239&r2=1325240&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContainerControl.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContainerControl.java Thu Apr 12 13:06:35 2012
@@ -49,11 +49,15 @@ public class OpenWebBeansContainerContro
return lifecycle.getBeanManager();
}
+ public synchronized void init() {
+ lifecycle = WebBeansContext.getInstance().getService(ContainerLifecycle.class);
+ }
+
@Override
public synchronized void boot()
{
- lifecycle = WebBeansContext.getInstance().getService(ContainerLifecycle.class);
+ init();
lifecycle.startApplication(null);
}
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContextControl.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContextControl.java?rev=1325240&r1=1325239&r2=1325240&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContextControl.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/owb/OpenWebBeansContextControl.java Thu Apr 12 13:06:35 2012
@@ -44,7 +44,7 @@ import java.util.logging.Logger;
public class OpenWebBeansContextControl implements ContextControl
{
- private static final Logger LOG = Logger.getLogger(org.apache.deltaspike.cdise.owb.OpenWebBeansContextControl.class.getName());
+ private static final Logger LOG = Logger.getLogger(OpenWebBeansContextControl.class.getName());
private HttpSession session = null;
private ServletContext servletContext = null;
Modified: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/startup/ExtScriptStartupPlugin.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/startup/ExtScriptStartupPlugin.java?rev=1325240&r1=1325239&r2=1325240&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/startup/ExtScriptStartupPlugin.java (original)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/startup/ExtScriptStartupPlugin.java Thu Apr 12 13:06:35 2012
@@ -56,7 +56,8 @@ public class ExtScriptStartupPlugin impl
*/
public void postInit(ServletContextEvent evt)
{
- WeavingContext.getInstance().addListener(new ReloadingListener());
+ evt.getServletContext().setAttribute("ReloadingListener", new ReloadingListener());
+ WeavingContext.getInstance().addListener((ReloadingListener) evt.getServletContext().getAttribute("ReloadingListener"));
}
/**
Added: myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/resources/META-INF/beans.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/resources/META-INF/beans.xml?rev=1325240&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/resources/META-INF/beans.xml (added)
+++ myfaces/extensions/scripting/trunk/extscript-core-root/extscript-cdi/src/main/resources/META-INF/beans.xml Thu Apr 12 13:06:35 2012
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<beans xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
+</beans>
\ No newline at end of file