You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by we...@apache.org on 2010/03/11 14:54:15 UTC

svn commit: r921850 - in /myfaces/extensions/scripting/trunk/src/site: site.xml xdoc/configentries.xml xdoc/exampleconfig.xml xdoc/index.xml xdoc/otherEngines.xml xdoc/usersguide.xml

Author: werpu
Date: Thu Mar 11 13:54:15 2010
New Revision: 921850

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

adding new chapters

Added:
    myfaces/extensions/scripting/trunk/src/site/xdoc/exampleconfig.xml   (with props)
    myfaces/extensions/scripting/trunk/src/site/xdoc/otherEngines.xml   (with props)
Modified:
    myfaces/extensions/scripting/trunk/src/site/site.xml
    myfaces/extensions/scripting/trunk/src/site/xdoc/configentries.xml
    myfaces/extensions/scripting/trunk/src/site/xdoc/index.xml
    myfaces/extensions/scripting/trunk/src/site/xdoc/usersguide.xml

Modified: myfaces/extensions/scripting/trunk/src/site/site.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/src/site/site.xml?rev=921850&r1=921849&r2=921850&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/src/site/site.xml (original)
+++ myfaces/extensions/scripting/trunk/src/site/site.xml Thu Mar 11 13:54:15 2010
@@ -50,7 +50,8 @@
       <item name="Introduction" href="index.html" />
       <item name="Installation" href="installation.html" />
       <item name="Users Guide" href="usersguide.html"/>
-      <item name="Configuration Entries" href="configentries.html" />
+      <item name="Appendix A: Configuration Entries" href="configentries.html" />
+      <item name="Appendix B: Example Configurations" href="exampleconfig.html" />
     </menu>
 
     <menu name="Foundation">

Modified: myfaces/extensions/scripting/trunk/src/site/xdoc/configentries.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/src/site/xdoc/configentries.xml?rev=921850&r1=921849&r2=921850&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/src/site/xdoc/configentries.xml (original)
+++ myfaces/extensions/scripting/trunk/src/site/xdoc/configentries.xml Thu Mar 11 13:54:15 2010
@@ -19,4 +19,84 @@
 
 -->
 <document>
+    <section name="Appendix: Configuration Entries">
+        <subsection name="General Information">
+            <p>
+                This page is a general quick overview over the possible configuration parameters, if you need further
+                details please visit the<a href="installation.html">setup guide</a>.
+            </p>
+        </subsection>
+        <table>
+            <thead>
+                <tr>
+                    <td>Param</td>
+                    <td>Required</td>
+                    <td>Possible values</td>
+                    <td>Short Description</td>
+                </tr>
+            </thead>
+            <tbody>
+                <tr>
+                    <td>org.apache.myfaces.FACES_INIT_PLUGINS</td>
+                    <td>YES</td>
+                    <td>org.apache.myfaces.scripting.servlet.StartupServletContextPluginChainLoader</td>
+                    <td>MyFaces Extenion Point Setup</td>
+                </tr>
+                <tr>
+                    <td>scriptingFilter</td>
+                    <td>YES</td>
+                    <td></td>
+                    <td>The scripting filter for further information look below</td>
+                </tr>
+
+
+                <tr>
+                    <td>org.apache.myfaces.scripting.groovy.LOADER_PATHS</td>
+                    <td>NO</td>
+                    <td>comma separate list of paths</td>
+                    <td>Additional comma separated loader paths to allow direct editing of groovy files on the sources
+                        directory instead of editing in the deployment dir /WEB-INF/groovy
+                    </td>
+                </tr>
+                <tr>
+                    <td>org.apache.myfaces.scripting.java.LOADER_PATHS</td>
+                    <td>NO</td>
+                    <td>comma separate list of paths</td>
+                    <td>Additional comma separated loader paths to allow direct editing of java files on the sources
+                        directory instead of editing in the deployment dir /WEB-INF/java
+                    </td>
+                </tr>
+                <tr>
+                    <td>org.apache.myfaces.scripting.resource.LOADER_PATHS</td>
+                    <td>NO</td>
+                    <td>comma separate list of paths</td>
+                    <td>Additional comma separated loader paths to allow direct editing of resources on the sources
+                        directory instead of editing in the deployment directory
+                    </td>
+                </tr>
+                <tr>
+                    <td>facelets.RESOURCE_RESOLVER</td>
+                    <td>NO</td>
+                    <td>org.apache.myfaces.scripting.facelet.ReroutingResourceResolver</td>
+                    <td>Enables the loading of xhtml facelet pages from your sourcedir if
+                        org.apache.myfaces.scripting.resource.LOADER_PATHS is set properly
+                    </td>
+                </tr>
+                <tr>
+                    <td>org.apache.myfaces. scripting.PGK_WHITELIST</td>
+                    <td>NO</td>
+                    <td>a comma separate list of whitelisted packages</td>
+                    <td>Enables package whitelisting, a mechanism which allows to compile and reload only from
+                        whitelisted packages
+                    </td>
+                </tr>
+                <tr>
+                    <td>org.apache.myfaces.scripting.PGK_ADDITIONAL_CLASSPATH</td>
+                    <td>NO</td>
+                    <td>a comma separate list of additional classpaths</td>
+                    <td>enables additional classpaths for the compile time</td>
+                </tr>
+            </tbody>
+        </table>
+    </section>
 </document>

