https://issues.apache.org/jira/browse/EXTSCRIPT-164
git-svn-id: https://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk@1340912 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/core/ExtScriptScannerService.java b/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/core/ExtScriptScannerService.java
index 768da39..696dd71 100644
--- a/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/core/ExtScriptScannerService.java
+++ b/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/core/ExtScriptScannerService.java
@@ -42,6 +42,7 @@
*/
public class ExtScriptScannerService extends AbstractMetaDataDiscovery
{
+ private static final String RELOADING_LISTENER = "ReloadingListener";
private final WebBeansLogger logger = WebBeansLogger.getLogger(ExtScriptScannerService.class);
private boolean configure = false;
@@ -57,9 +58,16 @@
{
super.init(context);
this.servletContext = (ServletContext) context;
+ initExtScript(this.servletContext);
+ }
+
+ private void initExtScript(ServletContext servletContext)
+ {
try
{
StartupServletContextPluginChainLoader.startup(servletContext);
+ servletContext.setAttribute(RELOADING_LISTENER, new ReloadingListener());
+ WeavingContext.getInstance().addListener((ReloadingListener) servletContext.getAttribute(RELOADING_LISTENER));
}
catch (IOException e)
{
diff --git a/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/startup/ExtScriptStartupPlugin.java b/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/startup/ExtScriptStartupPlugin.java
index cf9e5ba..1f5018f 100644
--- a/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/startup/ExtScriptStartupPlugin.java
+++ b/extscript-core-root/extscript-cdi/src/main/java/org/apache/myfaces/extensions/scripting/cdi/startup/ExtScriptStartupPlugin.java
@@ -56,8 +56,9 @@
*/
public void postInit(ServletContextEvent evt)
{
- evt.getServletContext().setAttribute("ReloadingListener", new ReloadingListener());
- WeavingContext.getInstance().addListener((ReloadingListener) evt.getServletContext().getAttribute("ReloadingListener"));
+ // evt.getServletContext().setAttribute("ReloadingListener", new ReloadingListener());
+ // WeavingContext.getInstance().addListener((ReloadingListener) evt.getServletContext().getAttribute
+ // ("ReloadingListener"));
}
/**
diff --git a/extscript-core-root/extscript-cdi/src/main/resources/META-INF/services/org.apache.myfaces.extensions.scripting.core.api.Plugin b/extscript-core-root/extscript-cdi/src/main/resources/META-INF/services/org.apache.myfaces.extensions.scripting.core.api.Plugin
index e93db49..47f326a 100644
--- a/extscript-core-root/extscript-cdi/src/main/resources/META-INF/services/org.apache.myfaces.extensions.scripting.core.api.Plugin
+++ b/extscript-core-root/extscript-cdi/src/main/resources/META-INF/services/org.apache.myfaces.extensions.scripting.core.api.Plugin
@@ -16,5 +16,5 @@
# specific language governing permissions and limitations
# under the License.
#####################################################################################
-
+#deprecated not needed anymore
org.apache.myfaces.extensions.scripting.cdi.startup.ExtScriptStartupPlugin
\ No newline at end of file
diff --git a/extscript-core-root/extscript-core/pom.xml b/extscript-core-root/extscript-core/pom.xml
index 8091e28..a6ac4d6 100644
--- a/extscript-core-root/extscript-core/pom.xml
+++ b/extscript-core-root/extscript-core/pom.xml
@@ -63,13 +63,6 @@
</dependency>
<dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.8.1</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
<groupId>javax.xml.stream</groupId>
<artifactId>stax-api</artifactId>
<version>1.0-2</version>
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/Configuration.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/Configuration.java
index ba55da2..a7cf915 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/Configuration.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/Configuration.java
@@ -27,12 +27,24 @@
import java.io.File;
import java.lang.ref.WeakReference;
import java.net.MalformedURLException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentSkipListSet;
import java.util.concurrent.CopyOnWriteArrayList;
-import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.*;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ENGINE_TYPE_JSF_GROOVY;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ENGINE_TYPE_JSF_JAVA;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.GROOVY_FILE_ENDING;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.INIT_PARAM_INITIAL_COMPILE;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.INIT_PARAM_RESOURCE_PATH;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.INIT_PARAM_SCRIPTING_ADDITIONAL_CLASSPATH;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.INIT_PARAM_SCRIPTING_PACKAGE_WHITELIST;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.JAVA_FILE_ENDING;
/**
* @author Werner Punz (latest modification by $Author$)
@@ -43,7 +55,7 @@
{
private static final String WEB_INF_CLASSES = "/WEB-INF/classes";
List<String> _additionalClassPath = new CopyOnWriteArrayList<String>();
- /**
+ /** kk
* the package whitelist used by our system
* to determine which packages are under control.
* <p/>
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/Plugin.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/Plugin.java
index fcbd61b..be01ebd 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/Plugin.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/Plugin.java
@@ -19,9 +19,6 @@
package org.apache.myfaces.extensions.scripting.core.api;
-import org.apache.myfaces.webapp.StartupListener;
-
-import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
/**
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/WeavingContext.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/WeavingContext.java
index 489f6be..2d81aec 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/WeavingContext.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/WeavingContext.java
@@ -19,9 +19,9 @@
package org.apache.myfaces.extensions.scripting.core.api;
-import org.apache.myfaces.extensions.scripting.core.api.eventhandling.events.BeginCompiling;
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.BeginCompiling;
import org.apache.myfaces.extensions.scripting.core.api.eventhandling.events.EndCompiling;
import org.apache.myfaces.extensions.scripting.core.common.util.ClassUtils;
import org.apache.myfaces.extensions.scripting.core.common.util.ReflectUtil;
@@ -39,7 +39,16 @@
import java.io.IOException;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Proxy;
-import java.util.*;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.WeakHashMap;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/eventhandling/events/RefreshBeginEvent.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/eventhandling/events/RefreshBeginEvent.java
index a2120ae..41d7ab9 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/eventhandling/events/RefreshBeginEvent.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/api/eventhandling/events/RefreshBeginEvent.java
@@ -21,8 +21,6 @@
import org.apache.myfaces.extensions.scripting.core.api.eventhandling.WeavingEvent;
-import javax.servlet.ServletRequest;
-
/**
* @author Werner Punz (latest modification by $Author$)
* @version $Revision$ $Date$
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/common/util/FileUtils.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/common/util/FileUtils.java
index aefd06e..675f57a 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/common/util/FileUtils.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/common/util/FileUtils.java
@@ -92,6 +92,10 @@
tempDir.deleteOnExit();
}
} */
+ if(!tempDir.exists()) {
+ tempDir.mkdirs();
+ }
+ tempDir.deleteOnExit();
return tempDir;
}
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/common/util/ReflectUtil.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/common/util/ReflectUtil.java
index fb7bce7..6a21517 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/common/util/ReflectUtil.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/common/util/ReflectUtil.java
@@ -20,7 +20,11 @@
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
-import java.lang.reflect.*;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Collection;
import java.util.logging.Level;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/BaseEngine.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/BaseEngine.java
index 05582a7..60c9427 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/BaseEngine.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/BaseEngine.java
@@ -29,9 +29,12 @@
import javax.servlet.ServletContext;
import java.io.File;
import java.net.URL;
-import java.util.*;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.CopyOnWriteArrayList;
import java.util.logging.Logger;
/**
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/BaseScanner.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/BaseScanner.java
index 8e1018e..06a0fcf 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/BaseScanner.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/BaseScanner.java
@@ -19,7 +19,6 @@
package org.apache.myfaces.extensions.scripting.core.engine;
-import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
import org.apache.myfaces.extensions.scripting.core.engine.api.ScriptingEngine;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.StandardDependencyScanner;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineGroovy.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineGroovy.java
index 6e64b03..f64b3b2 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineGroovy.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineGroovy.java
@@ -20,8 +20,6 @@
package org.apache.myfaces.extensions.scripting.core.engine;
import groovy.lang.GroovyObject;
-import org.apache.myfaces.extensions.scripting.core.reloading.SimpleReloadingStrategy;
-import org.apache.myfaces.extensions.scripting.groovyloader.core.GroovyPropertyMapper;
import org.apache.myfaces.extensions.scripting.core.api.Configuration;
import org.apache.myfaces.extensions.scripting.core.api.ReloadingStrategy;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
@@ -29,13 +27,17 @@
import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
import org.apache.myfaces.extensions.scripting.core.engine.api.ScriptingEngine;
import org.apache.myfaces.extensions.scripting.core.engine.compiler.GroovyCompiler;
+import org.apache.myfaces.extensions.scripting.core.reloading.SimpleReloadingStrategy;
+import org.apache.myfaces.extensions.scripting.groovyloader.core.GroovyPropertyMapper;
import javax.servlet.ServletContext;
import java.io.File;
import java.util.Collection;
import java.util.logging.Logger;
-import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.*;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ENGINE_TYPE_JSF_GROOVY;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.GROOVY_SOURCE_ROOT;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.INIT_PARAM_CUSTOM_GROOVY_LOADER_PATHS;
/**
* @author Werner Punz (latest modification by $Author$)
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineJava.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineJava.java
index e3a270c..3605dcd 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineJava.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineJava.java
@@ -19,13 +19,12 @@
package org.apache.myfaces.extensions.scripting.core.engine;
-import groovy.lang.GroovyObject;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.myfaces.extensions.scripting.core.api.Configuration;
import org.apache.myfaces.extensions.scripting.core.api.ReloadingStrategy;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
import org.apache.myfaces.extensions.scripting.core.common.util.ClassUtils;
-import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationException;
+import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationMessage;
import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
import org.apache.myfaces.extensions.scripting.core.engine.api.ScriptingEngine;
import org.apache.myfaces.extensions.scripting.core.engine.compiler.JSR199Compiler;
@@ -38,7 +37,9 @@
import java.util.logging.Level;
import java.util.logging.Logger;
-import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.*;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ENGINE_TYPE_JSF_JAVA;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.INIT_PARAM_CUSTOM_JAVA_LOADER_PATHS;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.JAVA_SOURCE_ROOT;
/**
* @author Werner Punz (latest modification by $Author$)
@@ -73,7 +74,7 @@
res = compiler.compile(new File(sourceRoot), targetDir,
ClassUtils.getContextClassLoader());
if(res.hasErrors()) {
- for(CompilationResult.CompilationMessage msg :res.getErrors()) {
+ for(CompilationMessage msg :res.getErrors()) {
log.severe(msg.getMessage());
}
// log.severe(res.getCompilerOutput());
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineScala.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineScala.java
index a540e55..5cfffd6 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineScala.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/EngineScala.java
@@ -26,7 +26,6 @@
import org.apache.myfaces.extensions.scripting.core.common.util.ClassUtils;
import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
import org.apache.myfaces.extensions.scripting.core.engine.api.ScriptingEngine;
-import org.apache.myfaces.extensions.scripting.core.engine.compiler.GroovyCompiler;
import org.apache.myfaces.extensions.scripting.core.engine.compiler.ScalaCompiler;
import org.apache.myfaces.extensions.scripting.core.reloading.SimpleReloadingStrategy;
import scala.ScalaObject;
@@ -38,7 +37,9 @@
import java.util.logging.Level;
import java.util.logging.Logger;
-import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.*;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ENGINE_TYPE_JSF_SCALA;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.INIT_PARAM_CUSTOM_SCALA_LOADER_PATHS;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.SCALA_SOURCE_ROOT;
/**
* @author Werner Punz (latest modification by $Author$)
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/FactoryEngines.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/FactoryEngines.java
index 69b6243..ee83650 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/FactoryEngines.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/FactoryEngines.java
@@ -23,7 +23,11 @@
import org.apache.myfaces.extensions.scripting.core.engine.api.ScriptingEngine;
import java.io.IOException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
import java.util.logging.Logger;
/**
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/ThrowAwayClassloader.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/ThrowAwayClassloader.java
index 299973c..63d68e5 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/ThrowAwayClassloader.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/ThrowAwayClassloader.java
@@ -23,7 +23,11 @@
import org.apache.myfaces.extensions.scripting.core.common.util.ClassUtils;
import org.apache.myfaces.extensions.scripting.core.monitor.ClassResource;
-import java.io.*;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/CompilationMessage.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/CompilationMessage.java
new file mode 100644
index 0000000..e25deba
--- /dev/null
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/CompilationMessage.java
@@ -0,0 +1,94 @@
+/*
+ * 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.
+ */
+
+package org.apache.myfaces.extensions.scripting.core.engine.api;
+
+/**
+ * @author Werner Punz (latest modification by $Author$)
+ * @version $Revision$ $Date$
+ */
+
+/**
+ * <p>Utility class that contains all the required information regarding
+ * a single compilation message.</p>
+ */
+public class CompilationMessage
+{
+
+ /**
+ * the line number of this compilation message
+ */
+ private long lineNumber;
+
+ /**
+ * the actual compilation message
+ */
+ private String message;
+
+ // -------------------------------------- Constructors
+
+ /**
+ * <p>Constructs a new compilation message using the line number
+ * and the actual compilation message as a string.</p>
+ *
+ * @param lineNumber the line number
+ * @param message the actual compilation message
+ */
+ public CompilationMessage(long lineNumber, String message)
+ {
+ this.lineNumber = lineNumber;
+ this.message = message;
+ }
+
+ // -------------------------------------- Public methods
+
+ /**
+ * <p>The number of the relevant line where this warning or error
+ * has occured, or <code>-1</code> if it is not known.</p>
+ *
+ * @return the line number
+ */
+ public long getLineNumber()
+ {
+ return lineNumber;
+ }
+
+ /**
+ * <p>Returns the message itself as a string, i.e. the textual content
+ * of whatever the compiler complained about.</p>
+ *
+ * @return the message itself as a string
+ */
+ public String getMessage()
+ {
+ return message;
+ }
+
+ /**
+ * <p>Returns a string representation of this compilation message.</p>
+ *
+ * @return a string representation of this compilation message
+ */
+ @Override
+ public String toString()
+ {
+ return String.format(
+ "CompilationMessage[lineNumber='%s', message='%s']", lineNumber, message);
+ }
+}
\ No newline at end of file
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/CompilationResult.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/CompilationResult.java
index c16ba58..6d7c471 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/CompilationResult.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/CompilationResult.java
@@ -132,68 +132,6 @@
// ------------------------------------------ Public static classes
- /**
- * <p>Utility class that contains all the required information regarding
- * a single compilation message.</p>
- */
- public static class CompilationMessage {
- /**
- * the line number of this compilation message
- */
- private long lineNumber;
-
- /**
- * the actual compilation message
- */
- private String message;
-
- // -------------------------------------- Constructors
-
- /**
- * <p>Constructs a new compilation message using the line number
- * and the actual compilation message as a string.</p>
- *
- * @param lineNumber the line number
- * @param message the actual compilation message
- */
- public CompilationMessage(long lineNumber, String message) {
- this.lineNumber = lineNumber;
- this.message = message;
- }
-
- // -------------------------------------- Public methods
-
- /**
- * <p>The number of the relevant line where this warning or error
- * has occured, or <code>-1</code> if it is not known.</p>
- *
- * @return the line number
- */
- public long getLineNumber() {
- return lineNumber;
- }
-
- /**
- * <p>Returns the message itself as a string, i.e. the textual content
- * of whatever the compiler complained about.</p>
- *
- * @return the message itself as a string
- */
- public String getMessage() {
- return message;
- }
-
- /**
- * <p>Returns a string representation of this compilation message.</p>
- *
- * @return a string representation of this compilation message
- */
- @Override
- public String toString() {
- return String.format(
- "CompilationMessage[lineNumber='%s', message='%s']", lineNumber, message);
- }
- }
}
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/Compiler.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/Compiler.java
index 548713a..99857ef 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/Compiler.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/Compiler.java
@@ -40,6 +40,6 @@
* @throws CompilationException
* if a severe error occurred while trying to compile a file
*/
- public CompilationResult compile(File sourcePath, File targetPath, ClassLoader classLoader);
+ public CompilationResult compile(File sourcePath, File targetPath, ClassLoader classLoader) throws CompilationException;
}
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/ScriptingEngine.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/ScriptingEngine.java
index 3773101..f55d5fc 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/ScriptingEngine.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/api/ScriptingEngine.java
@@ -22,11 +22,9 @@
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.api.DependencyRegistry;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.core.ClassDependencies;
import org.apache.myfaces.extensions.scripting.core.monitor.ClassResource;
-import org.apache.myfaces.extensions.scripting.core.monitor.WatchedResource;
import javax.servlet.ServletContext;
import java.util.Collection;
-import java.util.List;
import java.util.Map;
/**
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/ContainerFileManager.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/ContainerFileManager.java
index d34ec3e..6369b97 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/ContainerFileManager.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/ContainerFileManager.java
@@ -38,53 +38,13 @@
public class ContainerFileManager extends ForwardingJavaFileManager<StandardJavaFileManager> {
- StandardJavaFileManager _delegate = null;
String _classPath = null;
-
public ContainerFileManager(StandardJavaFileManager standardJavaFileManager) {
super(standardJavaFileManager);
- _delegate = standardJavaFileManager;
- }
-
- @Override
- public JavaFileObject getJavaFileForOutput(Location location, String s, JavaFileObject.Kind kind, FileObject fileObject) throws IOException {
- return super.getJavaFileForOutput(location, s, kind, fileObject);
- }
-
- @Override
- public ClassLoader getClassLoader(Location location) {
- return Thread.currentThread().getContextClassLoader();
- }
-
- public ClassLoader getClassLoader() {
- return Thread.currentThread().getContextClassLoader();
}
public Iterable<? extends JavaFileObject> getJavaFileObjects(File... files) {
- return _delegate.getJavaFileObjects(files);
+ return fileManager.getJavaFileObjects(files);
}
-
- public Iterable<? extends JavaFileObject> getJavaFileObjects(String... files) {
- return _delegate.getJavaFileObjects(files);
- }
-
- public Iterable<? extends JavaFileObject> getJavaFileObjectsSingle(String files) {
- return _delegate.getJavaFileObjects(files);
- }
-
- public String getClassPath() {
- if (_classPath != null) {
- return _classPath;
- }
-
- String retStr = ClassLoaderUtils.buildClasspath(getClassLoader(null));
-
- return (_classPath = retStr);
- }
-
- public File getTempDir() {
- return WeavingContext.getInstance().getConfiguration().getCompileTarget();
- }
-
}
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/GroovyCompiler.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/GroovyCompiler.java
index 1089e57..c972f83 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/GroovyCompiler.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/GroovyCompiler.java
@@ -18,6 +18,13 @@
*/
package org.apache.myfaces.extensions.scripting.core.engine.compiler;
+import org.apache.myfaces.extensions.scripting.core.api.Configuration;
+import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
+import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
+import org.apache.myfaces.extensions.scripting.core.common.util.ClassLoaderUtils;
+import org.apache.myfaces.extensions.scripting.core.common.util.FileUtils;
+import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationMessage;
+import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
import org.codehaus.groovy.control.CompilationFailedException;
import org.codehaus.groovy.control.CompilationUnit;
import org.codehaus.groovy.control.CompilerConfiguration;
@@ -25,12 +32,6 @@
import org.codehaus.groovy.control.messages.Message;
import org.codehaus.groovy.control.messages.SimpleMessage;
import org.codehaus.groovy.control.messages.SyntaxErrorMessage;
-import org.apache.myfaces.extensions.scripting.core.api.Configuration;
-import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
-import org.apache.myfaces.extensions.scripting.core.common.util.ClassLoaderUtils;
-import org.apache.myfaces.extensions.scripting.core.common.util.FileUtils;
-import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
import java.io.File;
import java.io.PrintWriter;
@@ -111,13 +112,13 @@
* @param message the Groovy compiler message you want to convert
* @return the final converted compilation message
*/
- protected CompilationResult.CompilationMessage convertMessage(Message message) {
+ protected CompilationMessage convertMessage(Message message) {
if (message instanceof SimpleMessage) {
SimpleMessage simpleMessage = (SimpleMessage) message;
- return new CompilationResult.CompilationMessage(-1, simpleMessage.getMessage());
+ return new CompilationMessage(-1, simpleMessage.getMessage());
} else if (message instanceof SyntaxErrorMessage) {
SyntaxErrorMessage syntaxErrorMessage = (SyntaxErrorMessage) message;
- return new CompilationResult.CompilationMessage(
+ return new CompilationMessage(
syntaxErrorMessage.getCause().getLine(), syntaxErrorMessage.getCause().getMessage());
} else {
if (_logger.isLoggable(Level.FINE)) {
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/JSR199Compiler.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/JSR199Compiler.java
index ad17d27..2ca5c1e 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/JSR199Compiler.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/JSR199Compiler.java
@@ -20,24 +20,24 @@
package org.apache.myfaces.extensions.scripting.core.engine.compiler;
import org.apache.myfaces.extensions.scripting.core.api.Configuration;
-import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
+import org.apache.myfaces.extensions.scripting.core.common.util.ClassLoaderUtils;
import org.apache.myfaces.extensions.scripting.core.common.util.FileUtils;
-import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationException;
+import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationMessage;
import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
import javax.tools.Diagnostic;
import javax.tools.DiagnosticCollector;
+import javax.tools.JavaFileManager;
import javax.tools.JavaFileObject;
+import javax.tools.StandardJavaFileManager;
import javax.tools.ToolProvider;
import java.io.File;
-import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
-import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -55,7 +55,7 @@
{
javax.tools.JavaCompiler javaCompiler = ToolProvider.getSystemJavaCompiler();
- ContainerFileManager fileManager = null;
+ StandardJavaFileManager fileManager = null;
public JSR199Compiler()
@@ -80,7 +80,8 @@
WeavingContext context = WeavingContext.getInstance();
Configuration configuration = context.getConfiguration();
destination.mkdirs();
- fileManager = new ContainerFileManager(javaCompiler.getStandardFileManager(new DiagnosticCollector<JavaFileObject>(), null, null));
+ fileManager = javaCompiler.getStandardFileManager(new
+ DiagnosticCollector<JavaFileObject>(), Locale.getDefault(), null);
DiagnosticCollector<JavaFileObject> diagnosticCollector = new DiagnosticCollector<JavaFileObject>();
@@ -104,16 +105,18 @@
for (File sourceFile : sourceFiles)
{
- System.out.println("-----------------"+sourceFile.getAbsolutePath());
if (!sourceFile.exists())
{
getLog().log(Level.WARNING, "[EXT-SCRIPTING] Source file with path {0} does not exist it might cause an error in the compilation process", sourceFile.getAbsolutePath());
}
}
Iterable<? extends JavaFileObject> fileObjects = fileManager.getJavaFileObjects(sourceFiles.toArray(new File[sourceFiles.size()]));
- String[] options = new String[]{JC_CLASSPATH, fileManager.getClassPath(), JC_TARGET_PATH,
+ String[] options = new String[]{JC_CLASSPATH, /*fileManager.getClassPath()*/
+ ClassLoaderUtils.buildClasspath(ClassLoaderUtils.getDefaultClassLoader())
+ , JC_TARGET_PATH,
destination.getAbsolutePath(), JC_SOURCEPATH,
sourceRoot.getAbsolutePath(), JC_DEBUG};
+
javaCompiler.getTask(null, fileManager, diagnosticCollector, Arrays.asList(options), null, fileObjects).call();
@@ -149,10 +152,10 @@
if (diagnostic.getKind().equals(Diagnostic.Kind.ERROR))
{
hasError = true;
- result.getErrors().add(new CompilationResult.CompilationMessage(diagnostic.getLineNumber(), diagnostic.getMessage(Locale.getDefault())));
+ result.getErrors().add(new CompilationMessage(diagnostic.getLineNumber(), diagnostic.getMessage(Locale.getDefault())));
} else
{
- result.getWarnings().add(new CompilationResult.CompilationMessage(diagnostic.getLineNumber(), diagnostic.getMessage(Locale.getDefault())));
+ result.getWarnings().add(new CompilationMessage(diagnostic.getLineNumber(), diagnostic.getMessage(Locale.getDefault())));
}
errors.append(error);
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/StandardDependencyScanner.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/StandardDependencyScanner.java
index f30560a..0e035e5 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/StandardDependencyScanner.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/StandardDependencyScanner.java
@@ -18,12 +18,12 @@
*/
package org.apache.myfaces.extensions.scripting.core.engine.dependencyScan;
-import org.objectweb.asm.ClassReader;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.api.DependencyRegistry;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.api.DependencyScanner;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.core.ClassScanUtils;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.core.ClassScanVisitor;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.core.ExtendedClassReader;
+import org.objectweb.asm.ClassReader;
import java.io.IOException;
import java.util.logging.Level;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/ClassDependencies.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/ClassDependencies.java
index bcc9516..bc101ed 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/ClassDependencies.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/ClassDependencies.java
@@ -18,7 +18,13 @@
*/
package org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.core;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
/**
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/ClassScanVisitor.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/ClassScanVisitor.java
index 4cfc041..188f1c5 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/ClassScanVisitor.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/ClassScanVisitor.java
@@ -18,11 +18,15 @@
*/
package org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.core;
-import org.objectweb.asm.*;
-import org.objectweb.asm.signature.SignatureReader;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.api.DependencyRegistry;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.registry.ExternalFilterDependencyRegistry;
-import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.registry.ExternalFilterDependencyRegistry;
+import org.objectweb.asm.AnnotationVisitor;
+import org.objectweb.asm.Attribute;
+import org.objectweb.asm.ClassVisitor;
+import org.objectweb.asm.FieldVisitor;
+import org.objectweb.asm.MethodVisitor;
+import org.objectweb.asm.Type;
+import org.objectweb.asm.signature.SignatureReader;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/DependencySignatureVisitor.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/DependencySignatureVisitor.java
index c445ca8..d1873ce 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/DependencySignatureVisitor.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/DependencySignatureVisitor.java
@@ -19,9 +19,9 @@
package org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.core;
+import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.api.DependencyRegistry;
import org.objectweb.asm.Type;
import org.objectweb.asm.signature.SignatureVisitor;
-import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.api.DependencyRegistry;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/MethodScanVisitor.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/MethodScanVisitor.java
index d087dc1..7de46fb 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/MethodScanVisitor.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/core/MethodScanVisitor.java
@@ -18,9 +18,13 @@
*/
package org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.core;
-import org.objectweb.asm.*;
-import org.objectweb.asm.signature.SignatureReader;
import org.apache.myfaces.extensions.scripting.core.engine.dependencyScan.api.DependencyRegistry;
+import org.objectweb.asm.AnnotationVisitor;
+import org.objectweb.asm.Attribute;
+import org.objectweb.asm.Label;
+import org.objectweb.asm.MethodVisitor;
+import org.objectweb.asm.Type;
+import org.objectweb.asm.signature.SignatureReader;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/loaders/ScannerClassloader.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/loaders/ScannerClassloader.java
index 0246ecb..cbf466c 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/loaders/ScannerClassloader.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/engine/dependencyScan/loaders/ScannerClassloader.java
@@ -21,7 +21,11 @@
import org.apache.myfaces.extensions.scripting.core.common.util.ClassUtils;
-import java.io.*;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Level;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/reloading/SimpleReloadingStrategy.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/reloading/SimpleReloadingStrategy.java
index 0362768..32fa5cc 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/reloading/SimpleReloadingStrategy.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/reloading/SimpleReloadingStrategy.java
@@ -18,11 +18,9 @@
*/
package org.apache.myfaces.extensions.scripting.core.reloading;
-import org.apache.commons.beanutils.BeanUtils;
import org.apache.myfaces.extensions.scripting.core.api.ReloadingStrategy;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
-import java.lang.reflect.InvocationTargetException;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/servlet/ScriptingServletFilter.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/servlet/ScriptingServletFilter.java
index 6cc2ec7..924960e 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/servlet/ScriptingServletFilter.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/servlet/ScriptingServletFilter.java
@@ -20,7 +20,14 @@
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
-import javax.servlet.*;
+import javax.servlet.DispatcherType;
+import javax.servlet.Filter;
+import javax.servlet.FilterChain;
+import javax.servlet.FilterConfig;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/adapters/CustomChainLoader.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/adapters/CustomChainLoader.java
index 63f51de..9e3cb82 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/adapters/CustomChainLoader.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/adapters/CustomChainLoader.java
@@ -19,11 +19,11 @@
package org.apache.myfaces.extensions.scripting.jsf.adapters;
-import org.apache.myfaces.extensions.scripting.core.engine.ThrowAwayClassloader;
-import org.apache.myfaces.shared.util.ClassLoaderExtension;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
import org.apache.myfaces.extensions.scripting.core.common.util.ClassUtils;
+import org.apache.myfaces.extensions.scripting.core.engine.ThrowAwayClassloader;
import org.apache.myfaces.extensions.scripting.core.monitor.ClassResource;
+import org.apache.myfaces.shared.util.ClassLoaderExtension;
import javax.servlet.ServletContext;
import java.io.File;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/adapters/handlers/MyFacesBeanHandler.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/adapters/handlers/MyFacesBeanHandler.java
index 0116362..8311ae4 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/adapters/handlers/MyFacesBeanHandler.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/adapters/handlers/MyFacesBeanHandler.java
@@ -35,7 +35,11 @@
import javax.faces.context.FacesContext;
import java.lang.reflect.InvocationTargetException;
-import java.util.*;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/annotation/GenericAnnotationScanner.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/annotation/GenericAnnotationScanner.java
index 4d90ae2..74594b8 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/annotation/GenericAnnotationScanner.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/annotation/GenericAnnotationScanner.java
@@ -27,7 +27,12 @@
import org.apache.myfaces.extensions.scripting.core.engine.api.ClassScanner;
import javax.faces.context.FacesContext;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/annotation/MyFacesBeanImplementationListener.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/annotation/MyFacesBeanImplementationListener.java
index 9aecf12..a7f259a 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/annotation/MyFacesBeanImplementationListener.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/annotation/MyFacesBeanImplementationListener.java
@@ -25,9 +25,20 @@
import org.apache.myfaces.extensions.scripting.core.common.util.ReflectUtil;
import org.apache.myfaces.extensions.scripting.core.common.util.StringUtils;
-import javax.faces.bean.*;
+import javax.faces.bean.ApplicationScoped;
+import javax.faces.bean.CustomScoped;
+import javax.faces.bean.ManagedProperty;
+import javax.faces.bean.NoneScoped;
+import javax.faces.bean.RequestScoped;
+import javax.faces.bean.SessionScoped;
+import javax.faces.bean.ViewScoped;
import java.lang.reflect.Field;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
import java.util.logging.Level;
/**
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/components/CompilerComponentRenderer.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/components/CompilerComponentRenderer.java
index 523b947..9506f1c 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/components/CompilerComponentRenderer.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/components/CompilerComponentRenderer.java
@@ -21,6 +21,7 @@
import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
import org.apache.myfaces.extensions.scripting.core.common.util.StringUtils;
+import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationMessage;
import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
import javax.faces.component.UIComponent;
@@ -91,7 +92,7 @@
private void writeWarnings(UIComponent component, ResponseWriter responseWriter, CompilationResult result) throws IOException {
startDiv(component, responseWriter, RendererConst.WARNINGS);
- for (CompilationResult.CompilationMessage msg : result.getWarnings()) {
+ for (CompilationMessage msg : result.getWarnings()) {
startDiv(component, responseWriter, RendererConst.LINE);
writeDiv(component, responseWriter, RendererConst.LINE_NO, String.valueOf(msg.getLineNumber()));
writeDiv(component, responseWriter, RendererConst.MESSAGE, msg.getMessage());
@@ -110,7 +111,7 @@
private void writeErrors(UIComponent component, ResponseWriter responseWriter, CompilationResult result) throws IOException {
startDiv(component, responseWriter, RendererConst.ERRORS);
- for (CompilationResult.CompilationMessage msg : result.getErrors()) {
+ for (CompilationMessage msg : result.getErrors()) {
startDiv(component, responseWriter, RendererConst.LINE);
writeDiv(component, responseWriter, RendererConst.LINE_NO, String.valueOf(msg.getLineNumber()));
writeDiv(component, responseWriter, RendererConst.MESSAGE, msg.getMessage());
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicDecorators/implementations/ApplicationProxy.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicDecorators/implementations/ApplicationProxy.java
index e44c7c6..1f7e6f8 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicDecorators/implementations/ApplicationProxy.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicDecorators/implementations/ApplicationProxy.java
@@ -21,22 +21,47 @@
import org.apache.myfaces.extensions.scripting.core.api.Decorated;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
-import javax.el.*;
+import javax.el.ELContextListener;
+import javax.el.ELException;
+import javax.el.ELResolver;
+import javax.el.ExpressionFactory;
+import javax.el.ValueExpression;
import javax.faces.FacesException;
-import javax.faces.application.*;
+import javax.faces.application.Application;
+import javax.faces.application.NavigationHandler;
+import javax.faces.application.ProjectStage;
+import javax.faces.application.Resource;
+import javax.faces.application.ResourceHandler;
+import javax.faces.application.StateManager;
+import javax.faces.application.ViewHandler;
import javax.faces.component.UIComponent;
import javax.faces.component.behavior.Behavior;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
-import javax.faces.el.*;
+import javax.faces.el.MethodBinding;
+import javax.faces.el.PropertyResolver;
+import javax.faces.el.ReferenceSyntaxException;
+import javax.faces.el.ValueBinding;
+import javax.faces.el.VariableResolver;
import javax.faces.event.ActionListener;
import javax.faces.event.SystemEvent;
import javax.faces.event.SystemEventListener;
import javax.faces.validator.Validator;
-import java.util.*;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.Locale;
+import java.util.Map;
+import java.util.ResourceBundle;
import java.util.concurrent.ConcurrentHashMap;
-import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.*;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ARTIFACT_TYPE_ACTIONLISTENER;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ARTIFACT_TYPE_APPLICATION;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ARTIFACT_TYPE_BEHAVIOR;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ARTIFACT_TYPE_COMPONENT;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ARTIFACT_TYPE_CONVERTER;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ARTIFACT_TYPE_ELCONTEXTLISTENER;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ARTIFACT_TYPE_MANAGEDBEAN;
+import static org.apache.myfaces.extensions.scripting.core.api.ScriptingConst.ARTIFACT_TYPE_VALIDATOR;
/**
* @author Werner Punz
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicDecorators/implementations/FacesContextProxy.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicDecorators/implementations/FacesContextProxy.java
index 3341347..ea3c882 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicDecorators/implementations/FacesContextProxy.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicDecorators/implementations/FacesContextProxy.java
@@ -18,7 +18,6 @@
*/
package org.apache.myfaces.extensions.scripting.jsf.dynamicDecorators.implementations;
-
import org.apache.myfaces.extensions.scripting.core.api.Decorated;
import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
@@ -28,7 +27,12 @@
import javax.faces.application.FacesMessage;
import javax.faces.application.ProjectStage;
import javax.faces.component.UIViewRoot;
-import javax.faces.context.*;
+import javax.faces.context.ExceptionHandler;
+import javax.faces.context.ExternalContext;
+import javax.faces.context.FacesContext;
+import javax.faces.context.PartialViewContext;
+import javax.faces.context.ResponseStream;
+import javax.faces.context.ResponseWriter;
import javax.faces.event.PhaseId;
import javax.faces.render.RenderKit;
import java.util.Iterator;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/MyFacesReroutingResourceResolver.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/MyFacesReroutingResourceResolver.java
index cc9428d..9277681 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/MyFacesReroutingResourceResolver.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/MyFacesReroutingResourceResolver.java
@@ -18,9 +18,8 @@
*/
package org.apache.myfaces.extensions.scripting.jsf.facelet;
-
-import org.apache.myfaces.view.facelets.impl.DefaultResourceResolver;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
+import org.apache.myfaces.view.facelets.impl.DefaultResourceResolver;
import java.io.File;
import java.net.MalformedURLException;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingBehaviorTagHandlerDelegate.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingBehaviorTagHandlerDelegate.java
index 19c5c05..9d724b3 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingBehaviorTagHandlerDelegate.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingBehaviorTagHandlerDelegate.java
@@ -19,10 +19,9 @@
package org.apache.myfaces.extensions.scripting.jsf.facelet;
-
-import org.apache.myfaces.view.facelets.tag.jsf.BehaviorTagHandlerDelegate;
import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
+import org.apache.myfaces.view.facelets.tag.jsf.BehaviorTagHandlerDelegate;
import javax.faces.component.UIComponent;
import javax.faces.view.facelets.BehaviorHandler;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingComponentTagHandlerDelegate.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingComponentTagHandlerDelegate.java
index 8abe891..0968b92 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingComponentTagHandlerDelegate.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingComponentTagHandlerDelegate.java
@@ -19,14 +19,14 @@
package org.apache.myfaces.extensions.scripting.jsf.facelet;
-import org.apache.myfaces.view.facelets.tag.jsf.ActionSourceRule;
-import org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate;
-import org.apache.myfaces.view.facelets.tag.jsf.EditableValueHolderRule;
-import org.apache.myfaces.view.facelets.tag.jsf.ValueHolderRule;
import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
import org.apache.myfaces.extensions.scripting.jsf.facelet.support.ComponentRule;
import org.apache.myfaces.extensions.scripting.jsf.facelet.support.SwitchingMetarulesetImpl;
+import org.apache.myfaces.view.facelets.tag.jsf.ActionSourceRule;
+import org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate;
+import org.apache.myfaces.view.facelets.tag.jsf.EditableValueHolderRule;
+import org.apache.myfaces.view.facelets.tag.jsf.ValueHolderRule;
import javax.faces.component.ActionSource;
import javax.faces.component.EditableValueHolder;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingConverterTagHandlerDelegate.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingConverterTagHandlerDelegate.java
index ad988ba..570716c 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingConverterTagHandlerDelegate.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingConverterTagHandlerDelegate.java
@@ -19,10 +19,9 @@
package org.apache.myfaces.extensions.scripting.jsf.facelet;
-
-import org.apache.myfaces.view.facelets.tag.jsf.ConverterTagHandlerDelegate;
import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
+import org.apache.myfaces.view.facelets.tag.jsf.ConverterTagHandlerDelegate;
import javax.faces.component.UIComponent;
import javax.faces.view.facelets.ConverterHandler;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingValidatorTagHandlerDelegate.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingValidatorTagHandlerDelegate.java
index 142f7fd..ce94498 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingValidatorTagHandlerDelegate.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/ReloadingValidatorTagHandlerDelegate.java
@@ -19,10 +19,9 @@
package org.apache.myfaces.extensions.scripting.jsf.facelet;
-
-import org.apache.myfaces.view.facelets.tag.jsf.ValidatorTagHandlerDelegate;
import org.apache.myfaces.extensions.scripting.core.api.ScriptingConst;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
+import org.apache.myfaces.view.facelets.tag.jsf.ValidatorTagHandlerDelegate;
import javax.faces.component.UIComponent;
import javax.faces.view.facelets.FaceletContext;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/TagHandlerDelegateFactoryImpl.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/TagHandlerDelegateFactoryImpl.java
index 3f554eb..e2da662 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/TagHandlerDelegateFactoryImpl.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/TagHandlerDelegateFactoryImpl.java
@@ -19,13 +19,17 @@
package org.apache.myfaces.extensions.scripting.jsf.facelet;
-
+import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
import org.apache.myfaces.view.facelets.tag.jsf.BehaviorTagHandlerDelegate;
import org.apache.myfaces.view.facelets.tag.jsf.ConverterTagHandlerDelegate;
import org.apache.myfaces.view.facelets.tag.jsf.ValidatorTagHandlerDelegate;
-import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
-import javax.faces.view.facelets.*;
+import javax.faces.view.facelets.BehaviorHandler;
+import javax.faces.view.facelets.ComponentHandler;
+import javax.faces.view.facelets.ConverterHandler;
+import javax.faces.view.facelets.TagHandlerDelegate;
+import javax.faces.view.facelets.TagHandlerDelegateFactory;
+import javax.faces.view.facelets.ValidatorHandler;
/**
* Tag handler delegate factory which injects reloading
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/ComponentRule.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/ComponentRule.java
index b3771a3..61cbb72 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/ComponentRule.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/ComponentRule.java
@@ -19,7 +19,11 @@
package org.apache.myfaces.extensions.scripting.jsf.facelet.support;
import javax.faces.component.UIComponent;
-import javax.faces.view.facelets.*;
+import javax.faces.view.facelets.FaceletContext;
+import javax.faces.view.facelets.MetaRule;
+import javax.faces.view.facelets.Metadata;
+import javax.faces.view.facelets.MetadataTarget;
+import javax.faces.view.facelets.TagAttribute;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/SwitchingBeanPropertyTagRule.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/SwitchingBeanPropertyTagRule.java
index ee43955..5028206 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/SwitchingBeanPropertyTagRule.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/SwitchingBeanPropertyTagRule.java
@@ -18,8 +18,8 @@
*/
package org.apache.myfaces.extensions.scripting.jsf.facelet.support;
-import org.apache.myfaces.view.facelets.tag.BeanPropertyTagRule;
import org.apache.myfaces.extensions.scripting.core.api.WeavingContext;
+import org.apache.myfaces.view.facelets.tag.BeanPropertyTagRule;
import javax.faces.view.facelets.MetaRule;
import javax.faces.view.facelets.Metadata;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/SwitchingMetarulesetImpl.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/SwitchingMetarulesetImpl.java
index 54dd343..c61096f 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/SwitchingMetarulesetImpl.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/facelet/support/SwitchingMetarulesetImpl.java
@@ -23,9 +23,20 @@
import org.apache.myfaces.view.facelets.tag.MetadataTargetImpl;
import org.apache.myfaces.view.facelets.util.ParameterCheck;
-import javax.faces.view.facelets.*;
+import javax.faces.view.facelets.FaceletContext;
+import javax.faces.view.facelets.MetaRule;
+import javax.faces.view.facelets.MetaRuleset;
+import javax.faces.view.facelets.Metadata;
+import javax.faces.view.facelets.MetadataTarget;
+import javax.faces.view.facelets.Tag;
+import javax.faces.view.facelets.TagAttribute;
+import javax.faces.view.facelets.TagException;
import java.beans.IntrospectionException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.WeakHashMap;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/resources/ResourceHandlerImpl.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/resources/ResourceHandlerImpl.java
index 3b4cbcd..1e2ec02 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/resources/ResourceHandlerImpl.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/resources/ResourceHandlerImpl.java
@@ -18,8 +18,8 @@
*/
package org.apache.myfaces.extensions.scripting.jsf.resources;
-import org.apache.myfaces.renderkit.ErrorPageWriter;
import org.apache.myfaces.extensions.scripting.core.common.util.ClassLoaderUtils;
+import org.apache.myfaces.renderkit.ErrorPageWriter;
import javax.faces.application.Resource;
import javax.faces.application.ResourceHandler;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/resources/ResourceImpl.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/resources/ResourceImpl.java
index ca25f89..2dcad27 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/resources/ResourceImpl.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/resources/ResourceImpl.java
@@ -31,7 +31,11 @@
import java.io.InputStream;
import java.io.PushbackInputStream;
import java.net.URL;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
diff --git a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/startup/RefreshPhaseListener.java b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/startup/RefreshPhaseListener.java
index b727390..2e1f488 100644
--- a/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/startup/RefreshPhaseListener.java
+++ b/extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/jsf/startup/RefreshPhaseListener.java
@@ -26,7 +26,6 @@
import javax.faces.event.PhaseEvent;
import javax.faces.event.PhaseId;
import javax.faces.event.PhaseListener;
-import javax.servlet.ServletRequest;
import java.util.Map;
/**
diff --git a/extscript-core-root/extscript-core/src/main/scala/org/apache/myfaces/extensions/scripting/core/engine/compiler/CompilationResultReporter.scala b/extscript-core-root/extscript-core/src/main/scala/org/apache/myfaces/extensions/scripting/core/engine/compiler/CompilationResultReporter.scala
index 0a598df..48c9858 100644
--- a/extscript-core-root/extscript-core/src/main/scala/org/apache/myfaces/extensions/scripting/core/engine/compiler/CompilationResultReporter.scala
+++ b/extscript-core-root/extscript-core/src/main/scala/org/apache/myfaces/extensions/scripting/core/engine/compiler/CompilationResultReporter.scala
@@ -23,9 +23,8 @@
import scala.tools.nsc.util._
import tools.nsc.reporters.AbstractReporter
-import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult
-import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult.CompilationMessage
import java.io.{ BufferedReader, IOException, PrintWriter }
+import org.apache.myfaces.extensions.scripting.core.engine.api.{CompilationMessage, CompilationResult}
/**
*
diff --git a/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/CompilationResultTest.java b/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/CompilationResultTest.java
index 028bba6..6c85e41 100644
--- a/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/CompilationResultTest.java
+++ b/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/CompilationResultTest.java
@@ -19,6 +19,7 @@
package org.apache.myfaces.extensions.scripting.core.engine.compiler;
+import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationMessage;
import org.junit.Before;
import org.junit.Test;
import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
@@ -48,25 +49,25 @@
@Test
public void testHasErrors() throws Exception {
assertFalse(result.hasErrors());
- result.getErrors().add(new CompilationResult.CompilationMessage(1, BOOGA));
+ result.getErrors().add(new CompilationMessage(1, BOOGA));
assertTrue(result.hasErrors());
}
@Test
public void testRegisterError() throws Exception {
assertFalse(result.hasErrors());
- result.registerError(new CompilationResult.CompilationMessage(1, BOOGA));
+ result.registerError(new CompilationMessage(1, BOOGA));
assertTrue(result.hasErrors());
}
@Test
public void testGetErrors() throws Exception {
assertTrue(result.getErrors().isEmpty());
- result.registerError(new CompilationResult.CompilationMessage(1, BOOGA));
+ result.registerError(new CompilationMessage(1, BOOGA));
result.registerError(null);
assertFalse(result.getErrors().isEmpty());
assertTrue(result.getErrors().size() == 1);
- result.registerError(new CompilationResult.CompilationMessage(1, BOOGA));
+ result.registerError(new CompilationMessage(1, BOOGA));
result.registerError(null);
assertTrue(result.getErrors().size() == 2);
@@ -75,11 +76,11 @@
@Test
public void testRegisterWarning() throws Exception {
assertTrue(result.getWarnings().isEmpty());
- result.registerWarning(new CompilationResult.CompilationMessage(1, BOOGA));
+ result.registerWarning(new CompilationMessage(1, BOOGA));
result.registerWarning(null);
assertFalse(result.getWarnings().isEmpty());
assertTrue(result.getWarnings().size() == 1);
- result.registerWarning(new CompilationResult.CompilationMessage(1, BOOGA));
+ result.registerWarning(new CompilationMessage(1, BOOGA));
assertFalse(result.getWarnings().isEmpty());
assertTrue(result.getWarnings().size() == 2);
diff --git a/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/DynamicJavaSourceCodeObject.java b/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/DynamicJavaSourceCodeObject.java
new file mode 100644
index 0000000..cc63f23
--- /dev/null
+++ b/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/DynamicJavaSourceCodeObject.java
@@ -0,0 +1,78 @@
+/*
+ * 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.
+ */
+
+package org.apache.myfaces.extensions.scripting.core.engine.compiler;
+
+/**
+ * @author Werner Punz (latest modification by $Author$)
+ * @version $Revision$ $Date$
+ */
+
+import javax.tools.SimpleJavaFileObject;
+import java.io.IOException;
+import java.net.URI;
+
+/**
+ * Creates a dynamic source code file object
+ *
+ * This is an example of how we can prepare a dynamic java source code for compilation.
+ * This class reads the java code from a string and prepares a JavaFileObject
+ *
+ */
+class DynamicJavaSourceCodeObject extends SimpleJavaFileObject
+{
+ private String qualifiedName ;
+ private String sourceCode ;
+
+ /**
+ * Converts the name to an URI, as that is the format expected by JavaFileObject
+ *
+ *
+ * @param fully qualified name given to the class file
+ * @param code the source code string
+ */
+ protected DynamicJavaSourceCodeObject(String name, String code) {
+ super(URI.create("string:///" + name.replaceAll("\\.", "/") + Kind.SOURCE.extension), Kind.SOURCE);
+ this.qualifiedName = name ;
+ this.sourceCode = code ;
+ }
+
+ @Override
+ public CharSequence getCharContent(boolean ignoreEncodingErrors)
+ throws IOException
+ {
+ return sourceCode ;
+ }
+
+ public String getQualifiedName() {
+ return qualifiedName;
+ }
+
+ public void setQualifiedName(String qualifiedName) {
+ this.qualifiedName = qualifiedName;
+ }
+
+ public String getSourceCode() {
+ return sourceCode;
+ }
+
+ public void setSourceCode(String sourceCode) {
+ this.sourceCode = sourceCode;
+ }
+}
diff --git a/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/JavaCompilerTest.java b/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/JavaCompilerTest.java
index a463676..287532f 100644
--- a/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/JavaCompilerTest.java
+++ b/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/JavaCompilerTest.java
@@ -29,8 +29,17 @@
import org.apache.myfaces.extensions.scripting.core.engine.FactoryEngines;
import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
+import javax.tools.Diagnostic;
+import javax.tools.DiagnosticCollector;
+import javax.tools.JavaCompiler;
+import javax.tools.JavaFileObject;
+import javax.tools.SimpleJavaFileObject;
+import javax.tools.StandardJavaFileManager;
+import javax.tools.ToolProvider;
import java.io.File;
import java.io.IOException;
+import java.util.Arrays;
+import java.util.Locale;
import static org.junit.Assert.assertTrue;
@@ -38,7 +47,6 @@
* @author Werner Punz (latest modification by $Author$)
* @version $Revision$ $Date$
*/
-
public class JavaCompilerTest
{
private static final String PROBE1 = "../../src/test/resources/compiler/TestProbe1.java";
@@ -90,6 +98,56 @@
}
@Test
+ public void testInMemoryCompile() {
+ String sourceCode =
+ "class DynamicCompilationHelloWorld{" +
+ "public static void main (String args[]){" +
+ "System.out.println (\"Hello, dynamic compilation world!\");" +
+ "}" +
+ "}";
+ /*Creating dynamic java source code file object*/
+ SimpleJavaFileObject fileObject = new DynamicJavaSourceCodeObject("DynamicCompilationHelloWorld", sourceCode);
+ JavaFileObject javaFileObjects[] = new JavaFileObject[]{fileObject};
+
+ /* Prepare a list of compilation units (java source code file objects) to input to compilation task*/
+ Iterable<? extends JavaFileObject> compilationUnits = Arrays.asList(javaFileObjects);
+
+ /*Prepare any compilation options to be used during compilation*/
+ //In this example, we are asking the compiler to place the output files under bin folder.
+
+ String[] compileOptions = new String[]{"-d", FileUtils.getTempDir().getAbsolutePath()};
+ Iterable<String> compilationOptions = Arrays.asList(compileOptions);
+
+ /*Instantiating the java compiler*/
+ JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
+
+ /**
+ * Retrieving the standard file manager from compiler object, which is used to provide
+ * basic building block for customizing how a compiler reads and writes to files.
+ *
+ * The same file manager can be reopened for another compiler task.
+ * Thus we reduce the overhead of scanning through file system and jar files each time
+ */
+ StandardJavaFileManager stdFileManager = compiler.getStandardFileManager(null, Locale.getDefault(), null);
+ /*Create a diagnostic controller, which holds the compilation problems*/
+ DiagnosticCollector<JavaFileObject> diagnostics = new DiagnosticCollector<JavaFileObject>();
+ /*Create a compilation task from compiler by passing in the required input objects prepared above*/
+ JavaCompiler.CompilationTask compilerTask = compiler.getTask(null, stdFileManager, diagnostics, compilationOptions, null, compilationUnits);
+
+ //Perform the compilation by calling the call method on compilerTask object.
+ boolean status = compilerTask.call();
+
+ if (!status)
+ {//If compilation error occurs
+ /*Iterate through each compilation problem and print it*/
+ for (Diagnostic diagnostic : diagnostics.getDiagnostics())
+ {
+ System.out.format("Error on line %d in %s", diagnostic.getLineNumber(), diagnostic);
+ }
+ }
+ }
+
+ @Test
public void testFullCompileWhitelist()
{
JSR199Compiler compiler = new JSR199Compiler();
diff --git a/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/ScalaCompilerTest.java b/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/ScalaCompilerTest.java
index a29e65c..a2f73fe 100644
--- a/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/ScalaCompilerTest.java
+++ b/extscript-core-root/extscript-core/src/test/java/org/apache/myfaces/extensions/scripting/core/engine/compiler/ScalaCompilerTest.java
@@ -27,6 +27,7 @@
import org.apache.myfaces.extensions.scripting.core.engine.FactoryEngines;
import org.apache.myfaces.extensions.scripting.core.engine.api.CompilationResult;
import org.apache.myfaces.extensions.scripting.core.engine.compiler.ScalaCompiler;
+import org.junit.Ignore;
import org.junit.Test;
import java.io.File;
@@ -38,9 +39,9 @@
* @author Werner Punz (latest modification by $Author$)
* @version $Revision$ $Date$
*/
-
public class ScalaCompilerTest
-{ private static final String PROBE1 = "../../src/test/resources/compiler/TestProbe1Scala.scala";
+{
+ private static final String PROBE1 = "../../src/test/resources/compiler/TestProbe1Scala.scala";
private static final String PROBE2 = "../../src/test/resources/compiler/TestProbe2Scala.scala";
private static final String RESOURCES = "../../src/test/resources/";
diff --git a/extscript-core-root/extscript-core/src/test/resources/webapp/WEB-INF/web.xml b/extscript-core-root/extscript-core/src/test/resources/webapp/WEB-INF/web.xml
index 3a81477..da941cb 100644
--- a/extscript-core-root/extscript-core/src/test/resources/webapp/WEB-INF/web.xml
+++ b/extscript-core-root/extscript-core/src/test/resources/webapp/WEB-INF/web.xml
@@ -66,7 +66,7 @@
source dir
</description>
<param-name>facelets.RESOURCE_RESOLVER</param-name>
- <param-value>org.apache.myfaces.extensions.scripting.facelet.ReroutingResourceResolver</param-value>
+ <param-value>org.apache.myfaces.extensions.scripting.jsf.facelet.MyFacesReroutingResourceResolver</param-value>
</context-param>
<!--
diff --git a/extscript-examples/cdi-example/src/main/webapp/WEB-INF/web.xml b/extscript-examples/cdi-example/src/main/webapp/WEB-INF/web.xml
index 0beb8c3..7c07387 100644
--- a/extscript-examples/cdi-example/src/main/webapp/WEB-INF/web.xml
+++ b/extscript-examples/cdi-example/src/main/webapp/WEB-INF/web.xml
@@ -75,7 +75,7 @@
source dir
</description>
<param-name>facelets.RESOURCE_RESOLVER</param-name>
- <param-value>org.apache.myfaces.extensions.scripting.facelet.ReroutingResourceResolver</param-value>
+ <param-value>org.apache.myfaces.extensions.scripting.jsf.facelet.MyFacesReroutingResourceResolver</param-value>
</context-param>
-->
<!--
diff --git a/extscript-examples/myfaces20-example/src/main/conf/dev/web.xml b/extscript-examples/myfaces20-example/src/main/conf/dev/web.xml
index 62a6094..d3ced7c 100644
--- a/extscript-examples/myfaces20-example/src/main/conf/dev/web.xml
+++ b/extscript-examples/myfaces20-example/src/main/conf/dev/web.xml
@@ -67,7 +67,7 @@
source dir
</description>
<param-name>facelets.RESOURCE_RESOLVER</param-name>
- <param-value>org.apache.myfaces.extensions.scripting.facelet.ReroutingResourceResolver</param-value>
+ <param-value>org.apache.myfaces.extensions.scripting.jsf.facelet.MyFacesReroutingResourceResolver</param-value>
</context-param>
<!--
diff --git a/extscript-examples/myfaces20-extscript-helloworld/src/main/webapp/WEB-INF/web.xml b/extscript-examples/myfaces20-extscript-helloworld/src/main/webapp/WEB-INF/web.xml
index 40e5079..9e8e1ca 100644
--- a/extscript-examples/myfaces20-extscript-helloworld/src/main/webapp/WEB-INF/web.xml
+++ b/extscript-examples/myfaces20-extscript-helloworld/src/main/webapp/WEB-INF/web.xml
@@ -75,7 +75,7 @@
source dir
</description>
<param-name>facelets.RESOURCE_RESOLVER</param-name>
- <param-value>org.apache.myfaces.extensions.scripting.facelet.ReroutingResourceResolver</param-value>
+ <param-value>org.apache.myfaces.extensions.scripting.jsf.facelet.MyFacesReroutingResourceResolver</param-value>
</context-param>
-->
<!--
diff --git a/pom.xml b/pom.xml
index 86b0c13..aae5780 100644
--- a/pom.xml
+++ b/pom.xml
@@ -104,7 +104,7 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>4.7</version>
+ <version>4.10</version>
<scope>test</scope>
</dependency>
@@ -189,7 +189,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
- <version>2.3</version>
+ <version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
diff --git a/src/site/xdoc/configentries.xml b/src/site/xdoc/configentries.xml
index 8c1dd1e..f6826b7 100644
--- a/src/site/xdoc/configentries.xml
+++ b/src/site/xdoc/configentries.xml
@@ -91,7 +91,7 @@
<tr>
<td>facelets.RESOURCE_RESOLVER</td>
<td>NO</td>
- <td>org.apache.myfaces.extensions.scripting.facelet.ReroutingResourceResolver</td>
+ <td>org.apache.myfaces.extensions.scripting.jsf.facelet.MyFacesReroutingResourceResolver</td>
<td>Enables the loading of xhtml facelet pages from your source directory, if
org.apache.myfaces.extensions.scripting.resource.LOADER_PATHS is set properly
</td>
diff --git a/src/site/xdoc/exampleconfig.xml b/src/site/xdoc/exampleconfig.xml
index 5dad39e..23f597c 100644
--- a/src/site/xdoc/exampleconfig.xml
+++ b/src/site/xdoc/exampleconfig.xml
@@ -152,7 +152,7 @@
source dir
</description>
<param-name>facelets.RESOURCE_RESOLVER</param-name>
- <param-value>org.apache.myfaces.extensions.scripting.facelet.ReroutingResourceResolver</param-value>
+ <param-value>org.apache.myfaces.extensions.scripting.jsf.facelet.MyFacesReroutingResourceResolver</param-value>
</context-param>
<!-- ======================================================================================
diff --git a/src/site/xdoc/installation.xml b/src/site/xdoc/installation.xml
index 54d45c7..88469cb 100644
--- a/src/site/xdoc/installation.xml
+++ b/src/site/xdoc/installation.xml
@@ -328,7 +328,7 @@
This parameter points to the root of your dynamic resources, usually the same dir
as the root of your web application.
</li>
- <li><b>facelets.RESOURCE_RESOLVER</b> also needs to be set to <b>org.apache.myfaces.extensions.scripting.facelet.ReroutingResourceResolver</b> if
+ <li><b>facelets.RESOURCE_RESOLVER</b> also needs to be set to <b>org.apache.myfaces.extensions.scripting.jsf.facelet.MyFacesReroutingResourceResolver</b> if
you want dynamic Facelet reloading enabled</li>
</ul>
@@ -352,7 +352,7 @@
and resources from our source dir
</description>
<param-name>facelets.RESOURCE_RESOLVER</param-name>
- <param-value>org.apache.myfaces.extensions.scripting.facelet.ReroutingResourceResolver</param-value>
+ <param-value>org.apache.myfaces.extensions.scripting.jsf.facelet.MyFacesReroutingResourceResolver</param-value>
</context-param>
]]></source>
</p>
diff --git a/src/site/xdoc/using_advanced.xml b/src/site/xdoc/using_advanced.xml
index 5fe8151..0c3e514 100644
--- a/src/site/xdoc/using_advanced.xml
+++ b/src/site/xdoc/using_advanced.xml
@@ -271,7 +271,7 @@
The second parameter <b>facelets.RESOURCE_RESOLVER</b> is responsible for enabling the resouce loading
of Facelet templates and pages, since Facelets does not have an auto plugging mechanism this has
to be
- set to a standard value which is <b>org.apache.myfaces.extensions.scripting.facelet.ReroutingResourceResolver</b>
+ set to a standard value which is <b>org.apache.myfaces.extensions.scripting.jsf.facelet.MyFacesReroutingResourceResolver</b>
</p>
<p>
For further reference please also visit out <a href="./configentries.html">Appendix: Configuration Entries Overview</a>