myfaces-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From we...@apache.org
Subject svn commit: r815320 [1/2] - in /myfaces/extensions/scripting/trunk/examples/myfaces20-example: ./ src/ src/main/ src/main/java/ src/main/java/org/ src/main/java/org/apache/ src/main/java/org/apache/myfaces/ src/main/java/org/apache/myfaces/blank/ src/m...
Date Tue, 15 Sep 2009 13:23:28 GMT
Author: werpu
Date: Tue Sep 15 13:23:27 2009
New Revision: 815320

URL: http://svn.apache.org/viewvc?rev=815320&view=rev
Log:
https://issues.apache.org/jira/browse/EXTSCRIPT-1

adding jsf2 example

Added:
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/pom.xml   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/myfaces/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/myfaces/blank/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/faces-config.xml   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy-taglib.xml   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/Blog.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogEntry.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogService.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/JSFUtil.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestActionListener.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestBean.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestComponent.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestConverter.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestNavigationHandler.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestPhaseListener.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestRenderer.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestValidator.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestViewHandler.groovy
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/tomahawk.taglib.xml   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/web.xml   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/blog.xhtml
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/helloWorld.xhtml
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/index.jsp   (with props)
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/javablog.xhtml
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/page2.xhtml
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/template.xhtml

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/pom.xml?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/pom.xml (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/pom.xml Tue Sep 15 13:23:27 2009
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+    <parent>
+        <artifactId>examples</artifactId>
+        <groupId>org.apache.myfaces.extension-scripting</groupId>
+        <version>1.0-SNAPSHOT</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.myfaces.extension-scripting</groupId>
+    <artifactId>myfaces20-example</artifactId>
+    <packaging>war</packaging>
+    <name>A custom project using myfaces</name>
+    <version>1.0-SNAPSHOT</version>
+    <url>http://www.apache.org</url>
+
+
+    
+    <repositories>
+        <repository>
+            <id>maven2-repository.dev.java.net</id>
+            <url>http://download.java.net/maven/2</url>
+        </repository>
+     
+    </repositories>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.mortbay.jetty</groupId>
+                <artifactId>maven-jetty-plugin</artifactId>
+                <version>6.1.1</version>
+                <configuration>
+                    <connectors>
+                        <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
+                            <port>9090</port>
+                            <maxIdleTime>60000</maxIdleTime>
+                        </connector>
+                    </connectors>
+                    <scanIntervalSeconds>1</scanIntervalSeconds>
+                    
+                </configuration>
+
+            </plugin>
+
+        </plugins>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.codehaus.groovy</groupId>
+            <artifactId>groovy-all</artifactId>
+            <version>1.5.6</version>
+        </dependency>
+
+
+        <dependency>
+            <groupId>org.apache.myfaces.extension-scripting</groupId>
+            <artifactId>core</artifactId>
+            <version>1.0-SNAPSHOT</version>
+        </dependency>
+        
+        <dependency>
+            <groupId>org.apache.myfaces.extension-scripting</groupId>
+            <artifactId>myfaces2-extensions</artifactId>
+            <version>1.0-SNAPSHOT</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.myfaces.extension-scripting</groupId>
+            <artifactId>core-java6</artifactId>
+            <version>1.0-SNAPSHOT</version>
+        </dependency>
+	
+	
+        <dependency>
+            <groupId>org.apache.myfaces.core</groupId>
+            <artifactId>myfaces-api</artifactId>
+            <version>2.0.0-SNAPSHOT</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.myfaces.core</groupId>
+            <artifactId>myfaces-impl</artifactId>
+            <version>2.0.0-SNAPSHOT</version>
+            <scope>compile</scope>
+        </dependency>
+         <dependency>
+            <groupId>javax.portlet</groupId>
+            <artifactId>portlet-api</artifactId>
+            <version>1.0</version>
+        </dependency>
+      
+
+       
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.0</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+</project>

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java Tue Sep 15 13:23:27 2009
@@ -0,0 +1,54 @@
+/*
+ * 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;
+    
+    /**
+     * 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";
+    }
+}
\ No newline at end of file

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/java/org/apache/myfaces/blank/HelloWorldController.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/faces-config.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/faces-config.xml?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/faces-config.xml (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/faces-config.xml Tue Sep 15 13:23:27 2009
@@ -0,0 +1,122 @@
+<?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>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.jsp</from-view-id>
+        <navigation-case>
+            <from-outcome>success</from-outcome>
+            <to-view-id>/page2.jsp</to-view-id>
+        </navigation-case>
+    </navigation-rule>
+
+    <!-- navigation rules for page2.jsp -->
+    <navigation-rule>
+        <from-view-id>/page2.jsp</from-view-id>
+        <navigation-case>
+            <from-outcome>back</from-outcome>
+            <to-view-id>/helloWorld.jsp</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

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/faces-config.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/faces-config.xml
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy-taglib.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy-taglib.xml?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy-taglib.xml (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy-taglib.xml Tue Sep 15 13:23:27 2009
@@ -0,0 +1,26 @@
+<?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>

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy-taglib.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy-taglib.xml
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/Blog.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/Blog.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/Blog.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/Blog.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,70 @@
+/*
+ * 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.commons.logging.Log
+import org.apache.commons.logging.LogFactory
+import org.apache.myfaces.groovyloader.blog.JSFUtil;
+import org.apache.myfaces.groovyloader.blog.BlogService;
+
+
+public class Blog {
+    //bug application and session scoped beans  are not refreshed structurally yet
+
+    Log log = LogFactory.getLog(Blog.class)
+
+    String title = "Hello to the myfaces dynamic blogging"
+    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"
+
+    String firstName = ""
+    String lastName = ""
+    String topic = ""
+
+    String content = ""
+
+    public String addEntry() {
+        log.info("adding entry");
+
+
+        def service = JSFUtil.resolveVariable("blogService")
+
+        if (service == null) {
+            log.error("service not found")
+        } else {
+            log.info("service found")
+
+        }
+
+        def 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.addEntry(entry)
+
+        //we stay on the same page
+        return null;
+    }
+
+  
+}
\ No newline at end of file

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogEntry.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogEntry.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogEntry.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogEntry.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,31 @@
+/*
+ * 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

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogService.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogService.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogService.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/BlogService.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,38 @@
+/*
+ * 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 org.apache.commons.logging.Log
+import org.apache.commons.logging.LogFactory;
+
+
+
+
+public class BlogService {
+    List blogEntries = new ArrayList()
+
+    public void addEntry(def entry) {
+        Log log = LogFactory.getLog(BlogService.class)
+        log.info("Adding entry reloaded 3")
+        blogEntries << entry
+    }
+
+}
\ No newline at end of file

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/JSFUtil.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/JSFUtil.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/JSFUtil.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/blog/JSFUtil.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,37 @@
+/*
+ * 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 org.apache.commons.logging.Log
+import org.apache.commons.logging.LogFactory;
+
+/**
+ * Utils class to keep the code clean and mean
+ */
+public class JSFUtil {
+
+
+    public static Object resolveVariable(String beanName) {
+        Log log = LogFactory.getLog(JSFUtil.class)
+        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

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestActionListener.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestActionListener.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestActionListener.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestActionListener.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,34 @@
+/*
+ * 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"
+    }
+
+}
+

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestBean.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestBean.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestBean.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestBean.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,49 @@
+/*
+ * 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 = "hallo ist - die 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() {
+        print "doit called"
+        return null
+    }
+
+
+    public String getXxx() {
+        " Simple text you can change me on the fly"
+    }
+}
\ No newline at end of file

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestComponent.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestComponent.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestComponent.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestComponent.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,73 @@
+/*
+ * 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";
+    }
+
+}

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestConverter.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestConverter.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestConverter.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestConverter.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,40 @@
+/*
+ * 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

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestNavigationHandler.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestNavigationHandler.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestNavigationHandler.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestNavigationHandler.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,48 @@
+/*
+ * 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)
+        _delegate.handleNavigation(facesContext, s, s1)
+        print " handle navigation"
+    }
+
+}
\ No newline at end of file

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestPhaseListener.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestPhaseListener.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestPhaseListener.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestPhaseListener.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,44 @@
+/*
+ * 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

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestRenderer.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestRenderer.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestRenderer.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestRenderer.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,64 @@
+/*
+ * 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;
+
+
+/**
+ * @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>
+
+            <h2> One note however, you cannot change components with a simple page
+            refresh, this works only for renderers</h2>
+
+            <p> you have to rebuild the component tree</p>
+
+            <p> Once you are done you can move your sources over and have them compiled into
+            java classes to gain more speed </p>
+
+            <p> You can prototype every jsf artefact that way, managed beans, renderers, validators,
+            phase listeners </p>
+
+            Test for attribute: $uiComponent.testattr
+        """
+        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

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestValidator.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestValidator.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestValidator.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestValidator.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,34 @@
+/*
+ * 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
+
+/**
+ * @author Werner Punz
+ */
+class TestValidator implements Validator {
+
+    public void validate(FacesContext facesContext, UIComponent uiComponent, Object o) {
+        println "validating aaaa  "
+    }
+
+}
\ No newline at end of file

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestViewHandler.groovy
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestViewHandler.groovy?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestViewHandler.groovy (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy/org/apache/myfaces/groovyloader/test/TestViewHandler.groovy Tue Sep 15 13:23:27 2009
@@ -0,0 +1,80 @@
+/*
+ * 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

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java Tue Sep 15 13:23:27 2009
@@ -0,0 +1,184 @@
+/*
+ * 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.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.myfaces.scripting.loaders.java.ScriptingClass;
+
+import static org.apache.myfaces.javaloader.blog.JSFUtil.*;
+import static org.apache.myfaces.scripting.core.util.ReflectUtil.*;
+
+/**
+ * @author werpu2
+ * @date: 01.09.2009
+ */
+
+
+
+public class Blog {
+
+    String title        =   "Hello to the myfaces dynamic 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 Log getLog() {
+        return LogFactory.getLog(this.getClass());
+    }
+
+
+
+    public String addEntry2 () {
+
+        getLog().info("adding entry");
+
+        Object service = JSFUtil.resolveVariable("javaBlogService");
+
+
+        
+        if (service == null) {
+            getLog().error("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.addEntry(entry);
+            getLog().info((String)executeFunction(service, "getTest"));
+            executeMethod(service, "addEntry", cast(Object.class, 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) {
+
+    }
+
+
+}

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/Blog.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java Tue Sep 15 13:23:27 2009
@@ -0,0 +1,66 @@
+/*
+ * 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;
+    }
+}

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogEntry.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java Tue Sep 15 13:23:27 2009
@@ -0,0 +1,67 @@
+/*
+ * 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.scripting.loaders.java.ScriptingClass;
+
+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>());
+
+    public void addEntry(Object entry) {
+        if (entry != null) {
+            blogEntries.add(entry);
+        }
+    }
+
+
+    public List<Object> getBlogEntries() {
+        return blogEntries;
+    }
+
+    public void setBlogEntries(List<Object> blogEntries) {
+        this.blogEntries = blogEntries;
+    }
+
+    public String getTest() {
+        return "aaaaaaaaaaaaaaa";
+    }
+
+}

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/BlogService.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java Tue Sep 15 13:23:27 2009
@@ -0,0 +1,74 @@
+/*
+ * 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.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+
+import javax.faces.context.FacesContext;
+import java.lang.reflect.Method;
+import java.lang.reflect.InvocationTargetException;
+
+import static org.apache.myfaces.scripting.core.util.ReflectUtil.*;
+import static org.apache.myfaces.scripting.core.util.ClassUtils.*;
+/**
+ * @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) {
+        Log log = LogFactory.getLog(JSFUtil.class);
+        Object facesContext = FacesContext.getCurrentInstance();
+
+        Object elContext = executeFunction(facesContext, "getELContext");
+        Object elResolver = executeFunction(elContext, "getELResolver");
+
+
+            /*
+             if you want to enable this then use
+             org.apache.myfaces.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 executeFunction(elResolver, "getValue", cast(forName("javax.el.ELContext"), elContext), nullCast(Object.class), cast(Object.class, beanName));
+            // return FacesContext.getCurrentInstance().getELContext().getELResolver().getValue(FacesContext.getCurrentInstance().getELContext(), null, beanName);
+
+
+
+    }
+
+}

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/blog/JSFUtil.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java Tue Sep 15 13:23:27 2009
@@ -0,0 +1,29 @@
+package org.apache.myfaces.javaloader.test;
+
+import org.apache.myfaces.scripting.loaders.java.ScriptingClass;
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.RequestScoped;
+
+
+public class TestBean2 {
+    String sayHello = "hello worldgggg";
+    String hello2 = "hello from added attribute";
+    String hello3 = "hello from  added attribute 2";
+ 
+    public String getSayHello() {
+        return "sss Java dynamic  bean - "+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

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java?rev=815320&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java (added)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java Tue Sep 15 13:23:27 2009
@@ -0,0 +1,6 @@
+package org.apache.myfaces.javaloader.test;
+
+
+public class TestClass2 {
+    public static String hello2 = "hello world from testClass2";
+}
\ No newline at end of file

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestClass2.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL



Mime
View raw message