Added: myfaces/extensions/scripting/trunk/src/site/xdoc/exampleconfig.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/src/site/xdoc/exampleconfig.xml?rev=921850&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/src/site/xdoc/exampleconfig.xml (added)
+++ myfaces/extensions/scripting/trunk/src/site/xdoc/exampleconfig.xml Thu Mar 11 13:54:15 2010
@@ -0,0 +1,232 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!--
+    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.
+
+-->
+
+<document>
+    <section name="Appendix: Example Configuration">
+        <subsection name="General Information">
+            <p>
+                This page gives a detailed example configuration for
+                Ext-Scripting for installation
+                details please visit the<a href="installation.html">setup guide</a>.
+            </p>
+        </subsection>
+        <subsection name="Simple Configuration">
+
+        <source><![CDATA[
+<web-app version="2.5" 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-app_2_5.xsd">
+
+
+    <description>MyProject web.xml</description>
+
+    <!-- ======================================================================================
+            Plugin Init Parameter
+            First Step to enable Ext-Scripting
+         ====================================================================================== -->
+    <context-param>
+        <description>
+            Initializes the plugins for our scripting support
+        </description>
+        <param-name>org.apache.myfaces.FACES_INIT_PLUGINS</param-name>
+        <param-value>org.apache.myfaces.scripting.servlet.StartupServletContextPluginChainLoader</param-value>
+    </context-param>
+
+    <!-- ======================================================================================
+            Scripting Filter
+            Second step to enable Ext-Scripting
+         ====================================================================================== -->
+    <filter>
+        <filter-name>scriptingFilter</filter-name>
+        <filter-class>org.apache.myfaces.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>
+
+
+    <!-- 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>
+
+    <servlet-mapping>
+        <servlet-name>Faces Servlet</servlet-name>
+        <url-pattern>/faces/*</url-pattern>
+    </servlet-mapping>
+
+</web-app>
+        ]]></source>
+        </subsection>
+        <subsection name="Full Configuration">
+        <source><![CDATA[
+<web-app version="2.5" 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-app_2_5.xsd">
+
+
+    <description>MyProject web.xml</description>
+
+    <!-- ======================================================================================
+            Plugin Init Parameter
+            First Step to enable Ext-Scripting
+         ====================================================================================== -->
+
+    <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.scripting.servlet.StartupServletContextPluginChainLoader</param-value>
+    </context-param>
+
+
+    <!-- ======================================================================================
+            Scripting Filter
+            Second step to enable Ext-Scripting
+         ====================================================================================== -->
+    <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.scripting.groovy.LOADER_PATHS</param-name>
+        <param-value>
+            /Users/werpu2/development/workspace/extensions-scripting3/examples/myfaces20-example/src/main/webapp/WEB-INF/groovy
+        </param-value>
+    </context-param>
+
+    <!-- ======================================================================================
+            Optional Loader Paths for Java Source Files
+         ====================================================================================== -->
+    <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.scripting.java.LOADER_PATHS</param-name>
+        <param-value>
+            /Users/werpu2/development/workspace/extensions-scripting3/examples/myfaces20-example/src/main/webapp/WEB-INF/java
+        </param-value>
+    </context-param>
+
+    <!-- ======================================================================================
+            Optional Loader Paths for Groovy Source Files
+         ====================================================================================== -->
+    <context-param>
+        <description>resource paths for our custom JSF2 resource resolver</description>
+        <param-name>org.apache.myfaces.scripting.resources.LOADER_PATHS</param-name>
+        <param-value>
+            /Users/werpu2/development/workspace/extensions-scripting3/examples/myfaces20-example/src/main/webapp
+        </param-value>
+    </context-param>
+
+    <!-- ======================================================================================
+            Optional: Tell Facelets to load the resources from your source dir
+         ====================================================================================== -->
+    <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.scripting.facelet.ReroutingResourceResolver</param-value>
+    </context-param>
+
+    <!-- ======================================================================================
+            Optional: Whitelist of root packages where your sources should come from
+         ====================================================================================== -->
+    <context-param>
+        <description>a comma separated whitelist of root packages which are compiled those and nothing else
+            will be compiled during all compile stages, all other files stay permanently as they are
+        </description>
+        <param-name>org.apache.myfaces.scripting.PGK_WHITELIST</param-name>
+        <param-value>org.apache.myfaces.groovyloader.blog,org.apache.myfaces.javaloader.blog</param-value>
+    </context-param>
+
+    <!-- ======================================================================================
+            Optional Additional Classpath
+         ====================================================================================== -->
+    <context-param>
+        <description>
+            Additional Classpaths which will be added to the compilers classpath
+        </description>
+        <param-name>org.apache.myfaces.scripting.PGK_ADDITIONAL_CLASSPATH</param-name>
+        <param-value>/usr/lib/java/myjar.jar,/usr/lib/java/myjar2.jar</param-value>
+    </context-param>
+
+    <context-param>
+        <param-name>javax.faces.PROJECT_STAGE</param-name>
+        <param-value>Development</param-value>
+    </context-param>
+
+    <filter>
+        <filter-name>scriptingFilter</filter-name>
+        <filter-class>org.apache.myfaces.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>
+
+    <servlet-mapping>
+        <servlet-name>Faces Servlet</servlet-name>
+        <url-pattern>/faces/*</url-pattern>
+    </servlet-mapping>
+
+
+
+</web-app>
+
+        ]]></source>
+        </subsection>
+    </section>
+</document>    
\ No newline at end of file

Propchange: myfaces/extensions/scripting/trunk/src/site/xdoc/exampleconfig.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/src/site/xdoc/exampleconfig.xml
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: myfaces/extensions/scripting/trunk/src/site/xdoc/index.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/src/site/xdoc/index.xml?rev=921850&r1=921849&r2=921850&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/src/site/xdoc/index.xml (original)
+++ myfaces/extensions/scripting/trunk/src/site/xdoc/index.xml Thu Mar 11 13:54:15 2010
@@ -29,7 +29,7 @@
             <subsection name="General Introduction">
 
                 <p>Welcome and hello to MyFaces Extension-Scripting, short Ext-Scripting. Ext-Scripting is an extensions
-                    project for MyFaces. It tries to add scripting and rapid prototyping capabilities to JSF by adding
+                    project for MyFaces. It tries to add scripting and rapid prototyping (artifact level hot deployment) capabilities to JSF by adding
                     scripting languages and JSP like recompilation mechanisms.
 
                     Following link to the a video on YouTube shows you what Ext-Scripting can do for you:
@@ -48,7 +48,7 @@
                     </center>
                 </p>
                 <p>
-                    As the video shows you can make changes to JSF artifacts on the fly and at the next reload the
+                    As the video shows you can make changes to almost all JSF artifacts on the fly and at the next reload the
                     changes are present. The result is a reduction in server restarts and better turn around times. The
                     same rapid prototyping approach which is normally present in scripting languages and scripting
                     language based frameworks.

Added: myfaces/extensions/scripting/trunk/src/site/xdoc/otherEngines.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/src/site/xdoc/otherEngines.xml?rev=921850&view=auto
==============================================================================
--- myfaces/extensions/scripting/trunk/src/site/xdoc/otherEngines.xml (added)
+++ myfaces/extensions/scripting/trunk/src/site/xdoc/otherEngines.xml Thu Mar 11 13:54:15 2010
@@ -0,0 +1,7 @@
+
+<!--
+http://www.redhat.com/docs/en-US/JBoss_Enterprise_Application_Platform/4.3.0.cp02_fp01/html/Seam_Reference_Guide/gettingstartedwithjbosstools.hotdeployment.html
+Jrebel
+Mojarra Scripting Support
+
+-->
\ No newline at end of file

Propchange: myfaces/extensions/scripting/trunk/src/site/xdoc/otherEngines.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/extensions/scripting/trunk/src/site/xdoc/otherEngines.xml
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: myfaces/extensions/scripting/trunk/src/site/xdoc/usersguide.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/src/site/xdoc/usersguide.xml?rev=921850&r1=921849&r2=921850&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/src/site/xdoc/usersguide.xml (original)
+++ myfaces/extensions/scripting/trunk/src/site/xdoc/usersguide.xml Thu Mar 11 13:54:15 2010
@@ -135,17 +135,21 @@
             </subsection>
 
             <subsection name="Setup">
-                <p>To use the components following namespace has to be included </p>
-                <p><source><![CDATA[xmlns:exs="http://myfaces.apache.org/ext-scripting"]]></source></p>
+                <p>To use the components following namespace has to be included</p>
+                <p>
+                    <source><![CDATA[xmlns:exs="http://myfaces.apache.org/ext-scripting"]]></source>
+                </p>
                 <p>Example</p>
-                <p><source><![CDATA[
+                <p>
+                    <source><![CDATA[
 <!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:exs="http://myfaces.apache.org/ext-scripting"
       xmlns:h="http://java.sun.com/jsf/html">
-<h:head>]]></source></p>
+<h:head>]]></source>
+                </p>
             </subsection>
 
             <subsection name="The Compiler Output Component">
@@ -188,7 +192,8 @@
                     <h4>Usage of the Compiler Output Component</h4>
                 </p>
                 <p>The compiler output component currently is presented as Facelets only component as follows</p>
-                <source><![CDATA[<exs:compilerOutput errorsLabel="Errors:" warningsLabel="Warnings:" scriptingLanguage=""/>]]></source>
+                <source>
+                    <![CDATA[<exs:compilerOutput errorsLabel="Errors:" warningsLabel="Warnings:" scriptingLanguage=""/>]]></source>
 
                 <p>Following attributes can be used</p>
                 <p>
@@ -232,15 +237,16 @@
                 <div class="objectAnnotation">Image: Compiler Output Component</div>
             </subsection>
             <subsection name="The Change History Component">
-                 <p>The second cornerstone of Ext-Scripting is change tracking and dependency detection.
-                     Now if you have changed a file, Ext-Scripting tracks the changes and also marks
-                     most classes which have a dependency to your class as changed.
+                <p>The second cornerstone of Ext-Scripting is change tracking and dependency detection.
+                    Now if you have changed a file, Ext-Scripting tracks the changes and also marks
+                    most classes which have a dependency to your class as changed.
                 </p>
                 <p>
                     Again usually the output is pushed into the log as following:
                 </p>
                 <p>
-                    <source><![CDATA[INFO: [EXT-SCRIPTING] Tainting: org/apache/myfaces/javaloader/componentTest/MyComponentTag.java]]></source>
+                    <source>
+                        <![CDATA[INFO: [EXT-SCRIPTING] Tainting: org/apache/myfaces/javaloader/componentTest/MyComponentTag.java]]></source>
                 </p>
                 <p>
                     Again, to get a quick overview within your running page, or preferably an extra page, you can use
@@ -251,10 +257,11 @@
                     done over time including their marked dependencies.
                 </p>
                 <p>
-                  <center>
-                    <img src="images/change_history.jpg" width="600px" height="45px" alt="change history component" title="change history component"/>
-                  </center>
-                  <div class="objectAnnotation">Image: Change History Component in Action</div>  
+                    <center>
+                        <img src="images/change_history.jpg" width="550px" height="45px" alt="change history component"
+                                />
+                        <div class="objectAnnotation">Image: Change History Component in Action</div>
+                    </center>
                 </p>
             </subsection>
 
@@ -289,13 +296,40 @@
         </section>
 
         <section name="Debugging">
-            
+            <p>Ext-Scripting automatically compiles with the debug flags on. Debugging against a running configuration
+                should be no problem. If the debugger can be pointed towards the sources, debugging should work without
+                any sideeffects.
+            </p>
+            <p>
+                Due to the fact that the debugger can pick up the debug info from the newly compiled class
+                files. (Note - the class files are not altered in any way so in any case you just deal with normal Java
+                classes)
+            </p>
+            TODO add video here
         </section>
 
         <section name="Page and Resource Reloading">
-        </section>
-
-        <section name="Supported Artifacts">
+            <subsection name="Introduction">
+                <p>One of the goals of Ext-Scripting is to prevent unnecessary restarts and redeploys during
+                    development. To
+                    enable this it provides custom functionality outside of the scope of providing scripting
+                    capabilities.
+                    One of those features is the page and resource reloading from your source directories.
+                </p>
+            </subsection>
+            <subsection name="Basic Functionality">
+                <p>Pages and web-resources like CSS files or images are loaded from your resource directory without
+                    having to redeploy the web
+                    application,
+                    changes on them can be watched on the fly simple by a browser reload. There is no need to adjust
+                    your web application server or your IDE for auto deployment mechanisms. Unnecessary web application
+                    restarts for changed resources can be avoided that way.
+                </p>
+                <center>
+                    <img src="images/source-resource.jpg" width="557px" height="470px" alt="Page and Resource Reloading"
+                         title="Page and Resource Reloading"/>
+                </center>
+            </subsection>
         </section>
 
 
@@ -339,6 +373,80 @@
 
         </section>
 
+
+        <section name="Dynamic Annotations">
+
+            <p>One of the main features which Ext-Scripting provides over standard JSF is dynamic annotations.
+                Dynamic annotations basically introduces a mechanism so that your standard JSF annotations like
+                @ManagedBean or @FacesComponent or @ManagedProperty or even the scopes like @RequestScoped or
+                @SessionScoped
+                can be changed on the fly in a dynamic way.
+            </p>
+            <p>To enable this mechanism you don't have to do anything, it comes out of the box in a MyFaces 2.0
+                environment.
+                Following video demonstrates the mechanism
+            </p>
+
+            <center>
+                <object width="640" height="505">
+                    <param name="movie" value="http://www.youtube.com/v/tikOR0XDnFw&#38;hl=de_DE&#38;fs=1&#38;hd=1"></param>
+                    <param name="allowFullScreen" value="true"></param>
+                    <param name="allowscriptaccess" value="always"></param>
+                    <embed src="http://www.youtube.com/v/tikOR0XDnFw&#38;hl=de_DE&#38;fs=1&#38;hd=1"
+                           type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true"
+                           width="640" height="505"></embed>
+                </object>
+            </center>
+        </section>
+
+        <section name="Supported Artifacts">
+            <subsection name="JSF 1.2">
+                <p>Ext-Scripting supports following JSF 1.2 artifact reloading:</p>
+                <ul>
+                    <li>ApplicationFactory reloading on method call level</li>
+                    <li>FacesContextFactory reloading on method call level</li>
+                    <li>LifecycleFactory reloading on method call level</li>
+                    <li>RenderkitFactory reloading on method call level</li>
+                    <li>ElResolver</li>
+                    <li>Converter (on JSF level alone)</li>
+                    <li>Validator (on JSF level alone)</li>
+                    <li>Component reloading on component tree creation level (on JSF level alone)</li>
+                    <li>ViewHandler</li>
+                    <li>Lifecycle</li>
+                    <li>Renderer</li>
+                    <li>PhaseListener</li>
+                    <li>ManagedBeans reloading for all managed beans even session and application scoped ones on request
+                        level
+                    </li>
+                    <li>Support for either JavaC or JSR 199 depending on your JDK Version</li>
+                    <li>Support for Groovy and Java</li>
+                </ul>
+            </subsection>
+            <subsection name="JSF 2.0">
+                <p>Ext-Scripting supports following JSF 2.0 artifact reloading: Additionally to what is present for JSF
+                    1.2
+                </p>
+                <ul>
+                    <li>Component limitations have been lifted for Facelets as rendering language</li>
+                    <li>All major JSF 2 annotations can be used in a dynamic way, annotations can be moved removed or
+                        added on the fly
+                    </li>
+                    <li>Support for Reloading on ComponentTagHandler, ConverterTagHandler, BehaviorTagHandler,
+                        ValidatorTagHandler
+                    </li>
+                    <li>ResourceHandler</li>
+                    <li>Behavior</li>
+                    <li>BehaviorRenderer</li>
+                    <li>ComponentSystemEvent Support via dynamic Annotations</li>
+                    <li>Application System Event Support</li>
+                </ul>
+            </subsection>
+
+            <subsection name="Visual Overview">
+                <img src="images/ext-scripting-structure-fine.jpg"/>
+            </subsection>
+        </section>
+
     </body>
 </document>
         
\ No newline at end of file