https://issues.apache.org/jira/browse/EXTSCRIPT-154 removing old code which is not needed anymore
git-svn-id: https://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk@1300575 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/extscript-core-root/extscript-core-java6/pom.xml b/extscript-core-root/extscript-core-java6/pom.xml
deleted file mode 100644
index 9d72898..0000000
--- a/extscript-core-root/extscript-core-java6/pom.xml
+++ /dev/null
@@ -1,103 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <artifactId>extscript-core-java6</artifactId>
- <packaging>jar</packaging>
- <name>Core java6 part</name>
- <version>1.0.3-SNAPSHOT</version>
-
- <description>
- myfaces extension scripting java6 lib
- </description>
-
- <parent>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <artifactId>extscript-core-root</artifactId>
- <version>1.0.3-SNAPSHOT</version>
- </parent>
-
- <scm>
- <connection>scm:svn:http://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core-java6</connection>
- <developerConnection>scm:svn:https://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core-java6</developerConnection>
- <url>http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-core-java6</url>
- </scm>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <artifactId>extscript-core</artifactId>
- <version>1.0.3-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>commons-beanutils</groupId>
- <artifactId>commons-beanutils</artifactId>
- <version>1.8.0</version>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-api</artifactId>
- <version>${myfaces12.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-impl</artifactId>
- <version>${myfaces12.version}</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <profiles>
- <profile>
- <!--
- - Build and install into the repository some additional artifacts that we don't
- - want to build during normal development because they take too long.
- -->
- <id>generate-assembly</id>
- <activation>
- <property>
- <name>performRelease</name>
- <value>true</value>
- </property>
- </activation>
- <build>
- <plugins>
- <plugin>
- <!-- Install in the repository a "-javadoc.jar" file -->
- <artifactId>maven-javadoc-plugin</artifactId>
- <version>2.4</version>
- <executions>
- <execution>
- <id>attach-javadoc</id>
- <goals><goal>jar</goal></goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <!-- Install in the repository a "-sources.jar" file -->
- <artifactId>maven-source-plugin</artifactId>
- <executions>
- <execution>
- <id>attach-source</id>
- <goals><goal>jar</goal></goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
-</project>
diff --git a/extscript-core-root/extscript-core-java6/src/main/java/org/apache/myfaces/extensions/scripting/loaders/java/jsr199/ContainerFileManager.java b/extscript-core-root/extscript-core-java6/src/main/java/org/apache/myfaces/extensions/scripting/loaders/java/jsr199/ContainerFileManager.java
deleted file mode 100644
index e9b731c..0000000
--- a/extscript-core-root/extscript-core-java6/src/main/java/org/apache/myfaces/extensions/scripting/loaders/java/jsr199/ContainerFileManager.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * 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.loaders.java.jsr199;
-
-import org.apache.myfaces.extensions.scripting.core.util.ClassLoaderUtils;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-import org.apache.myfaces.extensions.scripting.loaders.java.RecompiledClassLoader;
-
-import javax.tools.FileObject;
-import javax.tools.ForwardingJavaFileManager;
-import javax.tools.JavaFileObject;
-import javax.tools.StandardJavaFileManager;
-import java.io.File;
-import java.io.IOException;
-
-/**
- * File manager, enforced by the Java Compiler API
- * which handles the source files
- *
- * @author Werner Punz (latest modification by $Author$)
- * @version $Revision$ $Date$
- */
-
-public class ContainerFileManager extends ForwardingJavaFileManager<StandardJavaFileManager> {
-
- StandardJavaFileManager _delegate = null;
- String _classPath = null;
- RecompiledClassLoader classLoader = 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 classLoader;
- }
-
- public Iterable<? extends JavaFileObject> getJavaFileObjects(File... files) {
- return _delegate.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.getConfiguration().getCompileTarget();
- }
-
-}
diff --git a/extscript-core-root/extscript-core-java6/src/main/java/org/apache/myfaces/extensions/scripting/loaders/java/jsr199/JSR199Compiler.java b/extscript-core-root/extscript-core-java6/src/main/java/org/apache/myfaces/extensions/scripting/loaders/java/jsr199/JSR199Compiler.java
deleted file mode 100644
index a67e3e9..0000000
--- a/extscript-core-root/extscript-core-java6/src/main/java/org/apache/myfaces/extensions/scripting/loaders/java/jsr199/JSR199Compiler.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*
- * 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.loaders.java.jsr199;
-
-import org.apache.myfaces.extensions.scripting.api.CompilationException;
-import org.apache.myfaces.extensions.scripting.api.CompilationResult;
-import org.apache.myfaces.extensions.scripting.api.CompilerConst;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.util.FileUtils;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.tools.*;
-import java.io.File;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Locale;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-/**
- * <p>
- * A compiler facade encapsulating the JSR 199
- * so that we can switch the implementations
- * of connecting to javac on the fly
- * </p>
- * <p>
- * This class is applied to systems which can use the JSR199 compiler
- * API. For older systems we have a javac compiler fallback and
- * probably in the long run also an eclipse as well.
- * </p>
- * <p>
- * We applied first the apache commons-jci project there, but the state
- * of the project was not where we needed it to be for our implementation
- * and fixing and changing it was more work than what was needed for this project.
- * In the dawn of the usage of JSR 199 it simply did not make any more sense
- * to use commons-jci so we rolled our own small specialized facade for this
- * </p>
- *
- * @author Werner Punz (latest modification by $Author: werpu $)
- * @version $Revision: 812255 $ $Date: 2009-09-07 20:51:39 +0200 (Mo, 07 Sep 2009) $
- */
-@SuppressWarnings("unused")
-public class JSR199Compiler implements org.apache.myfaces.extensions.scripting.api.Compiler {
-
- JavaCompiler javaCompiler = ToolProvider.getSystemJavaCompiler();
- ContainerFileManager fileManager = null;
-
- public JSR199Compiler() {
- super();
- }
-
- /**
- * Compile a single file
- *
- * @param sourceRoot the source search path (root of our source)
- * @return the compilation result of the compilation
- * @throws CompilationException in case of a compilation error
- * @deprecated note we will move over to a single
- * compile step in the beginning in the long run
- * we will deprecate it as soon as the full
- * compile at the beginning of the request
- * is implemented
- * <p/>
- * TODO move this code over to the weaver instead of the compiler
- * we do not do a single compile step anymore
- */
- public CompilationResult compile(File sourceRoot, File targetPath, File toCompile, ClassLoader classPathHolder) throws CompilationException {
- fileManager = new ContainerFileManager(javaCompiler.getStandardFileManager(new DiagnosticCollector<JavaFileObject>(), null, null));
-
- DiagnosticCollector<JavaFileObject> diagnosticCollector = new DiagnosticCollector<JavaFileObject>();
-
- //TODO add whitelist check here
-
- getLog().info("[EXT-SCRIPTING] Doing a full recompile");
-
- Iterable<? extends JavaFileObject> fileObjects = fileManager.getJavaFileObjects(toCompile);
- String[] options = new String[]{CompilerConst.JC_CLASSPATH, fileManager.getClassPath(), CompilerConst.JC_TARGET_PATH, WeavingContext.getConfiguration().getCompileTarget().getAbsolutePath(), CompilerConst.JC_SOURCEPATH, sourceRoot.getAbsolutePath(), CompilerConst.JC_DEBUG};
- javaCompiler.getTask(null, fileManager, diagnosticCollector, Arrays.asList(options), null, fileObjects).call();
- try {
- handleDiagnostics(diagnosticCollector);
- } catch (ClassNotFoundException e) {
- throw new CompilationException(e);
- }
- return WeavingContext.getCompilationResult(ScriptingConst.ENGINE_TYPE_JSF_JAVA);
-
- }
-
- /**
- * compile all files starting from a given root
- * <p/>
- * note, the java compiler interface does not allow per se
- * wildcards due to its file object indirection
- * we deal with that problem by determine all files manually and then
- * push the list into the jsr compiler interface
- *
- * @param sourceRoot the root for all java sources to be compiled
- * @param loader the classpath holder for the compilation
- * @throws CompilationException in case of a compilation error
- */
- public CompilationResult compile(File sourceRoot, File destination, ClassLoader loader) throws CompilationException {
- fileManager = new ContainerFileManager(javaCompiler.getStandardFileManager(new DiagnosticCollector<JavaFileObject>(), null, null));
-
- DiagnosticCollector<JavaFileObject> diagnosticCollector = new DiagnosticCollector<JavaFileObject>();
-
- getLog().info("[EXT-SCRIPTING] Doing a full recompile");
-
- List<File> sourceFiles = FileUtils.fetchSourceFiles(WeavingContext.getConfiguration().getWhitelistedSourceDirs(ScriptingConst.ENGINE_TYPE_JSF_JAVA), CompilerConst.JAVA_WILDCARD);
- for (File sourceFile : sourceFiles) {
- 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[]{CompilerConst.JC_CLASSPATH, fileManager.getClassPath(), CompilerConst.JC_TARGET_PATH, WeavingContext.getConfiguration().getCompileTarget().getAbsolutePath(), CompilerConst.JC_SOURCEPATH, sourceRoot.getAbsolutePath(), CompilerConst.JC_DEBUG};
- javaCompiler.getTask(null, fileManager, diagnosticCollector, Arrays.asList(options), null, fileObjects).call();
- try {
- handleDiagnostics(diagnosticCollector);
- } catch (ClassNotFoundException e) {
- throw new CompilationException(e);
- }
- return WeavingContext.getCompilationResult(ScriptingConst.ENGINE_TYPE_JSF_JAVA);
- }
-
- /**
- * internal diagnostics handler
- * which just logs the errors
- *
- * @param diagnosticCollector the compilation results, the jsr 199 uses a DiagnosticsCollector object
- * to keep the errors and warnings of the compiler
- * @throws ClassNotFoundException in case of an error (this is enforced by the compiler interface
- * and probably will be overhauled in the long run)
- */
- private void handleDiagnostics(DiagnosticCollector<JavaFileObject> diagnosticCollector) throws ClassNotFoundException {
- if (diagnosticCollector.getDiagnostics().size() > 0) {
- Logger log = Logger.getLogger(this.getClass().getName());
- StringBuilder errors = new StringBuilder();
- CompilationResult result = new CompilationResult("");
- boolean hasError = false;
- for (Diagnostic diagnostic : diagnosticCollector.getDiagnostics()) {
- String error = createErrorMessage(diagnostic);
- log.log(Level.WARNING, "[EXT-SCRIPTING] Compiler: {0}", error);
-
- if (diagnostic.getKind().equals(Diagnostic.Kind.ERROR)) {
- hasError = true;
- result.getErrors().add(new CompilationResult.CompilationMessage(diagnostic.getLineNumber(), diagnostic.getMessage(Locale.getDefault())));
- } else {
- result.getWarnings().add(new CompilationResult.CompilationMessage(diagnostic.getLineNumber(), diagnostic.getMessage(Locale.getDefault())));
- }
- errors.append(error);
- }
- WeavingContext.setCompilationResult(ScriptingConst.ENGINE_TYPE_JSF_JAVA, result);
- assertErrorFound(errors, hasError);
- } else {
- WeavingContext.setCompilationResult(ScriptingConst.ENGINE_TYPE_JSF_JAVA, new CompilationResult(""));
- }
- }
-
- /**
- * interruption of the compile flow should only
- * happen if an error has occurred otherwise we will proceed
- * as expected
- *
- * @param errors the errors messages found
- * @param hasError marker if an error was found or not
- * @throws ClassNotFoundException in case of a compile error
- */
- private void assertErrorFound(StringBuilder errors, boolean hasError) throws ClassNotFoundException {
- if (hasError) {
- throw new ClassNotFoundException("Compile error of java file:" + errors.toString());
- }
- }
-
- /**
- * creates a standardized error message
- *
- * @param diagnostic the diagnostic of the compiler containing the error data
- * @return a formatted string with the standardized error message which then later
- * can be processed by the user
- */
- private String createErrorMessage(Diagnostic diagnostic) {
- StringBuilder retVal = new StringBuilder(256);
- if (diagnostic == null) {
- return retVal.toString();
- }
- if (diagnostic.getKind().equals(Diagnostic.Kind.ERROR)) {
- retVal.append(CompilerConst.STD_ERROR_HEAD);
- } else if (diagnostic.getKind().equals(Diagnostic.Kind.NOTE)) {
- retVal.append(CompilerConst.STD_NOTE_HEAD);
- } else if (diagnostic.getKind().equals(Diagnostic.Kind.WARNING)) {
- retVal.append(CompilerConst.STD_WARN_HEAD);
- } else if (diagnostic.getKind().equals(Diagnostic.Kind.MANDATORY_WARNING)) {
- retVal.append(CompilerConst.STD_MANDATORY_WARN_HEAD);
- } else if (diagnostic.getKind().equals(Diagnostic.Kind.OTHER)) {
- retVal.append(CompilerConst.STD_OTHER_HEAD);
- }
- String message = diagnostic.getMessage(Locale.getDefault());
- message = (message == null) ? "" : message;
- retVal.append(message);
- retVal.append(diagnostic.getLineNumber());
-
- retVal.append("\n\n");
-
- String source = "No additional source info";
-
- if (diagnostic.getSource() != null) {
- source = diagnostic.getSource().toString();
- }
- retVal.append(source);
-
- return retVal.toString();
- }
-
- private Logger getLog() {
- return Logger.getLogger(this.getClass().getName());
- }
-
-}
diff --git a/extscript-core-root/extscript-core-java6/src/test/java/org/apache/myfaces/extensions/scripting/javaloader/core/compilerTest/TestCompilerAPI.java b/extscript-core-root/extscript-core-java6/src/test/java/org/apache/myfaces/extensions/scripting/javaloader/core/compilerTest/TestCompilerAPI.java
deleted file mode 100644
index 74a20d2..0000000
--- a/extscript-core-root/extscript-core-java6/src/test/java/org/apache/myfaces/extensions/scripting/javaloader/core/compilerTest/TestCompilerAPI.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- * 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.javaloader.core.compilerTest;
-
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.io.FilenameUtils;
-import org.apache.myfaces.extensions.scripting.api.Configuration;
-import org.apache.myfaces.extensions.scripting.api.DynamicCompiler;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-import org.apache.myfaces.extensions.scripting.loaders.java.compiler.CompilerFacade;
-import org.junit.Test;
-
-import java.io.File;
-import java.io.IOException;
-
-/**
- * @author Werner Punz (latest modification by $Author$)
- * @version $Revision$ $Date$
- */
-
-public class TestCompilerAPI {
-
- private static final String JAVA_FILE_ENDING = ".java";
- private static final String JSR199_COMPILER = "org.apache.myfaces.extensions.scripting.loaders.java.jsr199.JSR199Compiler";
- private static final String JAVA5_COMPILER = "org.apache.myfaces.extensions.scripting.loaders.java.compiler.CompilerFacade";
-
- private static final String PROBE1 = "../../src/test/resources/compiler/TestProbe1.java";
- private static final String PROBE2 = "../../src/test/resources/compiler/TestProbe2.java";
- private static final String RESOURCES = "../../src/test/resources/";
-
- File probe1;
- File probe2;
- File root;
-
- public TestCompilerAPI() {
- ClassLoader loader = Thread.currentThread().getContextClassLoader();
- //we use a location relative to our current root one to reach the sources
- //because the test also has to be performed outside of maven
- //and the ide cannot cope with resource paths for now
- String currentPath = loader.getResource("./").getPath();
- String sourcePath1 = currentPath + PROBE1;
- String sourcePath2 = currentPath + PROBE2;
- String rootPath = currentPath + RESOURCES;
-
- sourcePath1 = FilenameUtils.normalize(sourcePath1);
- sourcePath2 = FilenameUtils.normalize(sourcePath2);
- rootPath = FilenameUtils.normalize(rootPath);
-
- probe1 = new File(sourcePath1);
- probe2 = new File(sourcePath2);
- root = new File(rootPath);
-
- WeavingContext.setConfiguration(new Configuration());
- WeavingContext.getConfiguration().addSourceDir(ScriptingConst.ENGINE_TYPE_JSF_JAVA, root.getAbsolutePath());
- }
-
- private String getScriptingFacadeClass(boolean allowJSR199) {
- String javaVer = System.getProperty("java.version");
- String[] versionArr = javaVer.split("\\.");
-
- int major = Integer.parseInt(versionArr[Math.min(versionArr.length, 1)]);
-
- if (major > 5 && allowJSR199) {
- //jsr199 compliant jdk
- return JSR199_COMPILER;
- }
- //otherwise
- return JAVA5_COMPILER;
- }
-
-
- @Test
- public void testWhiteListedCompile() {
- //WeavingContext.getConfiguration().getWhitelistedSourceDirs(ScriptingConst.ENGINE_TYPE_JSF_JAVA).clear();
- WeavingContext.getConfiguration().addWhitelistPackage("compiler.myPackage");
-
- try {
-
- DynamicCompiler compiler = (DynamicCompiler) new CompilerFacade(true);//new ReflectCompilerFacade();
- try {
- FileUtils.deleteDirectory(WeavingContext.getConfiguration().getCompileTarget());
- } catch (IOException e) {
- fail(e.getMessage());
- }
- WeavingContext.getConfiguration().getCompileTarget().mkdirs();
-
- File target = compiler.compileAllFiles(root.getAbsolutePath(), "");
-
- assertTrue("target exists files are compiled into the target", target != null);
- File classFile1 = new File(target.getAbsolutePath() + "/compiler/TestProbe1.class");
- File classFile2 = new File(target.getAbsolutePath() + "/compiler/TestProbe2.class");
- File classFile3 = new File(target.getAbsolutePath() + "/compiler/myPackage/WhiteListedProbe.class");
-
- assertTrue("Classfile_1 is not compiled into the target", !classFile1.exists());
- assertTrue("Classfile_2 is not compiled into the target", !classFile2.exists());
- assertTrue("Classfile_3 is compiled into the target", classFile3.exists());
-
- } catch (ClassNotFoundException e) {
- fail(e.toString());
- }
-
- }
-
-
- @Test
- public void testFullCompile() {
- try {
-
- DynamicCompiler compiler = (DynamicCompiler) new CompilerFacade(true);//new ReflectCompilerFacade();
-
- File target = compiler.compileAllFiles(root.getAbsolutePath(), "");
-
- assertTrue("target exists files are compiled into the target", target != null);
- File classFile1 = new File(target.getAbsolutePath() + "/compiler/TestProbe1.class");
- File classFile2 = new File(target.getAbsolutePath() + "/compiler/TestProbe2.class");
-
- assertTrue("Classfile1 is compiled into the target", classFile1.exists());
- assertTrue("Classfile2 is compiled into the target", classFile2.exists());
- } catch (ClassNotFoundException e) {
- fail(e.toString());
- }
- }
-
-}
diff --git a/extscript-core-root/extscript-core-java6/src/test/resources/compiler/TestProbe1.java b/extscript-core-root/extscript-core-java6/src/test/resources/compiler/TestProbe1.java
deleted file mode 100644
index d09e628..0000000
--- a/extscript-core-root/extscript-core-java6/src/test/resources/compiler/TestProbe1.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package compiler;
-
-/**
- * a simple testprobe to check if the compiler api works
- */
-public class TestProbe1 {
-
-}
\ No newline at end of file
diff --git a/extscript-core-root/extscript-core-java6/src/test/resources/compiler/TestProbe2.java b/extscript-core-root/extscript-core-java6/src/test/resources/compiler/TestProbe2.java
deleted file mode 100644
index 6cc4802..0000000
--- a/extscript-core-root/extscript-core-java6/src/test/resources/compiler/TestProbe2.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package compiler;
-
-/**
- * a simple testprobe to check if the compiler api works
- */
-public class TestProbe2 {
-
-}
\ No newline at end of file
diff --git a/extscript-core-root/extscript-core-java6/src/test/resources/compiler/myPackage/WhiteListedProbe.java b/extscript-core-root/extscript-core-java6/src/test/resources/compiler/myPackage/WhiteListedProbe.java
deleted file mode 100644
index 551bd5a..0000000
--- a/extscript-core-root/extscript-core-java6/src/test/resources/compiler/myPackage/WhiteListedProbe.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package compiler.myPackage;
-
-/**
- * White listed probe for the compiler api
- */
-public class WhiteListedProbe {
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/faces-config.NavData b/extscript-core-root/extscript-myfaces12-extensions/faces-config.NavData
deleted file mode 100644
index e69de29..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/faces-config.NavData
+++ /dev/null
diff --git a/extscript-core-root/extscript-myfaces12-extensions/pom.xml b/extscript-core-root/extscript-myfaces12-extensions/pom.xml
deleted file mode 100644
index 8a10d2e..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/pom.xml
+++ /dev/null
@@ -1,101 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <artifactId>extscript-myfaces12-extensions</artifactId>
- <packaging>jar</packaging>
- <name>myfaces12-extensions</name>
-
- <description>
- extensions.scripting classes which enable myfaces 1.2 compatibility
- </description>
-
- <parent>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <artifactId>extscript-core-root</artifactId>
- <version>1.0.3-SNAPSHOT</version>
- </parent>
-
- <scm>
- <connection>scm:svn:http://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions</connection>
- <developerConnection>scm:svn:https://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions</developerConnection>
- <url>http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-core-root/extscript-myfaces12-extensions</url>
- </scm>
-
- <dependencies>
-
-
- <dependency>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <artifactId>extscript-core</artifactId>
- <version>1.0.3-SNAPSHOT</version>
- </dependency>
-
-
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-api</artifactId>
- <version>${myfaces12.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-impl</artifactId>
- <version>${myfaces12.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>com.sun.facelets</groupId>
- <artifactId>jsf-facelets</artifactId>
- <version>1.1.11</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>commons-beanutils</groupId>
- <artifactId>commons-beanutils</artifactId>
- <version>1.8.0</version>
- </dependency>
-
-
- </dependencies>
-
- <profiles>
- <profile>
- <!--
- - Build and install into the repository some additional artifacts that we don't
- - want to build during normal development because they take too long.
- -->
- <id>generate-assembly</id>
- <activation>
- <property>
- <name>performRelease</name>
- <value>true</value>
- </property>
- </activation>
- <build>
- <plugins>
- <plugin>
- <!-- Install in the repository a "-javadoc.jar" file -->
- <artifactId>maven-javadoc-plugin</artifactId>
- <version>2.4</version>
- <executions>
- <execution>
- <id>attach-javadoc</id>
- <goals><goal>jar</goal></goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <!-- Install in the repository a "-sources.jar" file -->
- <artifactId>maven-source-plugin</artifactId>
- <executions>
- <execution>
- <id>attach-source</id>
- <goals><goal>jar</goal></goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
-</project>
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/facelet/ReroutingResourceResolver.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/facelet/ReroutingResourceResolver.java
deleted file mode 100644
index 4d856f5..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/facelet/ReroutingResourceResolver.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * 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.facelet;
-
-import com.sun.facelets.impl.DefaultResourceResolver;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import java.io.File;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-/**
- * decorated Facelet resource resolver to reroute
- * the resource requests to our source path if possible
- */
-public class ReroutingResourceResolver extends DefaultResourceResolver {
-
- DefaultResourceResolver _delegate = new DefaultResourceResolver();
- volatile boolean _initiated = false;
- List<String> _resourceDirs = null;
-
- Logger log = Logger.getLogger(this.getClass().getName());
-
- @Override
- public URL resolveUrl(String path) {
-
- if (!_initiated) {
- _resourceDirs = WeavingContext.getConfiguration().getResourceDirs();
- _initiated = true;
- }
-
- if (_resourceDirs != null && !_resourceDirs.isEmpty()) {
- for (String resourceDir : _resourceDirs) {
- File resource = new File(resourceDir + path);
- if (resource.exists()) try {
- return resource.toURI().toURL();
- } catch (MalformedURLException e) {
- log.log(Level.SEVERE,"", e);
- }
- }
- }
-
- return _delegate.resolveUrl(path);
- }
-}
-
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java
deleted file mode 100644
index a56322c..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.factories;
-
-import org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.ApplicationProxy;
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.faces.application.ApplicationFactory;
-import javax.faces.application.Application;
-
-/**
- * Application factory which introduces
- * scripting proxies for their artefacts
- * <p/>
- * We use a mix of AOP and helper constructs
- * to reach the goal to be dynamic.
- * For most artefacts we just need to
- * check if the object is a Groovy object
- * and then reload at their connection interfaces
- * <p/>
- * Some artefacts have a longer lifespan and/or are stateless
- * for those we have to work with reloading AOP
- *
- * @author Werner Punz
- */
-public class ScriptingApplicationFactory extends ApplicationFactory implements Decorated {
-
- ApplicationFactory _delegate;
- boolean scriptingEnabled = false;
-
- public ScriptingApplicationFactory(ApplicationFactory delegate) {
- _delegate = delegate;
- }
-
- public Application getApplication() {
- Application retVal = _delegate.getApplication();
-
- if (WeavingContext.isScriptingEnabled() && !(retVal instanceof ApplicationProxy))
- retVal = new ApplicationProxy(retVal);
-
- return retVal;
- }
-
- public void setApplication(Application application) {
- if (WeavingContext.isScriptingEnabled() && !(application instanceof ApplicationProxy))
- application = new ApplicationProxy(application);
-
- _delegate.setApplication(application);
- }
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java
deleted file mode 100644
index c09a7df..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.factories;
-
-import org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.FacesContextProxy;
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.faces.context.FacesContext;
-import javax.faces.context.FacesContextFactory;
-import javax.faces.lifecycle.Lifecycle;
-import javax.faces.FacesException;
-
-/**
- * Faces context weaver which builds
- * our reloading proxy around the current faces context
- *
- * @author Werner Punz
- */
-public class ScriptingFacesContextFactory extends javax.faces.context.FacesContextFactory implements Decorated {
-
- public FacesContextFactory _delegate;
- boolean scriptingEnabled = false;
-
- public ScriptingFacesContextFactory(FacesContextFactory delegate) {
- _delegate = delegate;
- }
-
- public void setDelegate(FacesContextFactory delegate) {
- _delegate = delegate;
- }
-
- public FacesContext getFacesContext(Object o, Object o1, Object o2, Lifecycle lifecycle) throws FacesException {
- FacesContext retVal = _delegate.getFacesContext(o, o1, o2, lifecycle);
-
- if (WeavingContext.isScriptingEnabled() && !(retVal instanceof FacesContextProxy))
- return new FacesContextProxy(retVal);
- return retVal;
- }
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java
deleted file mode 100644
index d8a1c1e..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.factories;
-
-import org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.LifefcycleProxy;
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.faces.lifecycle.LifecycleFactory;
-import javax.faces.lifecycle.Lifecycle;
-import java.util.Iterator;
-
-/**
- * Lifecyclefactory which introduces scripting proxies
- * for their artefacts
- *
- * @author Werner Punz
- */
-public class ScriptingLifecycleFactory extends LifecycleFactory implements Decorated {
-
- LifecycleFactory _delegate;
- boolean scriptingEnabled = false;
-
- public ScriptingLifecycleFactory(LifecycleFactory delegate) {
- _delegate = delegate;
- }
-
- public void addLifecycle(String s, Lifecycle lifecycle) {
- if (scriptingEnabled && !(lifecycle instanceof LifefcycleProxy))
- lifecycle = new LifefcycleProxy(lifecycle);
- _delegate.addLifecycle(s, lifecycle);
- }
-
- public Lifecycle getLifecycle(String s) {
- Lifecycle retVal = _delegate.getLifecycle(s);
- if (WeavingContext.isScriptingEnabled() && !(retVal instanceof LifefcycleProxy))
- retVal = new LifefcycleProxy(retVal);
-
- return retVal;
- }
-
- public Iterator getLifecycleIds() {
- return _delegate.getLifecycleIds();
- }
-
- public void setDelegate(LifecycleFactory delegate) {
- this._delegate = delegate;
- }
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java
deleted file mode 100644
index b787ecc..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.factories;
-
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-import org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.implemetations.RenderkitProxy;
-
-import javax.faces.render.RenderKitFactory;
-import javax.faces.render.RenderKit;
-import javax.faces.context.FacesContext;
-import java.util.Iterator;
-
-/**
- * Scripting enabled renderkit factory
- *
- * @author Werner Punz
- */
-public class ScriptingRenderkitFactory extends RenderKitFactory implements Decorated {
-
- boolean scriptingEnabled = false;
-
- public ScriptingRenderkitFactory(RenderKitFactory delegate) {
- _delegate = delegate;
-
- }
-
- public void addRenderKit(String s, RenderKit renderKit) {
- if (WeavingContext.isScriptingEnabled() && renderKit != null && !(renderKit instanceof RenderkitProxy))
- renderKit = new RenderkitProxy(renderKit);
-
- _delegate.addRenderKit(s, renderKit);
- }
-
- public RenderKit getRenderKit(FacesContext facesContext, String s) {
- RenderKit retVal = _delegate.getRenderKit(facesContext, s);
- if (WeavingContext.isScriptingEnabled() && retVal != null && !(retVal instanceof RenderkitProxy))
- retVal = new RenderkitProxy(retVal);
- return retVal;
- }
-
- public Iterator getRenderKitIds() {
- return _delegate.getRenderKitIds();
- }
-
- public void setDelegate(RenderKitFactory delegate) {
- _delegate = delegate;
- }
-
- RenderKitFactory _delegate = null;
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java
deleted file mode 100644
index b4ef149..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java
+++ /dev/null
@@ -1,424 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.implemetations;
-
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.el.*;
-import javax.faces.FacesException;
-import javax.faces.application.Application;
-import javax.faces.application.NavigationHandler;
-import javax.faces.application.StateManager;
-import javax.faces.application.ViewHandler;
-import javax.faces.component.UIComponent;
-import javax.faces.context.FacesContext;
-import javax.faces.convert.Converter;
-import javax.faces.el.*;
-import javax.faces.event.ActionListener;
-import javax.faces.validator.Validator;
-import java.lang.reflect.Proxy;
-import java.util.*;
-
-/**
- * our decorating application
- * which should resolve our bean issues within a central
- * bean processing interceptor
- * <p/>
- *
- * @author Werner Punz
- */
-@SuppressWarnings({"deprecation", "deprecation"})
-public class ApplicationProxy extends Application implements Decorated {
-
- volatile Application _delegate;
- volatile static boolean elResolverAdded = false;
- volatile static boolean varResolverAdded = false;
-
- public ApplicationProxy(Application delegate) {
- _delegate = delegate;
- }
-
- public void addELResolver(ELResolver elResolver) {
- weaveDelegate();
- /*if (!elResolverAdded) {
- //ordering hints are unsufficient here we make
- //sure our proxy is added as second in the chain
- //also this method works as well on
- //jsf 1.2 while hints only work in jsf2
- elResolver = new ELResolverProxy(elResolver);
- elResolverAdded = true;
- }*/
- _delegate.addELResolver(elResolver);
- }
-
- private void weaveDelegate() {
- if (_delegate != null) {
- _delegate = (Application) WeavingContext.getWeaver().reloadScriptingInstance(_delegate, ScriptingConst.ARTIFACT_TYPE_APPLICATION);
- }
- }
-
- public ELResolver getELResolver() {
- weaveDelegate();
- ELResolver retVal = _delegate.getELResolver();
- return retVal;
- }
-
- //TOD add a weaving for resource bundles
-
- public ResourceBundle getResourceBundle(FacesContext facesContext, String s) throws FacesException, NullPointerException {
- weaveDelegate();
- return _delegate.getResourceBundle(facesContext, s);
- }
-
- public UIComponent createComponent(ValueExpression valueExpression, FacesContext facesContext, String s) throws FacesException, NullPointerException {
- weaveDelegate();
- System.out.println("create1");
- UIComponent component = _delegate.createComponent(valueExpression, facesContext, s);
-
- /*we are reweaving on the fly because we cannot be sure if
- * the class is not recycled all the time in the creation
- * code, in the renderer we do it on method base
- * due to the fact that our renderers are recycled via
- * a flyweight pattern
- *
- *
- * Also we cannot proxy here because there is no UIComponent interface
- * maybe in the long run we can make a decorator here instead
- * but for now lets try it this way
- */
- if (WeavingContext.isDynamic(component.getClass()) && !alreadyWovenInRequest(component.getClass().getName())) {
- /*once it was tainted we have to recreate all the time*/
- component = (UIComponent) WeavingContext.getWeaver().reloadScriptingInstance(component, ScriptingConst.ARTIFACT_TYPE_COMPONENT);
- alreadyWovenInRequest(component.getClass().getName());
- }
- return component;
-
- }
-
- public ExpressionFactory getExpressionFactory() {
- weaveDelegate();
- return _delegate.getExpressionFactory();
- }
-
- public void addELContextListener(ELContextListener elContextListener) {
- weaveDelegate();
- if (WeavingContext.isDynamic(elContextListener.getClass()))
- elContextListener = (ELContextListener) WeavingContext.createMethodReloadingProxyFromObject(elContextListener, ELContextListener.class, ScriptingConst.ARTIFACT_TYPE_ELCONTEXTLISTENER);
- _delegate.addELContextListener(elContextListener);
- }
-
- public void removeELContextListener(ELContextListener elContextListener) {
- weaveDelegate();
- _delegate.removeELContextListener(elContextListener);
- }
-
- public ELContextListener[] getELContextListeners() {
- weaveDelegate();
- return _delegate.getELContextListeners();
- }
-
- public Object evaluateExpressionGet(FacesContext facesContext, String s, Class aClass) throws ELException {
- weaveDelegate();
- //good place for a dynamic reloading check as well
- Object retVal = _delegate.evaluateExpressionGet(facesContext, s, aClass);
- if (WeavingContext.isDynamic(retVal.getClass()))
- retVal = WeavingContext.getWeaver().reloadScriptingInstance(retVal, ScriptingConst.ARTIFACT_TYPE_MANAGEDBEAN);
- return retVal;
- }
-
- public ActionListener getActionListener() {
- weaveDelegate();
- ActionListener retVal = _delegate.getActionListener();
- if (WeavingContext.isDynamic(retVal.getClass()))
- retVal = (ActionListener) WeavingContext.createMethodReloadingProxyFromObject(retVal, ActionListener.class, ScriptingConst.ARTIFACT_TYPE_ACTIONLISTENER);
- return retVal;
- }
-
- public void setActionListener(ActionListener actionListener) {
- weaveDelegate();
- if (WeavingContext.isDynamic(actionListener.getClass()))
- actionListener = (ActionListener) WeavingContext.createMethodReloadingProxyFromObject(actionListener, ActionListener.class, ScriptingConst.ARTIFACT_TYPE_ACTIONLISTENER);
- _delegate.setActionListener(actionListener);
- }
-
- public Locale getDefaultLocale() {
- weaveDelegate();
- return _delegate.getDefaultLocale();
- }
-
- public void setDefaultLocale(Locale locale) {
- weaveDelegate();
- _delegate.setDefaultLocale(locale);
- }
-
- public String getDefaultRenderKitId() {
- weaveDelegate();
- return _delegate.getDefaultRenderKitId();
- }
-
- public void setDefaultRenderKitId(String s) {
- weaveDelegate();
- _delegate.setDefaultRenderKitId(s);
- }
-
- public String getMessageBundle() {
- weaveDelegate();
- return _delegate.getMessageBundle();
- }
-
- public void setMessageBundle(String s) {
- weaveDelegate();
- _delegate.setMessageBundle(s);
- }
-
- public NavigationHandler getNavigationHandler() {
- weaveDelegate();
- //defined in the setter to speed things up a little
- NavigationHandler retVal = _delegate.getNavigationHandler();
- if (retVal != null && WeavingContext.isDynamic(retVal.getClass()))
- retVal = new NavigationHandlerProxy(retVal);
- return retVal;
- }
-
- public void setNavigationHandler(NavigationHandler navigationHandler) {
- weaveDelegate();
- if (navigationHandler != null && WeavingContext.isDynamic(navigationHandler.getClass()))
- navigationHandler = new NavigationHandlerProxy(navigationHandler);
- _delegate.setNavigationHandler(navigationHandler);
- }
-
- @SuppressWarnings("deprecation")
- public PropertyResolver getPropertyResolver() {
- weaveDelegate();
- return _delegate.getPropertyResolver();
- }
-
- @SuppressWarnings("deprecation")
- public void setPropertyResolver(PropertyResolver propertyResolver) {
- weaveDelegate();
- _delegate.setPropertyResolver(propertyResolver);
- }
-
- @SuppressWarnings("deprecation")
- public VariableResolver getVariableResolver() {
- weaveDelegate();
- VariableResolver variableResolver = _delegate.getVariableResolver();
- return variableResolver;
- }
-
- @SuppressWarnings("deprecation")
- public void setVariableResolver(VariableResolver variableResolver) {
- weaveDelegate();
- if (!varResolverAdded) {
- variableResolver = new VariableResolverProxy(variableResolver);
- varResolverAdded = true;
- }
- _delegate.setVariableResolver(variableResolver);
- }
-
- public ViewHandler getViewHandler() {
- weaveDelegate();
- ViewHandler handler = _delegate.getViewHandler();
-
- /*
- We proxy here to emable dynamic reloading for
- methods in the long run, as soon as we hit
- java all our groovy reloading code is lost
- hence we have to work with proxies here
- */
- if (WeavingContext.isDynamic(handler.getClass()))
- handler = new ViewHandlerProxy(handler);
- return handler;
- }
-
- public void setViewHandler(ViewHandler viewHandler) {
- weaveDelegate();
- /*make sure you have the delegates as well in properties*/
- if (WeavingContext.isDynamic(viewHandler.getClass()))
- viewHandler = new ViewHandlerProxy(viewHandler);
-
- _delegate.setViewHandler(viewHandler);
- }
-
- public StateManager getStateManager() {
- weaveDelegate();
- return _delegate.getStateManager();
- }
-
- public void setStateManager(StateManager stateManager) {
- weaveDelegate();
- _delegate.setStateManager(stateManager);
- }
-
- public void addComponent(String componentType, String componentClass) {
- weaveDelegate();
- _delegate.addComponent(componentType, componentClass);
- }
-
- public UIComponent createComponent(String s) throws FacesException {
- weaveDelegate();
- //the components are generated anew very often
- //we cannot do an on object weaving here
- UIComponent component = _delegate.createComponent(s);
-
- /*we are reweaving on the fly because we cannot be sure if
- * the class is not recycled all the time in the creation
- * code, in the renderer we do it on method base
- * due to the fact that our renderers are recycled via
- * a flyweight pattern*/
- return (UIComponent) reloadInstance(component, ScriptingConst.ARTIFACT_TYPE_COMPONENT);
- }
-
- @SuppressWarnings("deprecation")
- public UIComponent createComponent(ValueBinding valueBinding, FacesContext facesContext, String s) throws FacesException {
- weaveDelegate();
- UIComponent component = _delegate.createComponent(valueBinding, facesContext, s);
-
- /*we are reweaving on the fly because we cannot be sure if
- * the class is not recycled all the time in the creation
- * code, in the renderer we do it on method base
- * due to the fact that our renderers are recycled via
- * a flyweight pattern*/
- return (UIComponent) reloadInstance(component, ScriptingConst.ARTIFACT_TYPE_COMPONENT);
- }
-
- public Iterator<String> getComponentTypes() {
- weaveDelegate();
- return _delegate.getComponentTypes();
- }
-
- public void addConverter(String s, String s1) {
- weaveDelegate();
- _delegate.addConverter(s, s1);
- }
-
- public void addConverter(Class aClass, String s) {
- weaveDelegate();
- _delegate.addConverter(aClass, s);
- }
-
- public Converter createConverter(String s) {
- weaveDelegate();
- Converter retVal = _delegate.createConverter(s);
- /**
- * since createConverter is called only once
- * we have to work with method reloading proxies
- * we cannot use this technique extensively for speed reasons
- * most of the time it is fine just to work with
- *
- * reloading objects at their interception points
- */
- if (WeavingContext.isDynamic(retVal.getClass())) {
- retVal = (Converter) WeavingContext.createMethodReloadingProxyFromObject(retVal, Converter.class, ScriptingConst.ARTIFACT_TYPE_CONVERTER);
-
- }
-
- return retVal;
- }
-
- public Converter createConverter(Class aClass) {
- weaveDelegate();
- Converter retVal = _delegate.createConverter(aClass);
- if (retVal != null && WeavingContext.isDynamic(retVal.getClass())) {
- retVal = (Converter) WeavingContext.createMethodReloadingProxyFromObject(retVal, Converter.class, ScriptingConst.ARTIFACT_TYPE_CONVERTER);
- }
-
- return retVal;
- }
-
- public Iterator<String> getConverterIds() {
- weaveDelegate();
- return _delegate.getConverterIds();
- }
-
- public Iterator<Class> getConverterTypes() {
- weaveDelegate();
- return _delegate.getConverterTypes();
- }
-
- @SuppressWarnings("deprecation")
- public MethodBinding createMethodBinding(String s, Class[] classes) throws ReferenceSyntaxException {
- weaveDelegate();
- return _delegate.createMethodBinding(s, classes);
- }
-
- public Iterator<Locale> getSupportedLocales() {
- weaveDelegate();
- return _delegate.getSupportedLocales();
- }
-
- public void setSupportedLocales(Collection<Locale> locales) {
- weaveDelegate();
- _delegate.setSupportedLocales(locales);
- }
-
- public void addValidator(String s, String s1) {
- weaveDelegate();
- _delegate.addValidator(s, s1);
- }
-
- public Validator createValidator(String s) throws FacesException {
- weaveDelegate();
-
- Validator retVal = _delegate.createValidator(s);
- if (WeavingContext.isDynamic(retVal.getClass()) && !Proxy.isProxyClass(retVal.getClass())) {
- retVal = (Validator) reloadInstance(retVal, ScriptingConst.ARTIFACT_TYPE_VALIDATOR);
- }
- return retVal;
- }
-
- public Iterator<String> getValidatorIds() {
- weaveDelegate();
- return _delegate.getValidatorIds();
- }
-
- @SuppressWarnings("deprecation")
- public ValueBinding createValueBinding(String s) throws ReferenceSyntaxException {
- weaveDelegate();
- return _delegate.createValueBinding(s);
- }
-
- public Object getDelegate() {
- return _delegate;
- }
-
- private Object reloadInstance(Object instance, int artefactType) {
- if (instance == null) {
- return null;
- }
- if (WeavingContext.isDynamic(instance.getClass()) && !alreadyWovenInRequest(instance.getClass().getName())) {
- instance = WeavingContext.getWeaver().reloadScriptingInstance(instance, artefactType);
- alreadyWovenInRequest(instance.getClass().getName());
- }
- return instance;
- }
-
- private boolean alreadyWovenInRequest(String clazz) {
- //portlets now can be enabled thanks to the jsf2 indirections regarding the external context
- Map<String, Object> reqMap = WeavingContext.getRequestMap();
- if (reqMap.get(ScriptingConst.SCRIPTING_REQUSINGLETON + clazz) == null) {
- reqMap.put(ScriptingConst.SCRIPTING_REQUSINGLETON + clazz, "");
- return false;
- }
- return true;
- }
-
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/ELResolverProxy.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/ELResolverProxy.java
deleted file mode 100644
index 6d6bfde..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/ELResolverProxy.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.implemetations;
-
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.el.ELContext;
-import javax.el.ELException;
-import javax.el.ELResolver;
-import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.util.Iterator;
-import java.util.logging.Logger;
-
-/**
- * EL Resolver which is scripting enabled
- *
- * @author Werner Punz
- */
-public class ELResolverProxy extends ELResolver implements Decorated {
-
- Logger log = Logger.getLogger(ELResolverProxy.class.getName());
- ELResolver _delegate = null;
-
- public ELResolverProxy(ELResolver delegate) {
- _delegate = delegate;
- }
-
-
- public Object getValue(ELContext elContext, final Object base, final Object property) throws NullPointerException, ELException {
- return _delegate.getValue(elContext, base, property);
- }
-
- public Class<?> getType(ELContext elContext, Object base, Object property) throws NullPointerException, ELException {
- return _delegate.getType(elContext, base, property);
- }
-
- public void setValue(ELContext elContext, Object base, Object property, Object value) throws NullPointerException, ELException {
- if (base != null) {
- WeavingContext.getRefreshContext().getDependencyRegistry().addDependency(ScriptingConst.ENGINE_TYPE_JSF_ALL, base.getClass().getName(), base.getClass().getName(), value.getClass().getName());
- }
- _delegate.setValue(elContext, base, property, value);
- }
-
- public boolean isReadOnly(ELContext elContext, Object o, Object o1) throws NullPointerException, ELException {
- return _delegate.isReadOnly(elContext, o, o1);
- }
-
- public Iterator getFeatureDescriptors(ELContext elContext, Object o) {
- return _delegate.getFeatureDescriptors(elContext, o);
- }
-
- public Class<?> getCommonPropertyType(ELContext elContext, Object o) {
- return _delegate.getCommonPropertyType(elContext, o);
- }
-
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/FacesContextProxy.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/FacesContextProxy.java
deleted file mode 100644
index ba8f0a1..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/FacesContextProxy.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.implemetations;
-
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.faces.context.FacesContext;
-import javax.faces.context.ExternalContext;
-import javax.faces.context.ResponseStream;
-import javax.faces.context.ResponseWriter;
-import javax.faces.application.Application;
-import javax.faces.application.FacesMessage;
-import javax.faces.render.RenderKit;
-import javax.faces.component.UIViewRoot;
-import javax.el.ELContext;
-import java.util.Iterator;
-
-/**
- * A reloading, weaving faces context
- * this is needed because groovy fails on
- * the introspection of the standard java myfaces
- * faces context due to pending references
- * of the _impl into the portlet context
- * not sure if this works in portlets
- * though
- *
- * @author Werner Punz
- */
-public class FacesContextProxy extends FacesContext implements Decorated {
-
- public FacesContext _delegate = null;
-
- private void weaveDelegate() {
- //in case of a context destroyed the weaver might be accessed a last time
- //but is already null due to having no weaver in the shutdown thread
- if (_delegate != null && WeavingContext.getWeaver() != null)
- _delegate = (FacesContext) WeavingContext.getWeaver().reloadScriptingInstance(_delegate, ScriptingConst.ARTIFACT_TYPE_FACESCONTEXT);
- }
-
- public ELContext getELContext() {
- return _delegate.getELContext();
- }
-
- public Application getApplication() {
- return _delegate.getApplication();
- }
-
- public Iterator<String> getClientIdsWithMessages() {
- return _delegate.getClientIdsWithMessages();
- }
-
- public ExternalContext getExternalContext() {
- return _delegate.getExternalContext();
- }
-
- public FacesMessage.Severity getMaximumSeverity() {
- return _delegate.getMaximumSeverity();
- }
-
- public Iterator<FacesMessage> getMessages() {
- return _delegate.getMessages();
- }
-
- public Iterator<FacesMessage> getMessages(String s) {
- return _delegate.getMessages(s);
- }
-
- public RenderKit getRenderKit() {
- return _delegate.getRenderKit();
- }
-
- public boolean getRenderResponse() {
- return _delegate.getRenderResponse();
- }
-
- public boolean getResponseComplete() {
- return _delegate.getResponseComplete();
- }
-
- public ResponseStream getResponseStream() {
- return _delegate.getResponseStream();
- }
-
- public void setResponseStream(ResponseStream responseStream) {
- _delegate.setResponseStream(responseStream);
- }
-
- public ResponseWriter getResponseWriter() {
- return _delegate.getResponseWriter();
- }
-
- public void setResponseWriter(ResponseWriter responseWriter) {
- _delegate.setResponseWriter(responseWriter);
- }
-
- public UIViewRoot getViewRoot() {
- return _delegate.getViewRoot();
- }
-
- public void setViewRoot(UIViewRoot uiViewRoot) {
- weaveDelegate();//perfect place no matter what the viewRoot is about once per request set
- _delegate.setViewRoot(uiViewRoot);
- }
-
- public void addMessage(String s, FacesMessage facesMessage) {
- _delegate.addMessage(s, facesMessage);
- }
-
- public void release() {
- _delegate.release();
- }
-
- public void renderResponse() {
- _delegate.renderResponse();
- }
-
- public void responseComplete() {
- _delegate.responseComplete();
- }
-
- public FacesContextProxy(FacesContext delegate) {
- _delegate = delegate;
- weaveDelegate();
- }
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/LifefcycleProxy.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/LifefcycleProxy.java
deleted file mode 100644
index a1a1e09..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/LifefcycleProxy.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.implemetations;
-
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.faces.lifecycle.Lifecycle;
-import javax.faces.event.PhaseListener;
-import javax.faces.context.FacesContext;
-import javax.faces.FacesException;
-
-/**
- * Scripting enabled lifecycle
- *
- * @author Werner Punz
- */
-public class LifefcycleProxy extends Lifecycle implements Decorated {
-
- private void weaveDelegate() {
- if (_delegate != null)
- _delegate = (Lifecycle) WeavingContext.getWeaver().reloadScriptingInstance(_delegate, ScriptingConst.ARTIFACT_TYPE_LIFECYCLE);
- }
-
- public LifefcycleProxy(Lifecycle delegate) {
- _delegate = delegate;
- }
-
- public void addPhaseListener(PhaseListener phaseListener) {
- weaveDelegate();
- /*we can put our object weaving code into the add here*/
- if (WeavingContext.isDynamic(phaseListener.getClass()))
- phaseListener = (PhaseListener) WeavingContext.createMethodReloadingProxyFromObject(phaseListener, PhaseListener.class, ScriptingConst.ARTIFACT_TYPE_PHASELISTENER);
-
- _delegate.addPhaseListener(phaseListener);
- }
-
- public void execute(FacesContext facesContext) throws FacesException {
- weaveDelegate();
- _delegate.execute(facesContext);
- }
-
- public PhaseListener[] getPhaseListeners() {
- weaveDelegate();
- return _delegate.getPhaseListeners();
- }
-
- public void removePhaseListener(PhaseListener phaseListener) {
- weaveDelegate();
- _delegate.removePhaseListener(phaseListener);
- }
-
- public void render(FacesContext facesContext) throws FacesException {
- weaveDelegate();
- _delegate.render(facesContext);
- }
-
- Lifecycle _delegate = null;
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/NavigationHandlerProxy.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/NavigationHandlerProxy.java
deleted file mode 100644
index 630af9b..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/NavigationHandlerProxy.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.implemetations;
-
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.faces.application.NavigationHandler;
-import javax.faces.context.FacesContext;
-
-/**
- * A reloading navigation handler
- *
- * @author Werner Punz
- */
-public class NavigationHandlerProxy extends NavigationHandler implements Decorated {
-
- private void weaveDelegate() {
- _delegate = (NavigationHandler) WeavingContext.getWeaver().reloadScriptingInstance(_delegate, ScriptingConst.ARTIFACT_TYPE_NAVIGATIONHANDLER);
- }
-
- public NavigationHandlerProxy(NavigationHandler delegate) {
- super();
- _delegate = delegate;
- }
-
- public void handleNavigation(FacesContext facesContext, String s, String s1) {
- weaveDelegate();
- _delegate.handleNavigation(facesContext, s, s1);
- }
-
- NavigationHandler _delegate;
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java
deleted file mode 100644
index d2712f4..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.implemetations;
-
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.faces.context.FacesContext;
-import javax.faces.context.ResponseStream;
-import javax.faces.context.ResponseWriter;
-import javax.faces.render.RenderKit;
-import javax.faces.render.Renderer;
-import javax.faces.render.ResponseStateManager;
-import javax.servlet.ServletRequest;
-import java.io.OutputStream;
-import java.io.Writer;
-
-/**
- * Weaving renderkit which
- * acts as a proxy factory for
- * our internal reloading referers
- *
- * @author Werner Punz
- */
-public class RenderkitProxy extends RenderKit implements Decorated {
-
- RenderKit _delegate = null;
-
- public RenderkitProxy(RenderKit delegate) {
- _delegate = delegate;
- }
-
- public void addRenderer(String componentFamily, String rendererType, Renderer renderer) {
- weaveDelegate();
- //wo do it brute force here because we have sometimes casts and hence cannot rely on proxies
- //renderers itself are flyweight patterns which means they are shared over objects
- renderer = (Renderer) reloadInstance(renderer, ScriptingConst.ARTIFACT_TYPE_RENDERER);
- _delegate.addRenderer(componentFamily, rendererType, renderer);
- }
-
- public Renderer getRenderer(String componentFamily, String rendererType) {
- weaveDelegate();
- return (Renderer) reloadInstance(_delegate.getRenderer(componentFamily, rendererType), ScriptingConst.ARTIFACT_TYPE_RENDERER);
- }
-
- public ResponseStateManager getResponseStateManager() {
- weaveDelegate();
- return _delegate.getResponseStateManager();
- }
-
- public ResponseWriter createResponseWriter(Writer writer, String s, String s1) {
- weaveDelegate();
- return (ResponseWriter) reloadInstance(_delegate.createResponseWriter(writer, s, s1), ScriptingConst.ARTIFACT_TYPE_RESPONSEWRITER);
- }
-
- public ResponseStream createResponseStream(OutputStream outputStream) {
- weaveDelegate();
- return (ResponseStream) reloadInstance(_delegate.createResponseStream(outputStream), ScriptingConst.ARTIFACT_TYPE_RESPONSESTREAM);
- }
-
- public Object getDelegate() {
- return _delegate;
- }
-
- private final void weaveDelegate() {
- _delegate = (RenderKit) WeavingContext.getWeaver().reloadScriptingInstance(_delegate, ScriptingConst.ARTIFACT_TYPE_RENDERKIT);
- }
-
- private final Object reloadInstance(Object instance, int artefactType) {
- if (instance == null) {
- return null;
- }
- if (WeavingContext.isDynamic(instance.getClass()) && !alreadyWovenInRequest(instance.getClass().getName())) {
- instance = WeavingContext.getWeaver().reloadScriptingInstance(instance, artefactType);
- alreadyWovenInRequest(instance.getClass().getName());
- }
- return instance;
- }
-
- private final boolean alreadyWovenInRequest(String clazz) {
- try {//portlets now can be enabled thanks to the jsf2 indirections regarding the external context
- ServletRequest req = (ServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
- if (req.getAttribute(ScriptingConst.SCRIPTING_REQUSINGLETON + clazz) == null) {
- req.setAttribute(ScriptingConst.SCRIPTING_REQUSINGLETON + clazz, "");
- return false;
- }
- return true;
- } catch(UnsupportedOperationException ex) {
- //still in startup no additional weaving here
- return true;
- }
- }
-
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/VariableResolverProxy.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/VariableResolverProxy.java
deleted file mode 100644
index d5732b0..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/VariableResolverProxy.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.implemetations;
-
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.faces.el.*;
-
-import javax.faces.context.FacesContext;
-
-/**
- * objects loaded must
- * be checked if a reloading is needed
- *
- * @author Werner Punz
- */
-@SuppressWarnings("deprecation")
-public class VariableResolverProxy extends VariableResolver implements Decorated {
- VariableResolver _delegate;
-
- public VariableResolverProxy(VariableResolver delegate) {
- _delegate = delegate;
- }
-
- public Object resolveVariable(FacesContext facesContext, String s) throws EvaluationException {
- Object variable = _delegate.resolveVariable(facesContext, s);
- if (variable != null && WeavingContext.isDynamic(variable.getClass()))
- variable = WeavingContext.getWeaver().reloadScriptingInstance(variable, ScriptingConst.ARTIFACT_TYPE_MANAGEDBEAN);
- return variable;
- }
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/ViewHandlerProxy.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/ViewHandlerProxy.java
deleted file mode 100644
index fe647e3..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/jsf/dynamicdecorators/implemetations/ViewHandlerProxy.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * 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.jsf.dynamicdecorators.implemetations;
-
-import org.apache.myfaces.extensions.scripting.api.Decorated;
-import org.apache.myfaces.extensions.scripting.api.ScriptingConst;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-
-import javax.faces.application.ViewHandler;
-import javax.faces.context.FacesContext;
-import javax.faces.component.UIViewRoot;
-import javax.faces.FacesException;
-import java.util.Locale;
-import java.io.IOException;
-
-/**
- * Scripting enabled View Handler
- *
- * @author Werner Punz
- */
-public class ViewHandlerProxy extends ViewHandler implements Decorated {
-
- ViewHandler _delegate = null;
-
- private void weaveDelegate() {
- if (_delegate != null) {
- _delegate = (ViewHandler) WeavingContext.getWeaver().reloadScriptingInstance(_delegate, ScriptingConst.ARTIFACT_TYPE_VIEWHANDLER);
- }
- }
-
- public ViewHandlerProxy(ViewHandler delegate) {
- _delegate = delegate;
- }
-
- public String calculateCharacterEncoding(FacesContext facesContext) {
- weaveDelegate();
- return _delegate.calculateCharacterEncoding(facesContext);
- }
-
- public Locale calculateLocale(FacesContext facesContext) {
- weaveDelegate();
- return _delegate.calculateLocale(facesContext);
- }
-
- public String calculateRenderKitId(FacesContext facesContext) {
- weaveDelegate();
- return _delegate.calculateRenderKitId(facesContext);
- }
-
- public UIViewRoot createView(FacesContext facesContext, String s) {
- weaveDelegate();
- return _delegate.createView(facesContext, s);
- }
-
- public String getActionURL(FacesContext facesContext, String s) {
- weaveDelegate();
- return _delegate.getActionURL(facesContext, s);
- }
-
- public String getResourceURL(FacesContext facesContext, String s) {
- weaveDelegate();
- return _delegate.getResourceURL(facesContext, s);
- }
-
- public void initView(FacesContext facesContext) throws FacesException {
- weaveDelegate();
- _delegate.initView(facesContext);
- }
-
- public void renderView(FacesContext facesContext, UIViewRoot uiViewRoot) throws IOException, FacesException {
- weaveDelegate();
- _delegate.renderView(facesContext, uiViewRoot);
- }
-
- public UIViewRoot restoreView(FacesContext facesContext, String s) {
- weaveDelegate();
- return _delegate.restoreView(facesContext, s);
- }
-
- public void writeState(FacesContext facesContext) throws IOException {
- weaveDelegate();
- _delegate.writeState(facesContext);
- }
-
- public Object getDelegate() {
- return _delegate;
- }
-}
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/servlet/CustomChainLoader.java b/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/servlet/CustomChainLoader.java
deleted file mode 100644
index 5627a58..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/java/org/apache/myfaces/extensions/scripting/servlet/CustomChainLoader.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * 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.servlet;
-
-import org.apache.myfaces.extensions.scripting.api.ScriptingWeaver;
-import org.apache.myfaces.extensions.scripting.core.util.WeavingContext;
-import org.apache.myfaces.shared_impl.util.ClassLoaderExtension;
-
-import javax.servlet.ServletContext;
-import java.util.logging.Logger;
-
-/**
- * a custom chainloader which adds a groovy loading
- * facility to our myfaces loading plugin system
- *
- * @author Werner Punz
- */
-@SuppressWarnings("unused")
-public class CustomChainLoader extends ClassLoaderExtension {
-
- /*
- * servlet context init var for additional chain loader paths which have
- * higher priority than the default ones
- */
-
- ScriptingWeaver _scriptingWeaver = null;
-
- public CustomChainLoader(ServletContext servletContext) {
- _scriptingWeaver = WeavingContext.getWeaver();
- }
-
-
- public Class forName(String name) {
- if(_scriptingWeaver == null || name == null) {
- return null;
- }
-
- if (name.endsWith(";")) {
- name = name.substring(1, name.length() - 1);
- }
-
- if (name.startsWith("java.")) /*the entire java namespace is reserved so no use to do a specific classloading check here*/
- return null;
- if (name.startsWith("javax.")) /*the entire java namespace is reserved so no use to do a specific classloading check here*/
- return null;
- else if (name.startsWith("com.sun")) /*internal java specific namespace*/
- return null;
- else if (name.startsWith("sun.")) /*internal java specific namespace*/
- return null;
- else if (name.startsWith("org.apache") && !name.startsWith("org.apache.myfaces")) {
- return null;
- }
- else if (name.startsWith("org.apache") && name.startsWith("org.apache.myfaces.config")) {
- return null;
- }
- return _scriptingWeaver.loadScriptingClassFromName(name);
- }
-}
\ No newline at end of file
diff --git a/extscript-core-root/extscript-myfaces12-extensions/src/main/resources/META-INF/faces-config.xml b/extscript-core-root/extscript-myfaces12-extensions/src/main/resources/META-INF/faces-config.xml
deleted file mode 100644
index 901782a..0000000
--- a/extscript-core-root/extscript-myfaces12-extensions/src/main/resources/META-INF/faces-config.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE faces-config
- PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
- "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
-
-<!--
- * 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.
--->
-
-<faces-config>
- <factory>
- <!--
- all these factories are replacements for the normal ones
- issue is we have to make a codeweaving for every bean created
- -->
- <application-factory>
- org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.factories.ScriptingApplicationFactory
- </application-factory>
- <faces-context-factory>
- org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.factories.ScriptingFacesContextFactory
- </faces-context-factory>
- <lifecycle-factory>
- org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.factories.ScriptingLifecycleFactory
- </lifecycle-factory>
- <render-kit-factory>
- org.apache.myfaces.extensions.scripting.jsf.dynamicdecorators.factories.ScriptingRenderkitFactory
- </render-kit-factory>
- </factory>
-
- <lifecycle>
- <phase-listener>org.apache.myfaces.extensions.scripting.jsf.RefreshPhaseListener</phase-listener>
- </lifecycle>
-
- <component>
- <component-type>org.apache.myfaces.extensions.scripting.components.CompilerComponent</component-type>
- <component-class>org.apache.myfaces.extensions.scripting.components.CompilerComponent</component-class>
- </component>
-
- <component>
- <component-type>org.apache.myfaces.extensions.scripting.components.TaintHistory</component-type>
- <component-class>org.apache.myfaces.extensions.scripting.components.TaintHistory</component-class>
- </component>
-
-
- <render-kit>
- <renderer>
- <component-family>javax.faces.Output</component-family>
- <renderer-type>org.apache.myfaces.extensions.scripting.components.CompilerComponentRenderer</renderer-type>
- <renderer-class>org.apache.myfaces.extensions.scripting.components.CompilerComponentRenderer</renderer-class>
- </renderer>
- <renderer>
- <component-family>javax.faces.Output</component-family>
- <renderer-type>org.apache.myfaces.extensions.scripting.components.TaintHistoryRenderer</renderer-type>
- <renderer-class>org.apache.myfaces.extensions.scripting.components.TaintHistoryRenderer</renderer-class>
- </renderer>
-
- </render-kit>
-
-</faces-config>
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/pom.xml b/extscript-examples/myfaces12-example/pom.xml
deleted file mode 100644
index b1b11f0..0000000
--- a/extscript-examples/myfaces12-example/pom.xml
+++ /dev/null
@@ -1,87 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>extscript-examples</artifactId>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <version>1.0.3-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <artifactId>myfaces12-example</artifactId>
- <packaging>war</packaging>
- <name>A custom project using myfaces 1.2</name>
- <version>1.0.3-SNAPSHOT</version>
- <url>http://www.apache.org</url>
-
- <scm>
- <connection>
- scm:svn:http://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk/extscript-examples/myfaces12-example
- </connection>
- <developerConnection>
- scm:svn:https://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk/extscript-examples/myfaces12-example
- </developerConnection>
- <url>http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-examples/myfaces12-example</url>
- </scm>
-
- <dependencies>
- <dependency>
- <groupId>org.codehaus.groovy</groupId>
- <artifactId>groovy-all</artifactId>
- <version>${groovy.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <artifactId>extscript-myfaces12-bundle</artifactId>
- <version>1.0.3-SNAPSHOT</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-api</artifactId>
- <version>${myfaces12.version}</version>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-impl</artifactId>
- <version>${myfaces12.version}</version>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>javax.portlet</groupId>
- <artifactId>portlet-api</artifactId>
- <version>1.0</version>
- </dependency>
-
- <dependency>
- <groupId>com.sun.facelets</groupId>
- <artifactId>jsf-facelets</artifactId>
- <version>1.1.11</version>
- </dependency>
- <!-- jstl because of facelets -->
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>jstl</artifactId>
- <version>1.2</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.myfaces.tomahawk</groupId>
- <artifactId>tomahawk</artifactId>
- <version>1.1.6</version>
- <scope>compile</scope>
- <exclusions>
- <exclusion>
- <artifactId>jstl</artifactId>
- <groupId>javax.servlet</groupId>
- </exclusion>
- </exclusions>
- </dependency>
-
- </dependencies>
-
-
-</project>
diff --git a/extscript-examples/myfaces12-example/src/main/conf/dev/web.xml b/extscript-examples/myfaces12-example/src/main/conf/dev/web.xml
deleted file mode 100644
index f1c2049..0000000
--- a/extscript-examples/myfaces12-example/src/main/conf/dev/web.xml
+++ /dev/null
@@ -1,315 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
- * 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.
--->
-<!--
-This web.xml is for development purposes
-it can be pulled in via mvn -P development ....
-it replaces the original web.xml in case
-of a development profile being set!
--->
-
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
- version="2.4">
-
- <description>MyProject web.xml</description>
-
- <!--optional: context-param>
- <description>Comma separated list of URIs of (additional) faces config files.
- (e.g. /WEB-INF/my-config.xml)
- See JSF 1.0 PRD2, 10.3.2
- Attention: You do not need to put /WEB-INF/faces-config.xml in here.
- </description>
- <param-name>javax.faces.CONFIG_FILES</param-name>
- <param-value>/WEB-INF/examples-config.xml</param-value>
- </context-param-->
-
- <!-- clean method working for myfaces 1.2.8+ -->
-
- <context-param>
- <description>
- Initializes the plugins for our groovy handlers
- </description>
- <param-name>org.apache.myfaces.FACES_INIT_PLUGINS</param-name>
- <param-value>org.apache.myfaces.extensions.scripting.servlet.StartupServletContextPluginChainLoader</param-value>
- </context-param>
-
- <context-param>
- <description>Additional comma separated loader paths to allow direct editing on the sources directory instead
- of the deployment dir
- </description>
- <param-name>org.apache.myfaces.extensions.scripting.groovy.LOADER_PATHS</param-name>
- <param-value>
- /Users/werpu2/development/workspace/extension-scripting4/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy
- </param-value>
- </context-param>
-
- <context-param>
- <description>Additional comma separated loader paths to allow direct editing on the sources directory instead
- of the deployment dir
- </description>
- <param-name>org.apache.myfaces.extensions.scripting.java.LOADER_PATHS</param-name>
- <param-value>
- /Users/werpu2/development/workspace/extension-scripting4/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java
- </param-value>
- </context-param>
-
-
- <context-param>
- <description>resource paths for our custom JSF2 resource resolver</description>
- <param-name>org.apache.myfaces.extensions.scripting.resources.LOADER_PATHS</param-name>
- <param-value>
- /Users/werpu2/development/workspace/extension-scripting4/extscript-examples/myfaces12-example/src/main/webapp
- </param-value>
- </context-param>
-
- <context-param>
- <description>a redirecting Facelet resource resolver which allows to pick up templates 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>
- </context-param>
-
-
-
- <context-param>
- <description>State saving method: "client" or "server" (= default)
- See JSF Specification 2.5.3
- </description>
- <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
- <param-value>server</param-value>
- </context-param>
-
- <context-param>
- <param-name>facelets.LIBRARIES</param-name>
- <param-value>/WEB-INF/facelets/groovy-taglib.xml</param-value>
- </context-param>
-
- <context-param>
- <description>Only applicable if state saving method is "server" (= default).
- Defines the amount (default = 20) of the latest views are stored in session.
- </description>
- <param-name>org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION</param-name>
- <param-value>20</param-value>
- </context-param>
- <context-param>
- <description>Only applicable if state saving method is "server" (= default).
- If true (default) the state will be serialized to a byte stream before it
- is written to the session.
- If false the state will not be serialized to a byte stream.
- </description>
- <param-name>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <description>Only applicable if state saving method is "server" (= default) and if
- org.apache.myfaces.SERIALIZE_STATE_IN_SESSION is true (= default)
- If true (default) the serialized state will be compressed before it
- is written to the session. If false the state will not be compressed.
- </description>
- <param-name>org.apache.myfaces.COMPRESS_STATE_IN_SESSION</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <description>This parameter tells MyFaces if javascript code should be allowed in the
- rendered HTML output.
- If javascript is allowed, command_link anchors will have javascript code
- that submits the corresponding form.
- If javascript is not allowed, the state saving info and nested parameters
- will be added as url parameters.
- Default: "true"
- </description>
- <param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name>
- <param-value>false</param-value>
- </context-param>
- <context-param>
- <description>If true, rendered HTML code will be formatted, so that it is "human readable".
- i.e. additional line separators and whitespace will be written, that do not
- influence the HTML code.
- Default: "true"
- </description>
- <param-name>org.apache.myfaces.PRETTY_HTML</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <description>If true, a javascript function will be rendered that is able to restore the
- former vertical scroll on every request. Convenient feature if you have pages
- with long lists and you do not want the browser page to always jump to the top
- if you trigger a link or button action that stays on the same page.
- Default: "false"
- </description>
- <param-name>org.apache.myfaces.AUTO_SCROLL</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>Used for encrypting view state. Only relevant for client side
- state saving. See MyFaces wiki/web site documentation for instructions
- on how to configure an application for diffenent encryption strengths.
- </description>
- <param-name>org.apache.myfaces.SECRET</param-name>
- <param-value>NzY1NDMyMTA=</param-value>
- </context-param>
-
- <context-param>
- <description>
- Validate managed beans, navigation rules and ensure that forms are not nested.
- </description>
- <param-name>org.apache.myfaces.VALIDATE</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>
- Treat readonly same as if disabled attribute was set for select elements.
- </description>
- <param-name>org.apache.myfaces.READONLY_AS_DISABLED_FOR_SELECTS</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>
- Use the defined class as the class which will be called when a resource is added to the
- ExtensionFilter handling. Using StreamingAddResource here helps with performance. If you want to add
- custom components and want to use the ExtensionFilter, you need to provide your custom implementation here.
- </description>
- <param-name>org.apache.myfaces.ADD_RESOURCE_CLASS</param-name>
- <param-value>org.apache.myfaces.renderkit.html.util.DefaultAddResource</param-value>
- </context-param>
-
- <context-param>
- <description>
- Virtual path in the URL which triggers loading of resources for the MyFaces extended components
- in the ExtensionFilter.
- </description>
- <param-name>org.apache.myfaces.RESOURCE_VIRTUAL_PATH</param-name>
- <param-value>/faces/myFacesExtensionResource</param-value>
- </context-param>
-
- <context-param>
- <description>
- Check if the extensions-filter has been properly configured.
- </description>
- <param-name>org.apache.myfaces.CHECK_EXTENSIONS_FILTER</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>
- Define partial state saving as true/false.
- </description>
- <param-name>javax.faces.PARTIAL_STATE_SAVING_METHOD</param-name>
- <param-value>false</param-value>
- </context-param>
-
- <!-- Use Documents Saved as *.xhtml -->
- <context-param>
- <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
- <param-value>.xhtml</param-value>
- </context-param>
-
- <!-- Special Debug Output for Development -->
- <context-param>
- <param-name>facelets.DEVELOPMENT</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <!-- Extensions Filter -->
- <filter>
- <filter-name>extensionsFilter</filter-name>
- <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
- <init-param>
- <description>Set the size limit for uploaded files.
- Format: 10 - 10 bytes
- 10k - 10 KB
- 10m - 10 MB
- 1g - 1 GB
- </description>
- <param-name>uploadMaxFileSize</param-name>
- <param-value>100m</param-value>
- </init-param>
- <init-param>
- <description>Set the threshold size - files
- below this limit are stored in memory, files above
- this limit are stored on disk.
-
- Format: 10 - 10 bytes
- 10k - 10 KB
- 10m - 10 MB
- 1g - 1 GB
- </description>
- <param-name>uploadThresholdSize</param-name>
- <param-value>100k</param-value>
- </init-param>
- </filter>
-
- <filter>
- <filter-name>scriptingFilter</filter-name>
- <filter-class>org.apache.myfaces.extensions.scripting.servlet.ScriptingServletFilter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>scriptingFilter</filter-name>
- <url-pattern>/*</url-pattern>
- <dispatcher>REQUEST</dispatcher>
- <dispatcher>FORWARD</dispatcher>
- <dispatcher>INCLUDE</dispatcher>
- <dispatcher>ERROR</dispatcher>
- </filter-mapping>
-
- <filter-mapping>
- <filter-name>extensionsFilter</filter-name>
- <url-pattern>*.jsf</url-pattern>
- </filter-mapping>
- <filter-mapping>
- <filter-name>extensionsFilter</filter-name>
- <url-pattern>/faces/*</url-pattern>
- </filter-mapping>
-
- <!-- Listener, to allow Jetty serving MyFaces apps -->
- <listener>
- <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
- </listener>
-
- <!-- Faces Servlet -->
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
- <!-- Faces Servlet Mapping -->
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.jsf</url-pattern>
- </servlet-mapping>
-
- <!-- Welcome files -->
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- <welcome-file>index.html</welcome-file>
- </welcome-file-list>
-
-</web-app>
diff --git a/extscript-examples/myfaces12-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java b/extscript-examples/myfaces12-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java
deleted file mode 100644
index d287a0d..0000000
--- a/extscript-examples/myfaces12-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * 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.blank;
-
-/**
- * A typical simple backing bean, that is backed to <code>helloworld.jsp</code>
- */
-public class HelloWorldController {
-
- //properties
- private String name;
-
- private int mylen = 10;
-
- /**
- * default empty constructor
- */
- public HelloWorldController() {
- }
-
- //-------------------getter & setter
-
- public String getName() {
- ClassLoader cls = Thread.currentThread().getContextClassLoader();
- return name;
- }
-
- public void setName(String name) {
- ClassLoader cls = Thread.currentThread().getContextClassLoader();
- this.name = name;
- }
-
- /**
- * Method that is backed to a submit button of a form.
- */
- public String send() {
- //do real logic, return a string which will be used for the navigation system of JSF
- return "success";
- }
-
- public int getMylen() {
- return mylen;
- }
-
- public void setMylen(int mylen) {
- this.mylen = mylen;
- }
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/facelets/groovy-taglib.xml b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/facelets/groovy-taglib.xml
deleted file mode 100644
index d345e6f..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/facelets/groovy-taglib.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE facelet-taglib PUBLIC "-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN" "facelet-taglib_1_0.dtd">
-<facelet-taglib>
- <!-- author: werner.punz@irian.at -->
-
- <namespace>http://myfaces.apache.org/groovy</namespace>
- <tag>
- <tag-name>groovyvalidator</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.groovyloader.test.TestValidator</validator-id>
- </validator>
- </tag>
- <tag>
- <tag-name>groovyconverter</tag-name>
- <converter>
- <converter-id>org.apache.myfaces.groovyloader.test.TestConverter</converter-id>
- </converter>
- </tag>
- <tag>
- <tag-name>testcomponent</tag-name>
- <component>
- <component-type>org.apache.myfaces.groovyloader.test.TestComponent</component-type>
- <renderer-type>org.apache.myfaces.groovyloader.test.Test</renderer-type>
- </component>
- </tag>
-</facelet-taglib>
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/facelets/tomahawk.taglib.xml b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/facelets/tomahawk.taglib.xml
deleted file mode 100644
index b9fc141..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/facelets/tomahawk.taglib.xml
+++ /dev/null
@@ -1,458 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE facelet-taglib PUBLIC "-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN" "facelet-taglib_1_0.dtd">
-<facelet-taglib>
- <!-- author: thomas.jachmann@mindmatters.de -->
- <namespace>http://myfaces.apache.org/tomahawk</namespace>
- <tag>
- <tag-name>commandButton</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandButton</component-type>
- <renderer-type>org.apache.myfaces.Button</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>commandLink</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandLink</component-type>
- <renderer-type>org.apache.myfaces.Link</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>dataTable</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlDataTable</component-type>
- <renderer-type>org.apache.myfaces.Table</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputHidden</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputHidden</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputSecret</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputSecret</component-type>
- <renderer-type>org.apache.myfaces.Secret</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputText</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputText</component-type>
- <renderer-type>org.apache.myfaces.Text</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputTextHelp</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputTextHelp</component-type>
- <renderer-type>org.apache.myfaces.TextHelp</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputTextarea</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputTextarea</component-type>
- <renderer-type>org.apache.myfaces.Textarea</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>graphicImage</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlGraphicImage</component-type>
- <renderer-type>org.apache.myfaces.Image</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>message</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlMessage</component-type>
- <renderer-type>org.apache.myfaces.Message</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>messages</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlMessages</component-type>
- <renderer-type>org.apache.myfaces.Messages</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>outputLabel</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlOutputLabel</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>outputText</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlOutputText</component-type>
- <renderer-type>org.apache.myfaces.Text</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelGrid</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelGrid</component-type>
- <renderer-type>org.apache.myfaces.Grid</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelGroup</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelGroup</component-type>
- <renderer-type>org.apache.myfaces.Group</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneMenu</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectOneMenu</component-type>
- <renderer-type>org.apache.myfaces.Menu</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectManyMenu</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectManyMenu</component-type>
- <renderer-type>org.apache.myfaces.Menu</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneRadio</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectOneRadio</component-type>
- <renderer-type>org.apache.myfaces.Radio</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectBooleanCheckbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectBooleanCheckbox</component-type>
- <renderer-type>org.apache.myfaces.Checkbox</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectManyCheckbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectManyCheckbox</component-type>
- <renderer-type>org.apache.myfaces.Checkbox</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneListbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectOneListbox</component-type>
- <renderer-type>org.apache.myfaces.Listbox</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectManyListbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectManyListbox</component-type>
- <renderer-type>org.apache.myfaces.Listbox</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputCalendar</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputCalendar</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>jsValueChangeListener</tag-name>
- <component>
- <component-type>org.apache.myfaces.JsValueChangeListener</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>jsValueSet</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlJsValueSet</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>checkbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCheckbox</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>commandNavigation</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandNavigation</component-type>
- <renderer-type>org.apache.myfaces.Navigation</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>commandNavigation2</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandNavigationItem</component-type>
- <renderer-type>org.apache.myfaces.NavigationMenu</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>commandSortHeader</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandSortHeader</component-type>
- <renderer-type>org.apache.myfaces.SortHeader</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>dataList</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlDataList</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>dataScroller</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlDataScroller</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputDate</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputDate</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputFileUpload</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputFileUpload</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputHtml</tag-name>
- <component>
- <component-type>org.apache.myfaces.InputHtml</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>navigationMenuItem</tag-name>
- <component>
- <component-type>org.apache.myfaces.NavigationMenuItem</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>navigationMenuItems</tag-name>
- <component>
- <component-type>javax.faces.SelectItems</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>jscookMenu</tag-name>
- <component>
- <component-type>org.apache.myfaces.JSCookMenu</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelLayout</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelLayout</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelNavigation</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelNavigation</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelNavigation2</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelNavigationMenu</component-type>
- <renderer-type>org.apache.myfaces.NavigationMenu</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelTab</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelTab</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelTabbedPane</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelTabbedPane</component-type>
- </component>
- </tag>
- <!-- deactivated since there's no component! tag>
- <tag-name>tabChangeListener</tag-name>
- <component>
- <component-type></component-type>
- </component>
- </tag-->
- <tag>
- <tag-name>collapsiblePanel</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCollapsiblePanel</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneCountry</tag-name>
- <component>
- <component-type>org.apache.myfaces.SelectOneCountry</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneLanguage</tag-name>
- <component>
- <component-type>org.apache.myfaces.SelectOneLanguage</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>stylesheet</tag-name>
- <component>
- <component-type>org.apache.myfaces.Stylesheet</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>div</tag-name>
- <component>
- <component-type>org.apache.myfaces.Div</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>htmlTag</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTag</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>radio</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlRadio</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>tree</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTree</component-type>
- <renderer-type>org.apache.myfaces.HtmlTree</renderer-type>
- </component>
- </tag>
- <!-- deactivated since there's no component! tag>
- <tag-name>treeSelectionListener</tag-name>
- <component>
- <component-type></component-type>
- </component>
- </tag-->
- <!-- deactivated since there's no component! tag>
- <tag-name>iconProvider</tag-name>
- <component>
- <component-type></component-type>
- </component>
- </tag-->
- <tag>
- <tag-name>treeColumn</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTreeColumn</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>treeCheckbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTreeCheckbox</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>tree2</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTree2</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelStack</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelStack</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>popup</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPopup</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>newspaperTable</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlNewspaperTable</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>aliasBean</tag-name>
- <component>
- <component-type>org.apache.myfaces.AliasBean</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>aliasBeansScope</tag-name>
- <component>
- <component-type>org.apache.myfaces.AliasBeansScope</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>buffer</tag-name>
- <component>
- <component-type>org.apache.myfaces.Buffer</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>saveState</tag-name>
- <component>
- <component-type>org.apache.myfaces.SaveState</component-type>
- </component>
- </tag>
- <!-- deactivated since there's no component! tag>
- <tag-name>updateActionListener</tag-name>
- <component>
- <component-type></component-type>
- </component>
- </tag-->
- <tag>
- <tag-name>validateCreditCard</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.validator.CreditCard</validator-id>
- </validator>
- </tag>
- <tag>
- <tag-name>validateEmail</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.validator.Email</validator-id>
- </validator>
- </tag>
- <tag>
- <tag-name>validateEqual</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.validator.Equal</validator-id>
- </validator>
- </tag>
- <tag>
- <tag-name>swapImage</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSwapImage</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>columns</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlColumns</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>column</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlColumn</component-type>
- </component>
- </tag>
- <!-- additional validators (note: not in tld, so no code completion) -->
- <tag>
- <tag-name>validateRegExpr</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.validator.RegExpr</validator-id>
- </validator>
- </tag>
-</facelet-taglib>
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/faces-config.xml b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/faces-config.xml
deleted file mode 100644
index 712cdeb..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/faces-config.xml
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0"?>
-<!--
- * 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.
--->
-<faces-config version="1.2"
- xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xi="http://www.w3.org/2001/XInclude"
- 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/web-facesconfig_1_2.xsd">
-
- <!-- managed beans of the simple hello world app -->
- <managed-bean>
- <managed-bean-name>helloWorld</managed-bean-name>
- <managed-bean-class>org.apache.myfaces.blank.HelloWorldController</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>testbean</managed-bean-name>
- <managed-bean-class>org.apache.myfaces.groovyloader.test.TestBean</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>javatestbean</managed-bean-name>
- <managed-bean-class>org.apache.myfaces.javaloader.test.TestBean2</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>blogView</managed-bean-name>
- <managed-bean-class>org.apache.myfaces.groovyloader.blog.Blog</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>blogService</managed-bean-name>
- <managed-bean-class>org.apache.myfaces.groovyloader.blog.BlogService</managed-bean-class>
- <managed-bean-scope>application</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>javaBlogView</managed-bean-name>
- <managed-bean-class>org.apache.myfaces.javaloader.blog.Blog</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>javaBlogService</managed-bean-name>
- <managed-bean-class>org.apache.myfaces.javaloader.blog.BlogService</managed-bean-class>
- <managed-bean-scope>application</managed-bean-scope>
- </managed-bean>
-
- <application>
- <view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
-
- <navigation-handler>
- org.apache.myfaces.groovyloader.test.TestNavigationHandler
- </navigation-handler>
-
- </application>
-
- <lifecycle>
-
- <phase-listener>
- org.apache.myfaces.groovyloader.test.TestPhaseListener
- </phase-listener>
- </lifecycle>
-
-
- <!-- navigation rules for helloWorld.jsp -->
- <navigation-rule>
- <from-view-id>/helloWorld.*</from-view-id>
- <navigation-case>
- <from-outcome>success</from-outcome>
- <to-view-id>/page2.jsf</to-view-id>
- </navigation-case>
- </navigation-rule>
-
- <!-- navigation rules for page2.jsp -->
- <navigation-rule>
- <from-view-id>/page2.*</from-view-id>
- <navigation-case>
- <from-outcome>back</from-outcome>
- <to-view-id>/helloWorld.jsf</to-view-id>
- </navigation-case>
- </navigation-rule>
-
-
- <validator>
- <validator-id>org.apache.myfaces.groovyloader.test.TestValidator</validator-id>
- <validator-class>org.apache.myfaces.groovyloader.test.TestValidator</validator-class>
- </validator>
- <converter>
- <converter-id>org.apache.myfaces.groovyloader.test.TestConverter</converter-id>
- <converter-class>org.apache.myfaces.groovyloader.test.TestConverter</converter-class>
- </converter>
-
- <component>
- <component-type>org.apache.myfaces.groovyloader.test.TestComponent</component-type>
- <component-class>org.apache.myfaces.groovyloader.test.TestComponent</component-class>
- </component>
- <render-kit>
- <renderer>
- <component-family>javax.faces.Input</component-family>
- <renderer-type>org.apache.myfaces.groovyloader.test.Test</renderer-type>
- <renderer-class>org.apache.myfaces.groovyloader.test.TestRenderer</renderer-class>
- </renderer>
- </render-kit>
-
-</faces-config>
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/Blog.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/Blog.groovy
deleted file mode 100644
index 90b34a3..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/Blog.groovy
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * 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.groovyloader.blog
-
-import org.apache.myfaces.groovyloader.blog.JSFUtil;
-import org.apache.myfaces.groovyloader.blog.BlogService
-import java.util.logging.Logger;
-
-
-
-public class Blog {
- //bug application and session scoped beans are not refreshed structurally yet
-
- Logger log = Logger.getLogger("Blog")
-
- String title = "Hello to the myfaces dynamic blogging Groovy JSF 1.2 Blog "
- String title1 = """\
- You can alter the code for this small blogging application on the fly,
- you even can add new classes on the fly and Grooy will pick it up
- (you can use every groovy feature as untyped references or multiline comments)
- """
-
- String firstName = ""
- String lastName = ""
- String topic = ""
-
- String content = ""
-
-
- public String addEntry() {
- log.info("adding entry");
-
- def service = JSFUtil.resolveVariable("blogService")
-
- if (service == null) {
- log.severe("service not found")
- } else {
- log.info("service found")
-
- }
-
- BlogEntry entry = new BlogEntry()
- //we now map it in the verbose way, the lean way would be to do direct introspection attribute mapping
-
- entry.firstName = firstName
- entry.lastName = lastName
- entry.topic = topic
- entry.content = content
-
-
- service.addEntry2(entry)
-
- //we stay on the same page
- return "blog";
- }
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogEntry.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogEntry.groovy
deleted file mode 100644
index fa3193c..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogEntry.groovy
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * 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.groovyloader.blog;
-
-/**
- * The entry class
- */
-public class BlogEntry {
-
- String firstName = ""
- String lastName = ""
- String topic = ""
- String content = ""
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogService.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogService.groovy
deleted file mode 100644
index 68cf8d6..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogService.groovy
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * 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.groovyloader.blog
-
-import org.apache.myfaces.groovyloader.blog.BlogEntry;
-import java.util.List
-import java.util.ArrayList
-import java.util.logging.Logger
-
-
-
-public class BlogService {
- def blogEntries = new ArrayList()
-
- public void addEntry2(BlogEntry entry) {
- Logger log = Logger.getLogger(BlogService.class.getName())
- log.info("(BlogService.addEntry2) from groovy blogservice: Adding entry")
- blogEntries << entry
- log.info("(BlogService.addEntry2) from groovy blogservice: Adding entry"+blogEntries.size())
-
- }
-
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/JSFUtil.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/JSFUtil.groovy
deleted file mode 100644
index a6990a2..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/JSFUtil.groovy
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * 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.groovyloader.blog;
-
-import javax.faces.context.FacesContext
-import java.util.logging.Logger;
-
-/**
- * Utils class to keep the code clean and mean
- */
-public class JSFUtil {
-
- public static Object resolveVariable(String beanName) {
- Logger log = Logger.getLogger(JSFUtil.class.getName())
- log.info("ElResolver Instance:" + FacesContext.getCurrentInstance().getELContext().getELResolver().toString())
- return FacesContext.getCurrentInstance().getELContext().getELResolver().getValue(FacesContext.getCurrentInstance().getELContext(), null, beanName)
- }
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestActionListener.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestActionListener.groovy
deleted file mode 100644
index 1bba701..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestActionListener.groovy
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * 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.groovyloader.test
-
-import javax.faces.event.ActionListener
-import javax.faces.event.ActionEvent
-
-/**
- * @author Werner Punz
- */
-class TestActionListener implements ActionListener {
-
- public void processAction(ActionEvent event) {
- println "processing action from actionlistener"
- }
-
-}
-
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestBean.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestBean.groovy
deleted file mode 100644
index a33015d..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestBean.groovy
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * 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.groovyloader.test
-/**
- * @author Werner Punz
- */
-class TestBean {
- String helloworld = "Hello from the bean"
-
- //note you can add new atrtributes
- //no setter or getter is needed
- //and with a single request you will get the
- //attribute be used in your page
- //give it a try
-
- //String newAttribute = "This is a new attribute"
- //uncomment this and add a control to the page displaying it
-
- public String getHelloworld() {
- return helloworld
- }
-
-
- public String doit() {
- System.out.println("doit called")
-
- return "success"
-
- }
-
-
- public String getXxx() {
- " Simple text you can change me on the fly"
- }
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestComponent.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestComponent.groovy
deleted file mode 100644
index e4c4e3e..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestComponent.groovy
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * 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.groovyloader.test
-
-import javax.faces.component.UIInput
-import javax.faces.context.FacesContext
-import javax.faces.el.ValueBinding
-
-/**
- * @author Werner Punz
- */
-public class TestComponent extends UIInput {
-
- private static final String DEFAULT_RENDERER_TYPE2 = "org.apache.myfaces.groovyloader.test.Test";
-
- String _testattr = "component text";
- def _testattr_changed = true;
- def testattr_changed = true;
-
-
- public TestComponent() {
- super()
- setRendererType(DEFAULT_RENDERER_TYPE2)
- }
-
- public Object saveState(FacesContext context) {
- def values = []
- values[0] = super.saveState(context)
- values[1] = testattr
- return values.toArray()
- }
-
- public void restoreState(FacesContext context, Object state) {
- super.restoreState(context, state[0]);
- _testattr = state[1]
- }
-
- public void setTestattr(String attr) {
- _testattr = attr
- }
-
- public String getTestattr() {
- if (_testattr != null)
- return _testattr
-
- ValueBinding vb = getValueBinding("testattr")
- String v = vb != null ? (String) vb.getValue(getFacesContext()) : null
- return v != null ? v : ""
-
- }
-
-
- public String getFamily() {
- return "javax.faces.Input";
- }
-
-}
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestConverter.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestConverter.groovy
deleted file mode 100644
index 9791cda..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestConverter.groovy
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * 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.groovyloader.test
-
-import javax.faces.convert.Converter
-import javax.faces.context.FacesContext
-import javax.faces.component.UIComponent
-
-/**
- * @author Werner Punz
- */
-class TestConverter implements Converter {
-
- public Object getAsObject(FacesContext facesContext, UIComponent uiComponent, String s) {
- print "converting $s"
- return s;
- }
-
- public String getAsString(FacesContext facesContext, UIComponent uiComponent, Object o) {
- print "converting back aa"
- return ((String) o);
- }
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestNavigationHandler.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestNavigationHandler.groovy
deleted file mode 100644
index 0c2286d..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestNavigationHandler.groovy
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * 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.groovyloader.test
-
-import javax.faces.application.NavigationHandler
-import javax.faces.context.FacesContext
-
-/**
- * @author Werner Punz
- */
-class TestNavigationHandler extends NavigationHandler {
- NavigationHandler _delegate = null;
-
- public TestNavigationHandler() {
- super();
-
- }
-
-
- public TestNavigationHandler(NavigationHandler delegate) {
- super();
- _delegate = delegate
-
- }
-
-
-
- public void handleNavigation(FacesContext facesContext, String s, String s1) {
- // if(delegate != null)
- System.out.println("handle navigation")
-
- _delegate.handleNavigation(facesContext, s, s1)
- }
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestPhaseListener.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestPhaseListener.groovy
deleted file mode 100644
index 51131b3..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestPhaseListener.groovy
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * 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.groovyloader.test
-
-import javax.faces.event.PhaseListener
-import javax.faces.event.PhaseEvent
-import javax.faces.event.PhaseId
-
-/**
- * @author Werner Punz
- */
-class TestPhaseListener implements PhaseListener {
-
- public void afterPhase(PhaseEvent event) {
- if (event.getPhaseId() == PhaseId.RENDER_RESPONSE)
- println "restoring a view bbb bbb" + event.getPhaseId()
-
- }
-
- public void beforePhase(PhaseEvent event) {
- }
-
- public PhaseId getPhaseId() {
- return PhaseId.ANY_PHASE;
- }
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestRenderer.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestRenderer.groovy
deleted file mode 100644
index 5bac16d..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestRenderer.groovy
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * 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.groovyloader.test
-
-import org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlTextRendererBase
-import javax.faces.context.FacesContext
-import javax.faces.component.UIComponent
-import javax.faces.context.ResponseWriter;
-
-/**
- * @author Werner Punz
- */
-public class TestRenderer extends HtmlTextRendererBase {
-
- public void encodeBegin(FacesContext facesContext, UIComponent uiComponent) {
-
- facesContext.responseWriter.write """
- <h1>Hello from a groovy JSF components renderer </h1>
-
- <p> you can find my sources under WEB-INF/groovy/... </p>
-
- <p> you can edit the artefacts is running</p>
- <p> I will pick up the changes after you have hit the reload button </p>
-
- One note however, <br /> you cannot change components with a simple page
- refresh,<br /> this works only for renderers
- <p> you have to rebuild the component tree</p>
-
- <p> Once you are done, <br /> you can move your sources over and have <br /> them compiled into
- java classes to gain more speed </p>
-
- <p> You can prototype every jsf artefact that way,<br /> managed beans, renderers, validators,
- phase listeners </p>
-
- Test for attribute: $uiComponent.testattr
- """
-
- //hello(facesContext.responseWriter)
-
- super.encodeBegin(facesContext, uiComponent); //To change body of overridden methods use File | Settings | File Templates.
- }
-
-
- public void encodeEnd(FacesContext facesContext, UIComponent uiComponent) {
- print super.toString()
- super.encodeEnd(facesContext, uiComponent); //To change body of overridden methods use File | Settings | File Templates.
- facesContext.getResponseWriter().write """\
- encode end here
- """
-
- }
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestValidator.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestValidator.groovy
deleted file mode 100644
index 56ce96b..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestValidator.groovy
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * 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.groovyloader.test
-
-import javax.faces.validator.Validator
-import javax.faces.context.FacesContext
-import javax.faces.component.UIComponent
-import javax.faces.FacesException
-import javax.faces.application.FacesMessage
-import javax.faces.validator.ValidatorException
-
-/**
- * @author Werner Punz
- */
-class TestValidator implements Validator {
-
- public void validate(FacesContext facesContext, UIComponent uiComponent, Object o) {
- if(!((String)o).equals("hello world")) {
- print ("error found")
- throw new ValidatorException (new FacesMessage("Validation failed for field please input hello world"))
- }
- println "validating testvalidation "
- }
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestViewHandler.groovy b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestViewHandler.groovy
deleted file mode 100644
index 40b1039..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestViewHandler.groovy
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * 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.groovyloader.test
-
-import javax.faces.application.ViewHandler
-import javax.faces.context.FacesContext
-import javax.faces.component.UIViewRoot
-
-/**
- * @author Werner Punz
- */
-class TestViewHandler extends ViewHandler {
- //setters and getters are added implicitely
- ViewHandler delegate;
-
- /**
- * needed for reloading
- */
- public TestViewHandler() {
- super();
- }
-
- public TestViewHandler(ViewHandler delegate) {
- super();
- this.delegate = delegate;
- }
-
-
- public Locale calculateLocale(FacesContext facesContext) {
- return delegate.calculateLocale(facesContext);
- }
-
- public String calculateRenderKitId(FacesContext facesContext) {
- return delegate.calculateRenderKitId(facesContext);
- }
-
- public UIViewRoot createView(FacesContext facesContext, String s) {
- return delegate.createView(facesContext, s);
- }
-
- public String getActionURL(FacesContext facesContext, String s) {
- return delegate.getActionURL(facesContext, s);
- }
-
- public String getResourceURL(FacesContext facesContext, String s) {
- return delegate.getResourceURL(facesContext, s);
- }
-
- public void renderView(FacesContext facesContext, UIViewRoot uiViewRoot) {
- println "hello world from our view handler2 RENDERVIEW"
-
- delegate.renderView(facesContext, uiViewRoot);
- }
-
- public UIViewRoot restoreView(FacesContext facesContext, String s) {
-
- return delegate.restoreView(facesContext, s);
- }
-
- public void writeState(FacesContext facesContext) {
- delegate.writeState(facesContext);
- }
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java
deleted file mode 100644
index dd19e88..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * 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.javaloader.blog;
-
-import org.apache.myfaces.javaloader.blog.DependencyTestAnnotation;
-
-import static org.apache.myfaces.javaloader.blog.JSFUtil.*;
-import java.util.logging.Logger;
-
-/**
- * @author werpu2
- * @date: 01.09.2009
- */
-@DependencyTestAnnotation
-
-public class Blog {
-
- String title = "Hello to the MyFaces dynamic Java blogging example";
- String title1 = "You can alter the code for this small blogging application on the fly, " +
- "you even can add new classes on the fly and Java will pick it up";
-
- String title3 = "bla";
- String title4 = "bla2";
-
- String title5 = "test from title5";
-
- String firstName = "";
- String lastName = "";
- String topic = "";
-
- String content = "";
-
- private Logger getLog() {
- return Logger.getLogger(this.getClass().getName());
- }
-
- public String addEntry2() {
- getLog().info("adding entry");
-
- BlogService service = (BlogService) JSFUtil.resolveVariable("javaBlogService");
-
- if (service == null) {
- getLog().severe("service not found");
- } else {
- getLog().info("service found");
- }
-
- BlogEntry entry = new BlogEntry();
- //we now map it in the verbose way, the lean way would be to do direct introspection attribute mapping
-
- entry.setFirstName(firstName);
- entry.setLastName(lastName);
- entry.setTopic(topic);
- entry.setContent(content);
-
- if (service != null) {
- /*convenience method to call a method on an object dynamically
- * executeMethod and cast are static imports which encapsule the
- * ugly stuff the java introspection provides and reduce
- * the loc down to sane levels
- *
- * note the behavior in case of calling errors
- * is changed from the default managed behavior
- * to an unmanaged behavior. This is mostly
- * the same behavior you get from scripting engines!
- *
- */
- service.addEntry2(entry);
- //executeMethod(service, "addEntry", entry);
- }
-
- //we stay on the same page
- return null;
- }
-
- public String getTitle() {
- return title;
- }
-
- public void setTitle(String title) {
- this.title = title;
- }
-
- public String getTitle1() {
- return title1;
- }
-
- public void setTitle1(String title1) {
- this.title1 = title1;
- }
-
- public String getFirstName() {
- return firstName;
- }
-
- public void setFirstName(String firstName) {
- this.firstName = firstName;
- }
-
- public String getLastName() {
- return lastName;
- }
-
- public void setLastName(String lastName) {
- this.lastName = lastName;
- }
-
- public String getTopic() {
- return topic;
- }
-
- public void setTopic(String topic) {
- this.topic = topic;
- }
-
- public String getContent() {
- return content;
- }
-
- public void setContent(String content) {
- this.content = content;
- }
-
- public String getTitle3() {
- return "title 3 from java blog";
- }
-
- public void setTitle3(String title3) {
- this.title3 = title3;
- }
-
- public String getTitle4() {
- return title4;
- }
-
- public void setTitle4(String title4) {
- this.title4 = title4;
- }
-
- public String getTitle5() {
- return title5;
- }
-
- public void setTitle5(String title5) {
-
- }
-
-}
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java
deleted file mode 100644
index 4519aa8..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * 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.javaloader.blog;
-
-/**
- * @author werpu2
- * @date: 01.09.2009
- */
-public class BlogEntry {
-
- String firstName = "";
- String lastName = "";
- String topic = "";
- String content = "";
-
- public String getFirstName() {
- return firstName;
- }
-
- public void setFirstName(String firstName) {
- this.firstName = firstName;
- }
-
- public String getLastName() {
- return lastName;
- }
-
- public void setLastName(String lastName) {
- this.lastName = lastName;
- }
-
- public String getTopic() {
- return topic;
- }
-
- public void setTopic(String topic) {
- this.topic = topic;
- }
-
- public String getContent() {
- return content;
- }
-
- public void setContent(String content) {
- this.content = content;
- }
-}
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java
deleted file mode 100644
index cbb68d4..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * 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.javaloader.blog;
-
-import java.util.List;
-import java.util.LinkedList;
-import java.util.Collections;
-
-/**
- * @author werpu2
- * @date: 01.09.2009
- */
-public class BlogService {
-
- /**
- * note we cannot cast on dynamically referenced
- * and recompiled objects which are shared between beans
- * because due to dynamic recompilation
- * <p/>
- * Object a->references b does not reference b of the same class
- * as object c->references b, we have to use introspection in this case
- * we can use our utils class to make it a tiny bit more comfortable
- * <p/>
- * Statically compiled types always stay the same however
- * the same goes for interfaces which are present as compiled code only
- */
- List<Object> blogEntries = Collections.synchronizedList(new LinkedList<Object>());
-
- @DependencyTestAnnotation
- public void addEntry2(BlogEntry entry) {
- if (entry != null) {
- blogEntries.add(entry);
- }
- }
-
- public List<Object> getBlogEntries() {
- return blogEntries;
- }
-
- public void setBlogEntries(List<Object> blogEntries) {
- this.blogEntries = blogEntries;
- }
-}
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/DependencyTestAnnotation.java b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/DependencyTestAnnotation.java
deleted file mode 100644
index 393bbdd..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/DependencyTestAnnotation.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * 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.javaloader.blog;
-
-import java.lang.annotation.*;
-
-@Retention(RetentionPolicy.RUNTIME)
-public @interface DependencyTestAnnotation {
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java
deleted file mode 100644
index 0a4635e..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * 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.javaloader.blog;
-
-import javax.faces.context.FacesContext;
-import java.util.logging.Logger;
-
-import static org.apache.myfaces.extensions.scripting.core.util.ReflectUtil.executeMethod;
-
-/**
- * @author werpu2
- * @date: 01.09.2009
- * <p/>
- * A helper for JSF and introspection related tasks
- */
-public class JSFUtil {
-
- public JSFUtil() {
- }
-
- /**
- * resolves a variable in the current facesContext
- *
- * @param beanName
- * @return
- */
- public static Object resolveVariable(String beanName) {
- Logger log = Logger.getLogger(JSFUtil.class.getName());
- Object facesContext = FacesContext.getCurrentInstance();
-
- Object elContext = executeMethod(facesContext, "getELContext");
- Object elResolver = executeMethod(elContext, "getELResolver");
-
- /*
- if you want to enable this then use
- org.apache.myfaces.extensions.scripting.java.JAR_PATHS
- pointing towards the lingering jars
- The compiler cannot pick up the implicit containers classpaths
- */
- //we use the introspection calls here to achieve our goal that way
- //we can shift the dependency resolution from compile time to runtime
- return executeMethod(elResolver, "getValue", elContext, null, beanName);
- // return FacesContext.getCurrentInstance().getELContext().getELResolver().getValue(FacesContext.getCurrentInstance().getELContext(), null, beanName);
-
- }
-
-}
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java
deleted file mode 100644
index bf82c7f..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * 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.javaloader.test;
-
-public class TestBean2 {
- String sayHello = "hello world ";
- String hello2 = "hello from added attribute hello2";
- String hello3 = "hello from added attribute hello3";
-
- public String getSayHello() {
- return "Hello from the dynamic bean TestBean2 - " + TestClass2.hello2 +" - "+ hello3;
- }
-
- public String getSayHello2() {
- return hello2;
- }
-
- public void setSayHello(String hello) {
- this.sayHello = hello;
- System.out.println("hello world");
- }
-
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java
deleted file mode 100644
index 512a7bb..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * 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.javaloader.test;
-
-public class TestClass2 {
- public static String hello2 = "hello world from testClass2 ";
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/web.xml b/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/web.xml
deleted file mode 100644
index 7b4e941..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/web.xml
+++ /dev/null
@@ -1,326 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
- * 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.
--->
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
- version="2.4">
-
- <description>MyProject web.xml</description>
-
- <!--optional: context-param>
- <description>Comma separated list of URIs of (additional) faces config files.
- (e.g. /WEB-INF/my-config.xml)
- See JSF 1.0 PRD2, 10.3.2
- Attention: You do not need to put /WEB-INF/faces-config.xml in here.
- </description>
- <param-name>javax.faces.CONFIG_FILES</param-name>
- <param-value>/WEB-INF/examples-config.xml</param-value>
- </context-param-->
-
- <!-- clean method working for myfaces 1.2.8+ -->
-
- <context-param>
- <description>
- Initializes the plugins for our groovy handlers
- </description>
- <param-name>org.apache.myfaces.FACES_INIT_PLUGINS</param-name>
- <param-value>org.apache.myfaces.extensions.scripting.servlet.StartupServletContextPluginChainLoader</param-value>
- </context-param>
-
- <!--
- <context-param>
- <description>Additional comma separated loader paths to allow direct editing on the sources directory instead
- of the deployment dir
- </description>
- <param-name>org.apache.myfaces.extensions.scripting.groovy.LOADER_PATHS</param-name>
- <param-value>
- /Users/werpu2/development/workspace/extension-scripting4/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/groovy
- </param-value>
- </context-param>
-
- <context-param>
- <description>Additional comma separated loader paths to allow direct editing on the sources directory instead
- of the deployment dir
- </description>
- <param-name>org.apache.myfaces.extensions.scripting.java.LOADER_PATHS</param-name>
- <param-value>
- /Users/werpu2/development/workspace/extension-scripting4/extscript-examples/myfaces12-example/src/main/webapp/WEB-INF/java
- </param-value>
- </context-param>
-
-
- <context-param>
- <description>resource paths for our custom JSF2 resource resolver</description>
- <param-name>org.apache.myfaces.extensions.scripting.resources.LOADER_PATHS</param-name>
- <param-value>
- /Users/werpu2/development/workspace/extension-scripting4/extscript-examples/myfaces12-example/src/main/webapp
- </param-value>
- </context-param>
-
- <context-param>
- <description>a redirecting Facelet resource resolver which allows to pick up templates 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>
- </context-param>
- -->
- <!--
- <context-param>
- <description>Additional comma separated loader paths to allow direct editing on the sources directory instead
- of the deployment dir
- </description>
- <param-name>org.apache.myfaces.extensions.scripting.groovy.LOADER_PATHS</param-name>
- <param-value>D:/dev/work/ideaprojects/threads/extscript/examples/myfaces12-example/src/main/webapp/WEB-INF/groovy</param-value>
- </context-param>
-
-
- <context-param>
- <description>Additional comma separated loader paths to allow direct editing on the sources directory instead
- of the deployment dir
- </description>
- <param-name>org.apache.myfaces.extensions.scripting.java.LOADER_PATHS</param-name>
- <param-value>D:/dev/work/ideaprojects/threads/extscript/examples/myfaces12-example/src/main/webapp/WEB-INF/java</param-value>
- </context-param>
- -->
-
- <context-param>
- <description>State saving method: "client" or "server" (= default)
- See JSF Specification 2.5.3
- </description>
- <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
- <param-value>server</param-value>
- </context-param>
-
- <context-param>
- <param-name>facelets.LIBRARIES</param-name>
- <param-value>/WEB-INF/facelets/groovy-taglib.xml</param-value>
- </context-param>
-
- <context-param>
- <description>Only applicable if state saving method is "server" (= default).
- Defines the amount (default = 20) of the latest views are stored in session.
- </description>
- <param-name>org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION</param-name>
- <param-value>20</param-value>
- </context-param>
- <context-param>
- <description>Only applicable if state saving method is "server" (= default).
- If true (default) the state will be serialized to a byte stream before it
- is written to the session.
- If false the state will not be serialized to a byte stream.
- </description>
- <param-name>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <description>Only applicable if state saving method is "server" (= default) and if
- org.apache.myfaces.SERIALIZE_STATE_IN_SESSION is true (= default)
- If true (default) the serialized state will be compressed before it
- is written to the session. If false the state will not be compressed.
- </description>
- <param-name>org.apache.myfaces.COMPRESS_STATE_IN_SESSION</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <description>This parameter tells MyFaces if javascript code should be allowed in the
- rendered HTML output.
- If javascript is allowed, command_link anchors will have javascript code
- that submits the corresponding form.
- If javascript is not allowed, the state saving info and nested parameters
- will be added as url parameters.
- Default: "true"
- </description>
- <param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name>
- <param-value>false</param-value>
- </context-param>
- <context-param>
- <description>If true, rendered HTML code will be formatted, so that it is "human readable".
- i.e. additional line separators and whitespace will be written, that do not
- influence the HTML code.
- Default: "true"
- </description>
- <param-name>org.apache.myfaces.PRETTY_HTML</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <description>If true, a javascript function will be rendered that is able to restore the
- former vertical scroll on every request. Convenient feature if you have pages
- with long lists and you do not want the browser page to always jump to the top
- if you trigger a link or button action that stays on the same page.
- Default: "false"
- </description>
- <param-name>org.apache.myfaces.AUTO_SCROLL</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>Used for encrypting view state. Only relevant for client side
- state saving. See MyFaces wiki/web site documentation for instructions
- on how to configure an application for diffenent encryption strengths.
- </description>
- <param-name>org.apache.myfaces.SECRET</param-name>
- <param-value>NzY1NDMyMTA=</param-value>
- </context-param>
-
- <context-param>
- <description>
- Validate managed beans, navigation rules and ensure that forms are not nested.
- </description>
- <param-name>org.apache.myfaces.VALIDATE</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>
- Treat readonly same as if disabled attribute was set for select elements.
- </description>
- <param-name>org.apache.myfaces.READONLY_AS_DISABLED_FOR_SELECTS</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>
- Use the defined class as the class which will be called when a resource is added to the
- ExtensionFilter handling. Using StreamingAddResource here helps with performance. If you want to add
- custom components and want to use the ExtensionFilter, you need to provide your custom implementation here.
- </description>
- <param-name>org.apache.myfaces.ADD_RESOURCE_CLASS</param-name>
- <param-value>org.apache.myfaces.renderkit.html.util.DefaultAddResource</param-value>
- </context-param>
-
- <context-param>
- <description>
- Virtual path in the URL which triggers loading of resources for the MyFaces extended components
- in the ExtensionFilter.
- </description>
- <param-name>org.apache.myfaces.RESOURCE_VIRTUAL_PATH</param-name>
- <param-value>/faces/myFacesExtensionResource</param-value>
- </context-param>
-
- <context-param>
- <description>
- Check if the extensions-filter has been properly configured.
- </description>
- <param-name>org.apache.myfaces.CHECK_EXTENSIONS_FILTER</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>
- Define partial state saving as true/false.
- </description>
- <param-name>javax.faces.PARTIAL_STATE_SAVING_METHOD</param-name>
- <param-value>false</param-value>
- </context-param>
-
- <!-- Use Documents Saved as *.xhtml -->
- <context-param>
- <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
- <param-value>.xhtml</param-value>
- </context-param>
-
- <!-- Special Debug Output for Development -->
- <context-param>
- <param-name>facelets.DEVELOPMENT</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <!-- Extensions Filter -->
- <filter>
- <filter-name>extensionsFilter</filter-name>
- <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
- <init-param>
- <description>Set the size limit for uploaded files.
- Format: 10 - 10 bytes
- 10k - 10 KB
- 10m - 10 MB
- 1g - 1 GB
- </description>
- <param-name>uploadMaxFileSize</param-name>
- <param-value>100m</param-value>
- </init-param>
- <init-param>
- <description>Set the threshold size - files
- below this limit are stored in memory, files above
- this limit are stored on disk.
-
- Format: 10 - 10 bytes
- 10k - 10 KB
- 10m - 10 MB
- 1g - 1 GB
- </description>
- <param-name>uploadThresholdSize</param-name>
- <param-value>100k</param-value>
- </init-param>
- </filter>
-
- <filter>
- <filter-name>scriptingFilter</filter-name>
- <filter-class>org.apache.myfaces.extensions.scripting.servlet.ScriptingServletFilter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>scriptingFilter</filter-name>
- <url-pattern>/*</url-pattern>
- <dispatcher>REQUEST</dispatcher>
- <dispatcher>FORWARD</dispatcher>
- <dispatcher>INCLUDE</dispatcher>
- <dispatcher>ERROR</dispatcher>
- </filter-mapping>
-
- <filter-mapping>
- <filter-name>extensionsFilter</filter-name>
- <url-pattern>*.jsf</url-pattern>
- </filter-mapping>
- <filter-mapping>
- <filter-name>extensionsFilter</filter-name>
- <url-pattern>/faces/*</url-pattern>
- </filter-mapping>
-
- <!-- Listener, to allow Jetty serving MyFaces apps -->
- <listener>
- <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
- </listener>
-
- <!-- Faces Servlet -->
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
- <!-- Faces Servlet Mapping -->
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.jsf</url-pattern>
- </servlet-mapping>
-
- <!-- Welcome files -->
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- <welcome-file>index.html</welcome-file>
- </welcome-file-list>
-
-</web-app>
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/blog.xhtml b/extscript-examples/myfaces12-example/src/main/webapp/blog.xhtml
deleted file mode 100644
index 3426879..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/blog.xhtml
+++ /dev/null
@@ -1,69 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--
- * 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.
--->
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"
- xmlns:t="http://myfaces.apache.org/tomahawk" xmlns:grv="http://myfaces.apache.org/groovy">
-<head>
- <title>Hello World</title>
-</head>
-<body>
-<ui:composition template="/template.xhtml">
-
- <ui:define name="body">
- <h:messages />
- <h:form id="form">
- <h:panelGrid id="grid" columns="1">
- <h:outputText id="title1" styleClass="title" value="#{blogView.title}"/>
- <h:outputText id="title11" styleClass="title1" value="#{blogView.title1}"/>
- <!--
- entry.firstName = firstName
- entry.lastName = lastName
- entry.topic = topic
- entry.content = content
- -->
- <h:outputText value="First Name"/>
- <h:inputText value="#{blogView.firstName}"/>
- <h:outputText value="Last Name"/>
- <h:inputText value="#{blogView.lastName}"/>
- <h:outputText value="Topic of entry"/>
- <h:inputText value="#{blogView.topic}"/>
- <h:outputText value="Content"/>
- <h:inputText value="#{blogView.content}"/>
-
-
- <h:commandLink action="#{blogView.addEntry}" value="Add Blog">
- <f:ajax execute="@this" render="content"/>
- </h:commandLink>
- </h:panelGrid>
- <h:panelGrid columns="1">
- <h:outputText value="Blog Entries"/>
- <ui:repeat value="#{blogService.blogEntries}" var="item">
- <h:outputText value="#{item.topic}"/>
- <h:outputText value="#{item.content}"/>
- <br/>
- </ui:repeat>
- </h:panelGrid>
-
- </h:form>
- </ui:define>
-</ui:composition>
-</body>
-</html>
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/helloWorld.xhtml b/extscript-examples/myfaces12-example/src/main/webapp/helloWorld.xhtml
deleted file mode 100644
index fc6e603..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/helloWorld.xhtml
+++ /dev/null
@@ -1,67 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--
- * 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.
--->
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"
- xmlns:grv="http://myfaces.apache.org/groovy">
-<head>
- <title>Hello World</title>
-</head>
-<body>
-<ui:composition template="/template.xhtml">
-
- <ui:define name="body">
- <h:form id="form">
-
-
-
- <h:panelGroup styleClass="left">
- <h:panelGroup styleClass="stdBox">
- <h:messages />
- <h3>Validator Test 1</h3>
- <h:outputText id="output1" value="Please enter your name"/>
- <h:inputText id="input1" value="#{helloWorld.name}" required="true">
- <grv:groovyvalidator/>
- </h:inputText>
- <h:commandButton id="button1" value="press me" action="#{helloWorld.send}"/>
- </h:panelGroup>
- <h:panelGroup styleClass="stdBox">
- <h3>Groovy Component</h3>
- <grv:testcomponent/>
- <h:message id="message1" for="input1"/>
- </h:panelGroup>
- </h:panelGroup>
- <h:panelGroup styleClass="right">
- <h:panelGroup styleClass="stdBox">
- <h3>Bean Tests</h3>
- <h:outputFormat value="#{testbean.xxx}"/>
- <br/>
- <h:outputFormat value="#{javatestbean.sayHello}"/>
- </h:panelGroup>
- <h:panelGroup styleClass="stdBox">
- <h3>Action Test 1</h3>
- <h:commandButton value="Press me dynamic" action="#{testbean.doit}"/>
- </h:panelGroup>
- </h:panelGroup>
- </h:form>
- </ui:define>
-</ui:composition>
-</body>
-</html>
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/index.jsp b/extscript-examples/myfaces12-example/src/main/webapp/index.jsp
deleted file mode 100644
index 538ff3d..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/index.jsp
+++ /dev/null
@@ -1,23 +0,0 @@
-<!--
- * 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.
--->
-<%@ page session="false" %>
-<%
- response.sendRedirect("helloWorld.jsf");
-//(new org.apache.myfaces.blank.HelloWorldController()).getName();
-%>
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/javablog.xhtml b/extscript-examples/myfaces12-example/src/main/webapp/javablog.xhtml
deleted file mode 100644
index a7e2014..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/javablog.xhtml
+++ /dev/null
@@ -1,82 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--
- * 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.
--->
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"
- xmlns:t="http://myfaces.apache.org/tomahawk" xmlns:grv="http://myfaces.apache.org/groovy">
-<head>
- <title>Hello World</title>
-</head>
-<body>
-<ui:composition template="/template.xhtml">
-
- <ui:define name="body">
-
- <h1>
- <ui:insert name="title">Ext-Scripting Javablog Example</ui:insert>
- </h1>
-
- <h:form id="form">
-
- <div class="left" style="margin-top: 3px;">
- <h:panelGrid id="grid" columns="1" styleClass="stdBox">
- <h:outputText id="title1" styleClass="title" value="#{javaBlogView.title}"/>
- <h:outputText id="title11" styleClass="title1" value="#{javaBlogView.title1}"/>
-
- <hr/>
-
- <h:panelGrid columns="2" columnClasses="label, input">
- <h:outputText value="First Name"/>
- <h:inputText value="#{javaBlogView.firstName}"/>
- <h:outputText value="Last Name"/>
- <h:inputText value="#{javaBlogView.lastName}"/>
- <h:outputText value="Topic of entry"/>
- <h:inputText value="#{javaBlogView.topic}"/>
- </h:panelGrid>
- <h:panelGrid columns="2" columnClasses="label, input">
- <h:outputText styleClass="label" value="Content"/>
- <h:inputTextarea value="#{javaBlogView.content}"/>
- </h:panelGrid>
- <hr/>
- <h:commandButton styleClass="btn" action="#{javaBlogView.addEntry2}" value="Add Blog Entry"/>
- </h:panelGrid>
- </div>
-
- <h:panelGrid columns="1" styleClass="right">
- <ui:repeat value="#{javaBlogService.blogEntries}" var="item">
- <h:panelGrid columns="1" styleClass="messageBox">
- <h:panelGroup styleClass="topic">
- <h:outputLabel styleClass="label" value="Topic"/>
- <h:outputText value="#{item.topic}"/>
- </h:panelGroup>
- <h:panelGroup styleClass="content">
- <h:outputLabel styleClass="label" value="Content"/>
- <h:outputFormat escape="false" value="#{item.content}"/>
- </h:panelGroup>
- </h:panelGrid>
- <br/>
- </ui:repeat>
- </h:panelGrid>
-
- </h:form>
- </ui:define>
-</ui:composition>
-</body>
-</html>
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/page2.xhtml b/extscript-examples/myfaces12-example/src/main/webapp/page2.xhtml
deleted file mode 100644
index da80376..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/page2.xhtml
+++ /dev/null
@@ -1,46 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--
- * 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.
--->
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html">
-<head>
- <title>Hello World</title>
-</head>
-<body>
-
-<ui:composition template="/template.xhtml">
-
- <ui:define name="body">
- <h1>
- <h:outputText value="Hello #{helloWorld.name}. We hope you enjoy Apache MyFaces Extensions Scripting"/>
- </h1>
- <h:form id="form2">
- <h:panelGrid id="grid" columns="2" styleClass="stdBox">
-
- <h:commandLink id="link1" action="back">
- <h:outputText id="linkText" value="GO HOME"/>
- </h:commandLink>
-
- </h:panelGrid>
- </h:form>
- </ui:define>
-</ui:composition>
-</body>
-</html>
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/resources/img/gradient1.jpg b/extscript-examples/myfaces12-example/src/main/webapp/resources/img/gradient1.jpg
deleted file mode 100644
index 6987743..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/resources/img/gradient1.jpg
+++ /dev/null
Binary files differ
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/resources/img/gradient2.png b/extscript-examples/myfaces12-example/src/main/webapp/resources/img/gradient2.png
deleted file mode 100644
index d10bdcc..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/resources/img/gradient2.png
+++ /dev/null
Binary files differ
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/resources/img/license.txt b/extscript-examples/myfaces12-example/src/main/webapp/resources/img/license.txt
deleted file mode 100644
index 507e05e..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/resources/img/license.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-sig07-009_mac.jpg is from the nasa public domain image archive.
-
-http://www.nasaimages.org/luna/servlet/detail/nasaNAS~12~12~64153~168545:Multiwavelength-M81?qvq=q:galaxy+or+constellation+or+hubble+or+spitzer;lc:NVA2~35~35,NVA2~32~32,NVA2~31~31,NVA2~19~19,nasaNAS~16~16,nasaNAS~2~2,NSVS~3~3,nasaNAS~9~9,NVA2~4~4,NVA2~15~15,NVA2~24~24,NVA2~29~29,nasaNAS~12~12,nasaNAS~8~8,nasaNAS~7~7,NVA2~22~22,nasaNAS~10~10,NVA2~13~13,NVA2~18~18,NVA2~27~27,NVA2~9~9,NVA2~1~1,nasaNAS~6~6,NVA2~25~25,NVA2~20~20,nasaNAS~13~13,nasaNAS~22~22,NVA2~16~16,NVA2~8~8,nasaNAS~5~5,nasaNAS~4~4,NVA2~28~28,NVA2~14~14,nasaNAS~20~20,NVA2~17~17,NVA2~30~30,NVA2~21~21,NVA2~26~26,NVA2~23~23,NVA2~44~44,NVA2~42~42,NVA2~38~38,NVA2~45~45,NVA2~39~39,NVA2~43~43,NVA2~41~41,NVA2~37~37,NVA2~49~49,NVA2~53~53,NVA2~51~51,NVA2~56~56,NVA2~47~47,NVA2~54~54,NVA2~33~33,NVA2~36~36,NVA2~34~34,NVA2~57~57,NVA2~52~52,NVA2~48~48,NVA2~50~50,NVA2~46~46,NVA2~55~55&mi=0&trs=8854
-
-license
-http://www.nasa.gov/audience/formedia/features/MP_Photo_Guidelines.html
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/resources/img/sig07-009_mac.jpg b/extscript-examples/myfaces12-example/src/main/webapp/resources/img/sig07-009_mac.jpg
deleted file mode 100644
index 42f8ca6..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/resources/img/sig07-009_mac.jpg
+++ /dev/null
Binary files differ
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/resources/styles/main.css b/extscript-examples/myfaces12-example/src/main/webapp/resources/styles/main.css
deleted file mode 100644
index 85c5f10..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/resources/styles/main.css
+++ /dev/null
@@ -1,236 +0,0 @@
-body {
- background-color: black;
-}
-
-div.centerDiv {
- margin-left: auto;
- margin-right: auto;
- width: 900px;
-}
-
-div.centerDiv form {
- position: relative;
-}
-
-h1 {
- color: #9999ff;
- text-align: center;
-}
-
-div#backGroundFloat {
- position: fixed;
- z-index: -1;
- background-color: black;
- left: 0px;
- top: 0px;
- width: 100%;
- height: 100%;
- background-image: url("../img/sig07-009_mac.jpg");
- background-repeat: no-repeat;
- overflow: hidden;
-}
-
-#hello {
- background-color: yellow;
-}
-
-.stdBox, .messageBox {
- display: block;
- width: 400px;
- border: 1px solid white;
- -moz-border-radius: 10px;
- -webkit-border-radius: 10px;
- padding: 5px;
- border-radius: 8px;
- background-repeat: repeat-x;
- margin-bottom: 5px;
- min-height: 120px;
-
-}
-
-.stdBox {
- background-color: white;
- background-image: url("../img/gradient1.jpg");
-}
-
-.messageBox {
- background-image: url("../img/gradient2.png");
-}
-
-
-/*==================================================
- Basic CSS information for our
- taint history component
- we do not use the compound
- css for error and history
- for readability reasons
- although we have load
- of duplication here
-====================================================*/
-
-div.historyBox {
- width: 820px;
- heigh: 200px;
-
- display: block;
- overflow: auto;
- border: 1px solid white;
- color: #dedddd;
- opacity: 0.92;
-
- -moz-border-radius: 10px;
- -webkit-border-radius: 10px;
- border-radius: 5px;
-
- padding: 5px;
- margin-left: 10px;
-
- background-image: url("../img/gradient2.png");
- background-repeat: repeat-x;
-}
-
-div.historyBox .line {
- display: table;
- width: 780px;
-
- border: 1px dashed black;
- background-color: #ccccff;
- color: black;
- padding: 5px;
- margin-top: 10px;
- margin-left: auto;
- margin-right: auto;
- -moz-border-radius: 5px;
- -webkit-border-radius: 5px;
-
- border-radius: 5px;
-}
-
-div.historyBox .line .timestamp {
- width: 120px;
- float: left;
- color: red;
-}
-
-div.historyBox .line .changedFile {
- width: 650px;
- overflow: hidden;
- display: block;
- float: left;
-}
-
-/*==================================================
- Basic CSS information for our compiler
- output component
-====================================================*/
-
-div.errorsLabel {
- font-size: large;
- padding-top: 5px;
- padding-bottom: 10px;
- padding-left: 5px;
-}
-
-div.warningsLabel {
- font-size: large;
- padding-top: 5px;
- padding-bottom: 10px;
- padding-left: 5px;
- width: 100%;
- margin-top: 10px;
- border-top: 1px solid black;
-}
-
-div.errorBox {
- width: 820px;
- heigh: 200px;
-
- display: block;
- overflow: auto;
- border: 1px solid white;
- color: #dedddd;
- opacity: 0.92;
-
- -moz-border-radius: 10px;
- -webkit-border-radius: 10px;
- border-radius: 5px;
-
- padding: 5px;
- margin-left: 10px;
-
- background-image: url("../resources/img/gradient2.png");
- background-repeat: repeat-x;
-}
-
-div.errorBox .line {
- display: table;
- width: 780px;
-
- border: 1px dashed black;
- background-color: #ccccff;
- color: black;
- padding: 5px;
- margin-top: 10px;
- margin-left: auto;
- margin-right: auto;
- -moz-border-radius: 5px;
- -webkit-border-radius: 5px;
-
- border-radius: 5px;
-}
-
-div.errorBox .line .lineNo {
- width: 40px;
- float: left;
- color: red;
-}
-
-div.errorBox .line .lineNo {
- width: 30px;
- float: left;
- padding-left: 5px;
- font-weight: bold;
- font-size: large;
-}
-
-div.errorBox .line .message {
- width: 738px;
- display: block;
- float: left;
-}
-
-.left {
- position: absolute;
- left: 10px;
- top: 20px;
-}
-
-.right {
- position: absolute;
- left: 430px;
- top: 20px;
-}
-
-.label {
- font-weight: bold;
- color: black;
- width: 150px;
- padding-right: 5px;
-}
-
-.input input, .input textArea {
- width: 200px;
-}
-
-input, textArea {
- border: 1px solid black;
-}
-
-input:focus, textArea:focus {
- background-color: yellow;
-}
-
-input.btn {
- width: 100px;
- margin-left: 263px;
-}
\ No newline at end of file
diff --git a/extscript-examples/myfaces12-example/src/main/webapp/template.xhtml b/extscript-examples/myfaces12-example/src/main/webapp/template.xhtml
deleted file mode 100644
index dcd66a4..0000000
--- a/extscript-examples/myfaces12-example/src/main/webapp/template.xhtml
+++ /dev/null
@@ -1,54 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--
- * 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.
--->
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:exs="http://myfaces.apache.org/ext-scripting"
- xmlns:h="http://java.sun.com/jsf/html">
-<head>
-
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
- <title>Myfaces Example Facelets</title>
-
- <link type="text/css" rel="stylesheet" href="./resources/styles/main.css"/>
-
-
-</head>
-
-<body>
-<div id="backGroundFloat">
-
-</div>
-<div class="centerDiv">
- <h:panelGroup>
- <h3>
- <h:outputFormat value="Compiler Output" escape="false"/>
- </h3>
- <exs:compilerOutput errorsLabel="Errors:" warningsLabel="Warnings:" scriptingLanguage=""/>
- </h:panelGroup>
-
- <p>
- <ui:insert name="body">Hello World Example!</ui:insert>
- </p>
-</div>
-
-</body>
-
-</html>
diff --git a/extscript-examples/spring-example/pom.xml b/extscript-examples/spring-example/pom.xml
deleted file mode 100644
index 0e37193..0000000
--- a/extscript-examples/spring-example/pom.xml
+++ /dev/null
@@ -1,101 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project>
- <parent>
- <artifactId>extscript-examples</artifactId>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <version>1.0.2-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <artifactId>spring-example</artifactId>
- <packaging>war</packaging>
- <name>A custom project using myfaces and spring</name>
- <version>1.0.2-SNAPSHOT</version>
- <url>http://www.apache.org</url>
-
- <properties>
- <spring.version>3.0.2.RELEASE</spring.version>
- </properties>
-
- <scm>
- <connection>scm:svn:http://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk/extscript-examples/spring-example</connection>
- <developerConnection>scm:svn:https://svn.apache.org/repos/asf/myfaces/extensions/scripting/trunk/extscript-examples/spring-example</developerConnection>
- <url>http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/extscript-examples/spring-example</url>
- </scm>
-
- <dependencies>
- <dependency>
- <groupId>org.codehaus.groovy</groupId>
- <artifactId>groovy-all</artifactId>
- <version>${groovy.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.myfaces.extensions.scripting</groupId>
- <artifactId>extscript-myfaces20-bundle</artifactId>
- <version>1.0.2-SNAPSHOT</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-api</artifactId>
- <version>${myfaces2.version}</version>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-impl</artifactId>
- <version>${myfaces2.version}</version>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-context</artifactId>
- <version>${spring.version}</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-core</artifactId>
- <version>${spring.version}</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-beans</artifactId>
- <version>${spring.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-web</artifactId>
- <version>${spring.version}</version>
- </dependency>
- <dependency>
- <groupId>cglib</groupId>
- <artifactId>cglib-nodep</artifactId>
- <version>2.2</version>
- </dependency>
- <dependency>
- <groupId>antlr</groupId>
- <artifactId>antlr</artifactId>
- <version>2.7.7</version>
- </dependency>
- <dependency>
- <groupId>org.antlr</groupId>
- <artifactId>antlr</artifactId>
- <version>3.0.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.aspectj</groupId>
- <artifactId>aspectjrt</artifactId>
- <version>1.6.8</version>
- </dependency>
- <dependency>
- <groupId>org.aspectj</groupId>
- <artifactId>aspectjweaver</artifactId>
- <version>1.6.8</version>
- </dependency>
- </dependencies>
-</project>
diff --git a/extscript-examples/spring-example/src/main/java/org/apache/myfaces/springTest/HelloWorldBacking.java b/extscript-examples/spring-example/src/main/java/org/apache/myfaces/springTest/HelloWorldBacking.java
deleted file mode 100644
index a41594b..0000000
--- a/extscript-examples/spring-example/src/main/java/org/apache/myfaces/springTest/HelloWorldBacking.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * 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.springTest;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Lazy;
-import org.springframework.context.annotation.Scope;
-import org.springframework.stereotype.Component;
-
-/**
- * A typical simple backing bean, that is backed to <code>helloworld.jsp</code>
- *
- * @author <a href="mailto:matzew@apache.org">Matthias We�endorf</a>
- */
-@Component("helloWorldBacking")
-@Scope("session")
-@Lazy
-public class HelloWorldBacking {
-
- @Autowired
- SpringBean springBean;
-
-
- //properties
- private String name;
-
- /**
- * default empty constructor
- */
- public HelloWorldBacking() {
- }
-
- //-------------------getter & setter
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public SpringBean getSpringBean() {
- return springBean;
- }
-
- public void setSpringBean(SpringBean springBean) {
- this.springBean = springBean;
- }
-
- /**
- * Method that is backed to a submit button of a form.
- */
- public String send() {
- //do real logic
- this.name = springBean.getValue();
- return ("success");
- }
-}
\ No newline at end of file
diff --git a/extscript-examples/spring-example/src/main/java/org/apache/myfaces/springTest/SpringBean.java b/extscript-examples/spring-example/src/main/java/org/apache/myfaces/springTest/SpringBean.java
deleted file mode 100644
index 5bf3554..0000000
--- a/extscript-examples/spring-example/src/main/java/org/apache/myfaces/springTest/SpringBean.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * 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.springTest;
-
-import org.springframework.context.annotation.Lazy;
-import org.springframework.context.annotation.Scope;
-import org.springframework.stereotype.Component;
-
-@Component("springBean")
-@Scope("request")
-@Lazy
-public class SpringBean {
- private String value = "hello world from the spring bean";
-
- public String getValue() {
- return value;
- }
-
- public void setValue(String value) {
- this.value = value;
- }
-}
diff --git a/extscript-examples/spring-example/src/main/webapp/WEB-INF/applicationContext.xml b/extscript-examples/spring-example/src/main/webapp/WEB-INF/applicationContext.xml
deleted file mode 100644
index bfd7054..0000000
--- a/extscript-examples/spring-example/src/main/webapp/WEB-INF/applicationContext.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:context="http://www.springframework.org/schema/context"
- xmlns:tx="http://www.springframework.org/schema/tx"
- xmlns:p="http://www.springframework.org/schema/p"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context-3.0.xsd">
-
- <context:component-scan base-package="org.apache.myfaces.springTest" scoped-proxy="targetClass"/>
- <bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>
-
-
-
-</beans>
\ No newline at end of file
diff --git a/extscript-examples/spring-example/src/main/webapp/WEB-INF/faces-config.xml b/extscript-examples/spring-example/src/main/webapp/WEB-INF/faces-config.xml
deleted file mode 100644
index 0ca2727..0000000
--- a/extscript-examples/spring-example/src/main/webapp/WEB-INF/faces-config.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-<?xml version="1.0"?>
-<!--
- * 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.
--->
-<faces-config 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/web-facesconfig_2_0.xsd"
- version="2.0">
-
-
-
- <!-- managed beans of the simple hello world app -->
- <!--
- <managed-bean>
- <managed-bean-name>helloWorldBacking</managed-bean-name>
- <managed-bean-class>
- org.apache.myfaces.springTest.HelloWorldBacking
- </managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- </managed-bean>
- -->
- <!--
-
- <managed-bean>
- <managed-bean-name>groovyBean</managed-bean-name>
- <managed-bean-class>org.apache.myfaces.groovy.GroovyBean</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- <managed-property>
- <property-name>secondBean</property-name>
- <value>#{springBean}</value>
- </managed-property>
- </managed-bean>
- -->
-
- <!-- navigation rules for helloWorld.jsp -->
- <navigation-rule>
- <from-view-id>/helloWorld.xhtml</from-view-id>
- <navigation-case>
- <from-outcome>success</from-outcome>
- <to-view-id>/page2.xhtml</to-view-id>
- </navigation-case>
- </navigation-rule>
-
- <!-- navigation rules for page2.jsp -->
- <navigation-rule>
- <from-view-id>/page2.xhtml</from-view-id>
- <navigation-case>
- <from-outcome>back</from-outcome>
- <to-view-id>/helloWorld.xhtml</to-view-id>
- </navigation-case>
- </navigation-rule>
-
- <application>
- <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>
- </application>
-</faces-config>
\ No newline at end of file
diff --git a/extscript-examples/spring-example/src/main/webapp/WEB-INF/groovy-taglib.xml b/extscript-examples/spring-example/src/main/webapp/WEB-INF/groovy-taglib.xml
deleted file mode 100644
index d345e6f..0000000
--- a/extscript-examples/spring-example/src/main/webapp/WEB-INF/groovy-taglib.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE facelet-taglib PUBLIC "-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN" "facelet-taglib_1_0.dtd">
-<facelet-taglib>
- <!-- author: werner.punz@irian.at -->
-
- <namespace>http://myfaces.apache.org/groovy</namespace>
- <tag>
- <tag-name>groovyvalidator</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.groovyloader.test.TestValidator</validator-id>
- </validator>
- </tag>
- <tag>
- <tag-name>groovyconverter</tag-name>
- <converter>
- <converter-id>org.apache.myfaces.groovyloader.test.TestConverter</converter-id>
- </converter>
- </tag>
- <tag>
- <tag-name>testcomponent</tag-name>
- <component>
- <component-type>org.apache.myfaces.groovyloader.test.TestComponent</component-type>
- <renderer-type>org.apache.myfaces.groovyloader.test.Test</renderer-type>
- </component>
- </tag>
-</facelet-taglib>
diff --git a/extscript-examples/spring-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovy/GroovyBean.groovy b/extscript-examples/spring-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovy/GroovyBean.groovy
deleted file mode 100644
index 458a7d1..0000000
--- a/extscript-examples/spring-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovy/GroovyBean.groovy
+++ /dev/null
@@ -1,9 +0,0 @@
-package org.apache.myfaces.groovy
-
-import org.apache.myfaces.springTest.SpringBean
-import org.apache.myfaces.springTest.SpringBean;
-
-public class GroovyBean {
- String value = "Hello world from the groovy bean"
- SpringBean secondBean = null
-}
\ No newline at end of file
diff --git a/extscript-examples/spring-example/src/main/webapp/WEB-INF/tomahawk.taglib.xml b/extscript-examples/spring-example/src/main/webapp/WEB-INF/tomahawk.taglib.xml
deleted file mode 100644
index b9fc141..0000000
--- a/extscript-examples/spring-example/src/main/webapp/WEB-INF/tomahawk.taglib.xml
+++ /dev/null
@@ -1,458 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE facelet-taglib PUBLIC "-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN" "facelet-taglib_1_0.dtd">
-<facelet-taglib>
- <!-- author: thomas.jachmann@mindmatters.de -->
- <namespace>http://myfaces.apache.org/tomahawk</namespace>
- <tag>
- <tag-name>commandButton</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandButton</component-type>
- <renderer-type>org.apache.myfaces.Button</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>commandLink</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandLink</component-type>
- <renderer-type>org.apache.myfaces.Link</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>dataTable</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlDataTable</component-type>
- <renderer-type>org.apache.myfaces.Table</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputHidden</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputHidden</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputSecret</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputSecret</component-type>
- <renderer-type>org.apache.myfaces.Secret</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputText</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputText</component-type>
- <renderer-type>org.apache.myfaces.Text</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputTextHelp</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputTextHelp</component-type>
- <renderer-type>org.apache.myfaces.TextHelp</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputTextarea</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputTextarea</component-type>
- <renderer-type>org.apache.myfaces.Textarea</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>graphicImage</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlGraphicImage</component-type>
- <renderer-type>org.apache.myfaces.Image</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>message</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlMessage</component-type>
- <renderer-type>org.apache.myfaces.Message</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>messages</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlMessages</component-type>
- <renderer-type>org.apache.myfaces.Messages</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>outputLabel</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlOutputLabel</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>outputText</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlOutputText</component-type>
- <renderer-type>org.apache.myfaces.Text</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelGrid</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelGrid</component-type>
- <renderer-type>org.apache.myfaces.Grid</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelGroup</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelGroup</component-type>
- <renderer-type>org.apache.myfaces.Group</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneMenu</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectOneMenu</component-type>
- <renderer-type>org.apache.myfaces.Menu</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectManyMenu</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectManyMenu</component-type>
- <renderer-type>org.apache.myfaces.Menu</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneRadio</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectOneRadio</component-type>
- <renderer-type>org.apache.myfaces.Radio</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectBooleanCheckbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectBooleanCheckbox</component-type>
- <renderer-type>org.apache.myfaces.Checkbox</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectManyCheckbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectManyCheckbox</component-type>
- <renderer-type>org.apache.myfaces.Checkbox</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneListbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectOneListbox</component-type>
- <renderer-type>org.apache.myfaces.Listbox</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectManyListbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSelectManyListbox</component-type>
- <renderer-type>org.apache.myfaces.Listbox</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputCalendar</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputCalendar</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>jsValueChangeListener</tag-name>
- <component>
- <component-type>org.apache.myfaces.JsValueChangeListener</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>jsValueSet</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlJsValueSet</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>checkbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCheckbox</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>commandNavigation</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandNavigation</component-type>
- <renderer-type>org.apache.myfaces.Navigation</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>commandNavigation2</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandNavigationItem</component-type>
- <renderer-type>org.apache.myfaces.NavigationMenu</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>commandSortHeader</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCommandSortHeader</component-type>
- <renderer-type>org.apache.myfaces.SortHeader</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>dataList</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlDataList</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>dataScroller</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlDataScroller</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputDate</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputDate</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputFileUpload</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlInputFileUpload</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>inputHtml</tag-name>
- <component>
- <component-type>org.apache.myfaces.InputHtml</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>navigationMenuItem</tag-name>
- <component>
- <component-type>org.apache.myfaces.NavigationMenuItem</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>navigationMenuItems</tag-name>
- <component>
- <component-type>javax.faces.SelectItems</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>jscookMenu</tag-name>
- <component>
- <component-type>org.apache.myfaces.JSCookMenu</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelLayout</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelLayout</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelNavigation</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelNavigation</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelNavigation2</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelNavigationMenu</component-type>
- <renderer-type>org.apache.myfaces.NavigationMenu</renderer-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelTab</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelTab</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelTabbedPane</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelTabbedPane</component-type>
- </component>
- </tag>
- <!-- deactivated since there's no component! tag>
- <tag-name>tabChangeListener</tag-name>
- <component>
- <component-type></component-type>
- </component>
- </tag-->
- <tag>
- <tag-name>collapsiblePanel</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlCollapsiblePanel</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneCountry</tag-name>
- <component>
- <component-type>org.apache.myfaces.SelectOneCountry</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>selectOneLanguage</tag-name>
- <component>
- <component-type>org.apache.myfaces.SelectOneLanguage</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>stylesheet</tag-name>
- <component>
- <component-type>org.apache.myfaces.Stylesheet</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>div</tag-name>
- <component>
- <component-type>org.apache.myfaces.Div</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>htmlTag</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTag</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>radio</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlRadio</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>tree</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTree</component-type>
- <renderer-type>org.apache.myfaces.HtmlTree</renderer-type>
- </component>
- </tag>
- <!-- deactivated since there's no component! tag>
- <tag-name>treeSelectionListener</tag-name>
- <component>
- <component-type></component-type>
- </component>
- </tag-->
- <!-- deactivated since there's no component! tag>
- <tag-name>iconProvider</tag-name>
- <component>
- <component-type></component-type>
- </component>
- </tag-->
- <tag>
- <tag-name>treeColumn</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTreeColumn</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>treeCheckbox</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTreeCheckbox</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>tree2</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlTree2</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>panelStack</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPanelStack</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>popup</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlPopup</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>newspaperTable</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlNewspaperTable</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>aliasBean</tag-name>
- <component>
- <component-type>org.apache.myfaces.AliasBean</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>aliasBeansScope</tag-name>
- <component>
- <component-type>org.apache.myfaces.AliasBeansScope</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>buffer</tag-name>
- <component>
- <component-type>org.apache.myfaces.Buffer</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>saveState</tag-name>
- <component>
- <component-type>org.apache.myfaces.SaveState</component-type>
- </component>
- </tag>
- <!-- deactivated since there's no component! tag>
- <tag-name>updateActionListener</tag-name>
- <component>
- <component-type></component-type>
- </component>
- </tag-->
- <tag>
- <tag-name>validateCreditCard</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.validator.CreditCard</validator-id>
- </validator>
- </tag>
- <tag>
- <tag-name>validateEmail</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.validator.Email</validator-id>
- </validator>
- </tag>
- <tag>
- <tag-name>validateEqual</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.validator.Equal</validator-id>
- </validator>
- </tag>
- <tag>
- <tag-name>swapImage</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlSwapImage</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>columns</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlColumns</component-type>
- </component>
- </tag>
- <tag>
- <tag-name>column</tag-name>
- <component>
- <component-type>org.apache.myfaces.HtmlColumn</component-type>
- </component>
- </tag>
- <!-- additional validators (note: not in tld, so no code completion) -->
- <tag>
- <tag-name>validateRegExpr</tag-name>
- <validator>
- <validator-id>org.apache.myfaces.validator.RegExpr</validator-id>
- </validator>
- </tag>
-</facelet-taglib>
\ No newline at end of file
diff --git a/extscript-examples/spring-example/src/main/webapp/WEB-INF/web.xml b/extscript-examples/spring-example/src/main/webapp/WEB-INF/web.xml
deleted file mode 100644
index 77856f7..0000000
--- a/extscript-examples/spring-example/src/main/webapp/WEB-INF/web.xml
+++ /dev/null
@@ -1,266 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
- * 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.
--->
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
- version="2.4">
-
- <description>MyProject web.xml</description>
-
- <!--optional: context-param>
- <description>Comma separated list of URIs of (additional) faces config files.
- (e.g. /WEB-INF/my-config.xml)
- See JSF 1.0 PRD2, 10.3.2
- Attention: You do not need to put /WEB-INF/faces-config.xml in here.
- </description>
- <param-name>javax.faces.CONFIG_FILES</param-name>
- <param-value>/WEB-INF/faces-config.xml</param-value>
- </context-param-->
-
-
- <context-param>
- <param-name>contextConfigLocation</param-name>
- <param-value>/WEB-INF/applicationContext.xml</param-value>
- </context-param>
- <listener>
- <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
- </listener>
- <listener>
- <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
- </listener>
- <!-- clean method working for myfaces 1.2.8+ -->
-
- <context-param>
- <description>
- Initializes the plugins for our groovy handlers
- </description>
- <param-name>org.apache.myfaces.FACES_INIT_PLUGINS</param-name>
- <param-value>org.apache.myfaces.extensions.scripting.servlet.StartupServletContextPluginChainLoader</param-value>
- </context-param>
-
- <context-param>
- <description>Additional comma separated loader paths to allow direct editing on the sources directory instead
- of the deployment dir
- </description>
- <param-name>org.apache.myfaces.extensions.scripting.groovy.LOADER_PATHS</param-name>
- <param-value>/Users/werpu2/development/workspace/extension-scripting4/extscript-examples/spring-example/src/main/webapp/WEB-INF/groovy
- </param-value>
- </context-param>
-
- <context-param>
- <description>Additional comma separated loader paths to allow direct editing on the sources directory instead
- of the deployment dir
- </description>
- <param-name>org.apache.myfaces.extensions.scripting.java.LOADER_PATHS</param-name>
- <param-value>/Users/werpu2/development/workspace/extension-scripting4/extscript-examples/spring-example/src/main/java
- </param-value>
- </context-param>
-
- <context-param>
- <description>State saving method: "client" or "server" (= default)
- See JSF Specification 2.5.3
- </description>
- <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
- <param-value>server</param-value>
- </context-param>
-
- <context-param>
- <param-name>facelets.LIBRARIES</param-name>
- <param-value>/WEB-INF/tomahawk.taglib.xml;/WEB-INF/groovy-taglib.xml</param-value>
- </context-param>
-
-
- <context-param>
- <description>Only applicable if state saving method is "server" (= default).
- Defines the amount (default = 20) of the latest views are stored in session.
- </description>
- <param-name>org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION</param-name>
- <param-value>20</param-value>
- </context-param>
- <context-param>
- <description>Only applicable if state saving method is "server" (= default).
- If true (default) the state will be serialized to a byte stream before it
- is written to the session.
- If false the state will not be serialized to a byte stream.
- </description>
- <param-name>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <description>Only applicable if state saving method is "server" (= default) and if
- org.apache.myfaces.SERIALIZE_STATE_IN_SESSION is true (= default)
- If true (default) the serialized state will be compressed before it
- is written to the session. If false the state will not be compressed.
- </description>
- <param-name>org.apache.myfaces.COMPRESS_STATE_IN_SESSION</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <description>This parameter tells MyFaces if javascript code should be allowed in the
- rendered HTML output.
- If javascript is allowed, command_link anchors will have javascript code
- that submits the corresponding form.
- If javascript is not allowed, the state saving info and nested parameters
- will be added as url parameters.
- Default: "true"
- </description>
- <param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name>
- <param-value>false</param-value>
- </context-param>
- <context-param>
- <description>If true, rendered HTML code will be formatted, so that it is "human readable".
- i.e. additional line separators and whitespace will be written, that do not
- influence the HTML code.
- Default: "true"
- </description>
- <param-name>org.apache.myfaces.PRETTY_HTML</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <description>If true, a javascript function will be rendered that is able to restore the
- former vertical scroll on every request. Convenient feature if you have pages
- with long lists and you do not want the browser page to always jump to the top
- if you trigger a link or button action that stays on the same page.
- Default: "false"
- </description>
- <param-name>org.apache.myfaces.AUTO_SCROLL</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>Used for encrypting view state. Only relevant for client side
- state saving. See MyFaces wiki/web site documentation for instructions
- on how to configure an application for diffenent encryption strengths.
- </description>
- <param-name>org.apache.myfaces.SECRET</param-name>
- <param-value>NzY1NDMyMTA=</param-value>
- </context-param>
-
- <context-param>
- <description>
- Validate managed beans, navigation rules and ensure that forms are not nested.
- </description>
- <param-name>org.apache.myfaces.VALIDATE</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>
- Treat readonly same as if disabled attribute was set for select elements.
- </description>
- <param-name>org.apache.myfaces.READONLY_AS_DISABLED_FOR_SELECTS</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>
- Use the defined class as the class which will be called when a resource is added to the
- ExtensionFilter handling. Using StreamingAddResource here helps with performance. If you want to add
- custom components and want to use the ExtensionFilter, you need to provide your custom implementation here.
- </description>
- <param-name>org.apache.myfaces.ADD_RESOURCE_CLASS</param-name>
- <param-value>org.apache.myfaces.renderkit.html.util.DefaultAddResource</param-value>
- </context-param>
-
- <context-param>
- <description>
- Virtual path in the URL which triggers loading of resources for the MyFaces extended components
- in the ExtensionFilter.
- </description>
- <param-name>org.apache.myfaces.RESOURCE_VIRTUAL_PATH</param-name>
- <param-value>/faces/myFacesExtensionResource</param-value>
- </context-param>
-
- <context-param>
- <description>
- Check if the extensions-filter has been properly configured.
- </description>
- <param-name>org.apache.myfaces.CHECK_EXTENSIONS_FILTER</param-name>
- <param-value>true</param-value>
- </context-param>
-
- <context-param>
- <description>
- Define partial state saving as true/false.
- </description>
- <param-name>javax.faces.PARTIAL_STATE_SAVING_METHOD</param-name>
- <param-value>false</param-value>
- </context-param>
-
- <!-- Use Documents Saved as *.xhtml -->
- <context-param>
- <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
- <param-value>.xhtml</param-value>
- </context-param>
-
- <!-- Special Debug Output for Development -->
- <context-param>
- <param-name>facelets.DEVELOPMENT</param-name>
- <param-value>true</param-value>
- </context-param>
-
-
- <!-- Extensions Filter -->
-
-
- <filter>
- <filter-name>scriptingFilter</filter-name>
- <filter-class>org.apache.myfaces.extensions.scripting.servlet.ScriptingServletFilter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>scriptingFilter</filter-name>
- <url-pattern>/*</url-pattern>
- <dispatcher>REQUEST</dispatcher>
- <dispatcher>FORWARD</dispatcher>
- <dispatcher>INCLUDE</dispatcher>
- <dispatcher>ERROR</dispatcher>
- </filter-mapping>
-
- <!-- Listener, to allow Jetty serving MyFaces apps -->
- <listener>
- <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
- </listener>
-
-
- <!-- Faces Servlet -->
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
- <!-- Faces Servlet Mapping -->
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.jsf</url-pattern>
- </servlet-mapping>
-
- <!-- Welcome files -->
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- <welcome-file>index.html</welcome-file>
- </welcome-file-list>
-
-</web-app>
diff --git a/extscript-examples/spring-example/src/main/webapp/helloWorld.xhtml b/extscript-examples/spring-example/src/main/webapp/helloWorld.xhtml
deleted file mode 100644
index 0d12e2c..0000000
--- a/extscript-examples/spring-example/src/main/webapp/helloWorld.xhtml
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:h="http://java.sun.com/jsf/html">
-<head>
- <title>Hello World</title>
-</head>
-<body>
-<ui:composition template="/template.xhtml">
-
- <ui:define name="body">
- <h:form id="form">
- <h:panelGrid id="grid" columns="2">
- <h:outputText id="output1" value="Please enter your name"/>
- <h:outputText id="input1x" value="#{helloWorldBacking.springBean.value}" />
- <h:inputText id="input1" value="#{helloWorldBacking.name}"
- required="true"/>
- <h:commandButton id="button1" value="press me"
- action="#{helloWorldBacking.send}"/>
- <h:message id="message1" for="input1"/>
-
- <!--
- <h:outputText value="#{groovyBean.value}"/>
-
- <h:outputText value="#{groovyBean.secondBean.value}"/>
- -->
- </h:panelGrid>
- </h:form>
- </ui:define>
-</ui:composition>
-</body>
-</html>
diff --git a/extscript-examples/spring-example/src/main/webapp/index.jsp b/extscript-examples/spring-example/src/main/webapp/index.jsp
deleted file mode 100644
index 330de79..0000000
--- a/extscript-examples/spring-example/src/main/webapp/index.jsp
+++ /dev/null
@@ -1,4 +0,0 @@
-<%@ page session="false" %>
-<%
- response.sendRedirect("helloWorld.jsf");
-%>
\ No newline at end of file
diff --git a/extscript-examples/spring-example/src/main/webapp/page2.xhtml b/extscript-examples/spring-example/src/main/webapp/page2.xhtml
deleted file mode 100644
index fc0bd3c..0000000
--- a/extscript-examples/spring-example/src/main/webapp/page2.xhtml
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:h="http://java.sun.com/jsf/html">
-<head>
- <title>Hello World</title>
-</head>
-<body>
-
-<f:view>
- <h:outputText
- value="Hello #{helloWorldBacking.name}. We hope you enjoy Apache MyFaces"/>
- <h:form id="form2">
- <h:commandLink id="link1" action="back">
- <h:outputText id="linkText" value="GO HOME"/>
- </h:commandLink>
- </h:form>
-</f:view>
-</body>
-</html>
diff --git a/extscript-examples/spring-example/src/main/webapp/template.xhtml b/extscript-examples/spring-example/src/main/webapp/template.xhtml
deleted file mode 100644
index 6bb2788..0000000
--- a/extscript-examples/spring-example/src/main/webapp/template.xhtml
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:h="http://java.sun.com/jsf/html">
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
- <title>Myfaces Example Facelets</title>
-</head>
-
-<body>
-<h1>
- <ui:insert name="title">Myfaces Example Facelets</ui:insert>
-</h1>
-<p>
- <ui:insert name="body">Hello World Example!</ui:insert>
-</p>
-</body>
-
-</html>