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 2009/11/16 15:59:27 UTC

svn commit: r880781 - in /myfaces/extensions/scripting/trunk: core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/...

Author: werpu
Date: Mon Nov 16 14:59:27 2009
New Revision: 880781

URL: http://svn.apache.org/viewvc?rev=880781&view=rev
Log:
https://issues.apache.org/jira/browse/EXTSCRIPT-26
component annotation now done as well I will close this issue now I guess
all the annotations work as expected

Added:
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/StringResource.java
      - copied, changed from r880780, myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent.java
Modified:
    myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java
    myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java
    myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/ComponentImplementationListener.java
    myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/purged/PurgedComponent.java
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent.java
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent2.java
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler1.java
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler2.java
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean3.java
    myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/helloWorld.xhtml

Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java Mon Nov 16 14:59:27 2009
@@ -504,7 +504,6 @@
     }
 
 
-    //TODO implement those
     @Override
     public UIComponent createComponent(FacesContext facesContext, Resource resource) {
         weaveDelegate();
@@ -680,13 +679,14 @@
         return true;
     }
 
-    private UIComponent handeAnnotationChange(UIComponent oldComponent, ValueExpression valueExpression, FacesContext facesContext, String s) {
-        UIComponent componentToChange = _delegate.createComponent(valueExpression, facesContext, s);
+    private UIComponent handeAnnotationChange(UIComponent oldComponent, ValueExpression valueExpression, FacesContext facesContext, String componentType) {
+        UIComponent componentToChange = _delegate.createComponent(valueExpression, facesContext, componentType);
         if (componentToChange instanceof PurgedComponent) {
             ProxyUtils.getWeaver().fullAnnotationScan();
             //via an additional create component we can check whether a purged component
             //was registered after the reload because the annotation has been removed
-            componentToChange = _delegate.createComponent(valueExpression, facesContext, s);
+            componentToChange = _delegate.createComponent(valueExpression, facesContext, componentType);
+            //TODO reregister the renderer for the component because otherwise we get an npe here on renderkitlevel
 
             return componentToChange;
         }

Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java Mon Nov 16 14:59:27 2009
@@ -54,27 +54,27 @@
     }
 
 
-    public void addRenderer(String s, String s1, Renderer renderer) {
+    public void addRenderer(String componentFamily, String rendererType, Renderer renderer) {
         weaveDelegate();
         //wo do it brute force here because we have sometimes casts and hence cannot rely on proxies
         //renderers itself are flyweight patterns which means they are shared over objects
         renderer = (Renderer) reloadInstance(renderer);
 
         
-        _delegate.addRenderer(s, s1, renderer);
+        _delegate.addRenderer(componentFamily, rendererType, renderer);
     }
 
-    public Renderer getRenderer(String s, String s1) {
+    public Renderer getRenderer(String componentFamily, String rendererType) {
         weaveDelegate();
-        Renderer rendr = _delegate.getRenderer(s, s1);
+        Renderer rendr = _delegate.getRenderer(componentFamily, rendererType);
         Renderer rendr2 = (Renderer) reloadInstance(rendr);
         if (rendr != rendr2) {
-            rendr2 = _delegate.getRenderer(s, s1);
+            rendr2 = _delegate.getRenderer(componentFamily, rendererType);
             if (rendr2 instanceof PurgedRenderer) {
-                return handleAnnotationChange(s, s1);
+                return handleAnnotationChange(componentFamily, rendererType);
             }
 
-            _delegate.addRenderer(s, s1, rendr2);
+            _delegate.addRenderer(componentFamily, rendererType, rendr2);
             return rendr2;
         }
         return rendr;

Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/ComponentImplementationListener.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/ComponentImplementationListener.java?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/ComponentImplementationListener.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/ComponentImplementationListener.java Mon Nov 16 14:59:27 2009
@@ -45,12 +45,12 @@
 
     protected void addEntity(Class clazz, String val) {
         if (log.isTraceEnabled()) {
-            log.trace("addComponent(" + val + ","
-                      + clazz.getName() + ")");
+            log.trace("addComponent(" + val + "," + clazz.getName() + ")");
         }
         getApplication().addComponent(val, clazz.getName());
-        //TODO check by debugging into the impl why the family is lost
-        //if we run into this stage via reloading
+        //register the renderer if not registered
+
+
         _alreadyRegistered.put(clazz.getName(), val);
     }
 

Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/purged/PurgedComponent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/purged/PurgedComponent.java?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/purged/PurgedComponent.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf2/annotation/purged/PurgedComponent.java Mon Nov 16 14:59:27 2009
@@ -19,6 +19,7 @@
 package org.apache.myfaces.scripting.jsf2.annotation.purged;
 
 import javax.faces.component.UIComponent;
+import javax.faces.component.UIOutput;
 import javax.faces.el.ValueBinding;
 import javax.faces.context.FacesContext;
 import javax.faces.event.FacesEvent;
@@ -33,202 +34,15 @@
 /**
  * @author Werner Punz (latest modification by $Author$)
  * @version $Revision$ $Date$
+ *
+ * We override the component from a real family so that
+ * so that myfaces can handle it in a decent way
+ * directly from UIComponent it would fail
+ * unless we implement everything family etc... all by our own
  */
 
-public class PurgedComponent extends UIComponent {
-    @Override
-    public Map<String, Object> getAttributes() {
-        return null;
-    }
-
-    @Override
-    public boolean isRendered() {
-        return false;
-    }
-
-    @Override
-    public void setValueBinding(String name, ValueBinding binding) {
-
-    }
-
-    @Override
-    public String getClientId(FacesContext context) {
-        return null;
-    }
-
-    @Override
-    public String getFamily() {
-        return null;
-    }
-
-    @Override
-    public String getId() {
-        return null;
-    }
-
-    @Override
-    public void setId(String id) {
-
-    }
-
-    @Override
-    public void setParent(UIComponent parent) {
-
-    }
-
-    @Override
-    public UIComponent getParent() {
-        return null;
-    }
-
-    @Override
-    public void setRendered(boolean rendered) {
-
-    }
-
-    @Override
-    public String getRendererType() {
-        return null;
-    }
-
-    @Override
-    public void setRendererType(String rendererType) {
-
-    }
-
-    @Override
-    public boolean getRendersChildren() {
-        return false;
-    }
-
-    @Override
-    public ValueBinding getValueBinding(String name) {
-        return null;
-    }
-
-    @Override
-    public List<UIComponent> getChildren() {
-        return null;
-    }
-
-    @Override
-    public int getChildCount() {
-        return 0;
-    }
-
-    @Override
-    public UIComponent findComponent(String expr) {
-        return null;
-    }
-
-    @Override
-    public Map<String, UIComponent> getFacets() {
-        return null;
-    }
-
-    @Override
-    public UIComponent getFacet(String name) {
-        return null;
-    }
-
-    @Override
-    public Iterator<UIComponent> getFacetsAndChildren() {
-        return null;
-    }
-
-    @Override
-    public void broadcast(FacesEvent event) throws AbortProcessingException {
-
-    }
-
-    @Override
-    public void decode(FacesContext context) {
-
-    }
-
-    @Override
-    public void encodeBegin(FacesContext context) throws IOException {
-
-    }
-
-    @Override
-    public void encodeChildren(FacesContext context) throws IOException {
-
-    }
-
-    @Override
-    public void encodeEnd(FacesContext context) throws IOException {
-
-    }
-
-    @Override
-    protected void addFacesListener(FacesListener listener) {
-
-    }
-
-    @Override
-    protected FacesListener[] getFacesListeners(Class clazz) {
-        return new FacesListener[0];
-    }
-
-    @Override
-    protected void removeFacesListener(FacesListener listener) {
-
-    }
-
-    @Override
-    public void queueEvent(FacesEvent event) {
-
-    }
-
-    @Override
-    public void processRestoreState(FacesContext context, Object state) {
-
-    }
-
-    @Override
-    public void processDecodes(FacesContext context) {
-
-    }
-
-    @Override
-    public void processValidators(FacesContext context) {
-
-    }
-
-    @Override
-    public void processUpdates(FacesContext context) {
-
-    }
-
-    @Override
-    public Object processSaveState(FacesContext context) {
-        return null;
-    }
-
-    @Override
-    protected FacesContext getFacesContext() {
-        return null;
-    }
-
-    @Override
-    protected Renderer getRenderer(FacesContext context) {
-        return null;
-    }
-
-    public Object saveState(FacesContext context) {
-        return null;
-    }
-
-    public void restoreState(FacesContext context, Object state) {
-
-    }
-
-    public boolean isTransient() {
-        return false;
-    }
-
-    public void setTransient(boolean newTransientValue) {
-
+public class PurgedComponent extends UIOutput {
+    public PurgedComponent() {
+        super();
     }
 }

Modified: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent.java?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent.java (original)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent.java Mon Nov 16 14:59:27 2009
@@ -29,7 +29,7 @@
 /**
  * Simple component to be picked up by
  */
-@FacesComponent("at.irian.JavaTestComponent")
+
 public class JavaTestComponent extends UIInput implements Markable {
 
     enum PropertyKeys {

Modified: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent2.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent2.java?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent2.java (original)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent2.java Mon Nov 16 14:59:27 2009
@@ -25,6 +25,7 @@
  * @author Werner Punz (latest modification by $Author$)
  * @version $Revision$ $Date$
  */
+@FacesComponent("at.irian.JavaTestComponent")
 public class JavaTestComponent2 extends UIInput implements Markable {
 
     public JavaTestComponent2() {
@@ -33,7 +34,7 @@
 
 
     public String getMarker() {
-        return "Component 2 marker";
+        return "<h1>Component 2 marker</h1>";
     }
 
     public void setMarker() {

Modified: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler1.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler1.java?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler1.java (original)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler1.java Mon Nov 16 14:59:27 2009
@@ -19,6 +19,7 @@
 package org.apache.myfaces.javaloader.renderer;
 
 import javax.faces.application.ResourceHandler;
+import javax.faces.application.Resource;
 
 
 /**
@@ -29,4 +30,13 @@
     public ResourceHandler1(ResourceHandler delegate) {
         super(delegate);
     }
+
+    @Override
+    public Resource createResource(String resourceName) {
+        if (resourceName.equals("testResource")) {
+            Resource retVal = new StringResource("hello world from resource handler1");
+            return retVal;
+        }
+        return super.createResource(resourceName);
+    }
 }

Modified: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler2.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler2.java?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler2.java (original)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/ResourceHandler2.java Mon Nov 16 14:59:27 2009
@@ -19,6 +19,7 @@
 package org.apache.myfaces.javaloader.renderer;
 
 import javax.faces.application.ResourceHandler;
+import javax.faces.application.Resource;
 
 /**
  * @author Werner Punz (latest modification by $Author$)
@@ -29,4 +30,14 @@
     public ResourceHandler2(ResourceHandler delegate) {
         super(delegate);
     }
+
+    @Override
+    public Resource createResource(String resourceName) {
+        if (resourceName.equals("testResource")) {
+            Resource retVal = new StringResource("hello world from resource handler1");
+            return retVal;
+        }
+
+        return super.createResource(resourceName);
+    }
 }

Copied: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/StringResource.java (from r880780, myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent.java)
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/StringResource.java?p2=myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/StringResource.java&p1=myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent.java&r1=880780&r2=880781&rev=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/JavaTestComponent.java (original)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/renderer/StringResource.java Mon Nov 16 14:59:27 2009
@@ -18,41 +18,49 @@
  */
 package org.apache.myfaces.javaloader.renderer;
 
-import javax.faces.component.UIInput;
-import javax.faces.component.FacesComponent;
+import javax.faces.application.Resource;
+import javax.faces.context.FacesContext;
+import java.io.InputStream;
+import java.io.ByteArrayInputStream;
+import java.util.Map;
+import java.net.URL;
 
 /**
  * @author Werner Punz (latest modification by $Author$)
  * @version $Revision$ $Date$
  */
 
-/**
- * Simple component to be picked up by
- */
-@FacesComponent("at.irian.JavaTestComponent")
-public class JavaTestComponent extends UIInput implements Markable {
+public class StringResource extends Resource {
 
-    enum PropertyKeys {
-        inc
+    String resourceString = "";
+
+    public StringResource(String resourceString) {
+        this.resourceString = resourceString;
     }
 
-    public JavaTestComponent() {
-        setRendererType("at.irian.JavaTestRenderer");
+    @Override
+    public InputStream getInputStream() {
+
+        return new ByteArrayInputStream(resourceString.getBytes());  
     }
 
-    public String getMarker() {
-        return "Component 1 marker";
+    @Override
+    public String getRequestPath() {
+        return null;  
     }
 
-    public void setMarker() {
-       
+    @Override
+    public Map<String, String> getResponseHeaders() {
+        return null;  
     }
 
-    public int getInc() {
-        return (Integer) getStateHelper().eval(PropertyKeys.inc, 1);
+    @Override
+    public URL getURL() {
+        return null;  
     }
 
-    public void setInc(int inc) {
-        getStateHelper().put(PropertyKeys.inc, inc);
+    @Override
+    public boolean userAgentNeedsUpdate(FacesContext context) {
+        return false;  
     }
 }

Modified: 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=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java (original)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean2.java Mon Nov 16 14:59:27 2009
@@ -4,8 +4,13 @@
 import javax.faces.bean.ManagedBean;
 import javax.faces.bean.RequestScoped;
 import javax.faces.bean.SessionScoped;
-
-
+import javax.faces.application.ResourceHandler;
+import javax.faces.application.Resource;
+import javax.faces.context.FacesContext;
+import java.io.InputStream;
+import java.io.BufferedReader;
+import java.io.InputStreamReader;
+import java.io.IOException;
 
 
 public class TestBean2 {
@@ -27,6 +32,27 @@
         System.out.println("hello world");
     }
 
+    public void setResource(String param) {
+
+    }
+    
+    public String getResource() {
+           ResourceHandler handler = FacesContext.getCurrentInstance().getApplication().getResourceHandler();
+           Resource resource = handler.createResource("testResource");
+           InputStream istr = resource.getInputStream();
+           BufferedReader rdr = new BufferedReader(new InputStreamReader(istr));
+           StringBuilder strBuf = new StringBuilder();
+           String line = null;
+           try {
+               while ((line = rdr.readLine()) != null) {
+                   strBuf.append(line);
+               }
+           } catch (IOException ex) {
+
+           };
+           return strBuf.toString();
+       }
+    
 
  
 }
\ No newline at end of file

Modified: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean3.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/TestBean3.java?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean3.java (original)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/WEB-INF/java/org/apache/myfaces/javaloader/test/TestBean3.java Mon Nov 16 14:59:27 2009
@@ -1,11 +1,21 @@
 package org.apache.myfaces.javaloader.test;
 
 import org.apache.myfaces.scripting.loaders.java.ScriptingClass;
+import org.apache.myfaces.config.impl.digester.elements.FacesConfig;
+
 import javax.faces.bean.ManagedBean;
 import javax.faces.bean.RequestScoped;
 import javax.faces.bean.SessionScoped;
+import javax.faces.application.ResourceHandler;
+import javax.faces.application.Resource;
+import javax.faces.context.FacesContext;
+import java.io.InputStream;
+import java.io.BufferedReader;
+import java.io.InputStreamReader;
+import java.io.IOException;
+import java.nio.CharBuffer;
 
-@ManagedBean (name="javatestbean")
+@ManagedBean(name = "javatestbean")
 @SessionScoped
 public class TestBean3 {
     String sayHello = "hello worldgggg";
@@ -13,7 +23,7 @@
     String hello3 = "hello from  added attribute 2";
 
     public String getSayHello() {
-        return "Java dynamic  bean Testbean3 bla bla bla - "+TestClass2.hello2 + hello3;
+        return "Java dynamic  bean Testbean3 bla bla bla - " + TestClass2.hello2 + hello3;
     }
 
     public String getSayHello2() {
@@ -26,6 +36,28 @@
         System.out.println("hello world");
     }
 
+    public void setResource(String param) {
+
+    }
+    
 
+    public String getResource() {
+     /*   ResourceHandler handler = FacesContext.getCurrentInstance().getApplication().getResourceHandler();
+        Resource resource = handler.createResource("testResource");
+        InputStream istr = resource.getInputStream();
+        BufferedReader rdr = new BufferedReader(new InputStreamReader(istr));
+        StringBuilder strBuf = new StringBuilder();
+        String line = null;
+        try {
+            while ((line = rdr.readLine()) != null) {
+                strBuf.append(line);
+            }
+        } catch (IOException ex) {
+
+        };
+        return strBuf.toString();
+        */
+        return "hello world";
+    }
 
 }
\ No newline at end of file

Modified: myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/helloWorld.xhtml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/helloWorld.xhtml?rev=880781&r1=880780&r2=880781&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/helloWorld.xhtml (original)
+++ myfaces/extensions/scripting/trunk/examples/myfaces20-example/src/main/webapp/helloWorld.xhtml Mon Nov 16 14:59:27 2009
@@ -28,6 +28,11 @@
                 </h:inputText>
                 <h:commandButton value = "Press me dynamic" action = "#{testbean.doit}" />
                  <grv:testcomponent2 />
+
+
+                Resource Handler Test:
+
+                <h:outputFormat value="#{javatestbean.resource}" />
             </h:panelGrid>
 		</h:form>
 	</ui:define>