myfaces-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jak...@apache.org
Subject svn commit: r933278 - in /myfaces/core/trunk: api/src/main/java/javax/faces/application/ impl/src/main/java/org/apache/myfaces/application/ impl/src/test/java/org/apache/myfaces/application/ impl/src/test/java/org/apache/myfaces/view/facelets/ impl/src...
Date Mon, 12 Apr 2010 15:30:11 GMT
Author: jakobk
Date: Mon Apr 12 15:30:11 2010
New Revision: 933278

URL: http://svn.apache.org/viewvc?rev=933278&view=rev
Log:
MYFACES-2646 Missing unit test for application.createComponent(FacesContext context, Resource
componentResource) + removed TODO on Application + removed unnecessary code in ApplicationImpl

Added:
    myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/ApplicationImplJsfTest.java
  (with props)
    myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/TestResourceComponent.java
  (with props)
    myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/
    myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/composite.xhtml
  (with props)
    myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/compositeWithComponentType.xhtml
  (with props)
Modified:
    myfaces/core/trunk/api/src/main/java/javax/faces/application/Application.java
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java
    myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/MockFaceletViewDeclarationLanguage.java

Modified: myfaces/core/trunk/api/src/main/java/javax/faces/application/Application.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/api/src/main/java/javax/faces/application/Application.java?rev=933278&r1=933277&r2=933278&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/application/Application.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/application/Application.java Mon Apr
12 15:30:11 2010
@@ -308,7 +308,6 @@ public abstract class Application
      */
     public UIComponent createComponent(FacesContext context, Resource componentResource)
     {
-        // TODO: IMPLEMENT IMPL JSF 2.0 #60
         Application application = getMyfacesApplicationInstance(context);
         if (application != null)
         {

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java?rev=933278&r1=933277&r2=933278&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java
(original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ApplicationImpl.java
Mon Apr 12 15:30:11 2010
@@ -1114,7 +1114,6 @@ public class ApplicationImpl extends App
                 String className = name.substring(0, name.lastIndexOf('.'));
 
                 component = (UIComponent)ClassUtils.newInstance(className);
-                component.getAttributes().put(Resource.COMPONENT_RESOURCE_KEY, componentResource);
             }
             else
             {

Added: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/ApplicationImplJsfTest.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/ApplicationImplJsfTest.java?rev=933278&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/ApplicationImplJsfTest.java
(added)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/ApplicationImplJsfTest.java
Mon Apr 12 15:30:11 2010
@@ -0,0 +1,236 @@
+/*
+ * 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.application;
+
+import java.beans.BeanInfo;
+import java.io.File;
+import java.net.MalformedURLException;
+import java.net.URL;
+
+import javax.el.VariableMapper;
+import javax.faces.FactoryFinder;
+import javax.faces.application.Resource;
+import javax.faces.component.UIComponent;
+import javax.faces.component.UINamingContainer;
+import javax.faces.component.UIOutput;
+import javax.faces.component.UIViewRoot;
+import javax.faces.context.FacesContext;
+import javax.faces.view.facelets.FaceletContext;
+
+import org.apache.myfaces.config.RuntimeConfig;
+import org.apache.myfaces.test.base.AbstractJsfTestCase;
+import org.apache.myfaces.test.el.MockVariableMapper;
+import org.apache.myfaces.test.mock.MockServletContext;
+import org.apache.myfaces.test.mock.resource.MockResource;
+import org.apache.myfaces.view.facelets.MockFaceletViewDeclarationLanguage;
+import org.apache.myfaces.view.facelets.mock.MockViewDeclarationLanguageFactory;
+import org.easymock.classextension.EasyMock;
+import org.easymock.classextension.IMocksControl;
+
+/**
+ * Test class for ApplicationImpl that extends AbstractJsfTestCase
+ * 
+ * @author Jakob Korherr (latest modification by $Author$)
+ * @version $Revisio$ $Date$
+ */
+public class ApplicationImplJsfTest extends AbstractJsfTestCase
+{
+    
+    private static final String RESOURCE_MSG = "The Resource must be stored in the component's
attribute " +
+                                               "map under the key " + Resource.COMPONENT_RESOURCE_KEY;
+    
+    private static final String BEANINFO_MSG = "The BeanInfo metadata has to be store in
the component's " + 
+                                               "attribute map under the key " + UIComponent.BEANINFO_KEY;
+    
+    private static final String COMPOSITE_RENDERER_MSG = "The rendererType has to be javax.faces.Composite";
+    
+    private static final String TEST_COMPONENT_TYPE = "org.apache.myfaces.MyCustomComponentType";
+    
+    /**
+     * Helper method to assert the RendererType, the Resource and the BeanInfo.
+     * @param component
+     * @param resource
+     * @param metadata
+     */
+    private static void assertRendererTypeResourceBeanInfo(UIComponent component, Resource
resource, BeanInfo metadata)
+    {
+        assertEquals(COMPOSITE_RENDERER_MSG, "javax.faces.Composite", component.getRendererType());
+        assertEquals(RESOURCE_MSG, resource, component.getAttributes().get(Resource.COMPONENT_RESOURCE_KEY));
+        assertEquals(BEANINFO_MSG, metadata, component.getAttributes().get(UIComponent.BEANINFO_KEY));
+    }
+
+    private ApplicationImpl _testApplication;
+    private IMocksControl _mocksControl;
+    private FaceletContext _faceletContext;
+    
+    public ApplicationImplJsfTest(String name)
+    {
+        super(name);
+    }
+    
+    @Override
+    protected void setUp() throws Exception
+    {
+        super.setUp();
+        
+        _mocksControl = EasyMock.createControl();
+        
+        // create a FaceletContext Mock and put it in the FacesContext
+        _faceletContext = _mocksControl.createMock(FaceletContext.class);
+        facesContext.getAttributes().put(FaceletContext.FACELET_CONTEXT_KEY, _faceletContext);
+        
+        // create and configure our ApplicationImpl instance
+        FactoryFinder.setFactory(FactoryFinder.VIEW_DECLARATION_LANGUAGE_FACTORY,
+                MockViewDeclarationLanguageFactory.class.getName());
+        RuntimeConfig runtimeConfig = new RuntimeConfig();
+        _testApplication = new ApplicationImpl(runtimeConfig);
+    }
+
+    @Override
+    protected void tearDown() throws Exception
+    {
+        _mocksControl = null;
+        _faceletContext = null;
+        _testApplication = null;
+        
+        super.tearDown();
+    }
+
+    /**
+     * Tests the creation of a composite component via 
+     * Application.createComponent(FacesContext context, Resource componentResource)
+     */
+    public void testCreateComponentFromResource()
+    {
+        // we need a UINamingContainer for this test
+        application.addComponent(UINamingContainer.COMPONENT_TYPE, UINamingContainer.class.getName());
+        _testApplication.addComponent(UINamingContainer.COMPONENT_TYPE, UINamingContainer.class.getName());
+        
+        // configure FaceletContext mock
+        MockVariableMapper variableMapper = new MockVariableMapper();
+        EasyMock.expect(_faceletContext.getVariableMapper()).andReturn(variableMapper).anyTimes();
+        _faceletContext.setVariableMapper((VariableMapper) EasyMock.anyObject());
+        EasyMock.expectLastCall().anyTimes();
+        _mocksControl.replay();
+
+        // get the VDL
+        UIViewRoot view = facesContext.getViewRoot();
+        MockFaceletViewDeclarationLanguage vdl 
+                = (MockFaceletViewDeclarationLanguage) _testApplication.getViewHandler()
+                    .getViewDeclarationLanguage(facesContext, view.getViewId());
+        
+        // ---- first component test - without any special settings ----------------------------
+        
+        // configure the Resource needed for this test
+        MockResource resource = new MockResource(null, "testlib", null, "composite.xhtml",

+                null, new File("src/test/resources/org/apache/myfaces/application"));
+        
+        // get the BeanInfo metadata
+        BeanInfo metadata = vdl.getComponentMetadata(facesContext, resource);
+        
+        // create the component
+        UIComponent component = _testApplication.createComponent(facesContext, resource);
+        
+        // asserts for the first component
+        assertTrue("The component has to be an UINamingContainer", component instanceof UINamingContainer);
+        assertRendererTypeResourceBeanInfo(component, resource, metadata);
+        
+        // ---- second component test - from a script ------------------------------------------
+        
+        MockResource scriptResource = new MockResource(null, "testlib", null, 
+                "org.apache.myfaces.application.TestResourceComponent.groovy", 
+                null, new File("src/test/resources/org/apache/myfaces/application"));
+        
+        // install the script resource to the VDL-mock
+        vdl.setScriptComponentResource(resource, scriptResource);
+        
+        // create the component
+        component = _testApplication.createComponent(facesContext, resource);
+        
+        // asserts for the second component
+        assertTrue("The component has to be a TestResourceComponent", component instanceof
TestResourceComponent);
+        assertRendererTypeResourceBeanInfo(component, resource, metadata);
+        
+        // remove the script resource again
+        vdl.setScriptComponentResource(resource, null);
+        
+        // ---- third component test - from libaryName.resourceName.class -----------------------
+        
+        MockResource componentResource = new MockResource(null, "org.apache.myfaces.application",
+                null, "TestResourceComponent.xhtml", null,
+                new File("src/test/resources/org/apache/myfaces/application"))
+        {
+
+            /* (non-javadoc)
+             * We have to overwrite getURL() here, because it has to deliver a valid URL
and
+             * we can't get that out of the library and the resource name we set on this
resource.
+             */
+            @Override
+            public URL getURL()
+            {
+                MockServletContext servletContext 
+                        = (MockServletContext) FacesContext.getCurrentInstance()
+                                .getExternalContext().getContext();
+                servletContext.setDocumentRoot(new File("src/test/resources/org/apache/myfaces/application"));
+    
+                try 
+                {
+                    return servletContext.getResource("/testlib/composite.xhtml");
+                } 
+                catch (MalformedURLException e) 
+                {
+                    return null;
+                }
+            }
+            
+        };
+        
+        // get the BeanInfo metadata
+        BeanInfo metadataComponentResource = vdl.getComponentMetadata(facesContext, componentResource);
+        
+        // create the component
+        component = _testApplication.createComponent(facesContext, componentResource);
+        
+        // asserts for the third component
+        assertTrue("The component has to be a TestResourceComponent", component instanceof
TestResourceComponent);
+        assertRendererTypeResourceBeanInfo(component, componentResource, metadataComponentResource);
+        
+        // ---- fourth component test - with a custom componentType ------------------------------
+        
+        // change the resource
+        resource = new MockResource(null, "testlib", null, "compositeWithComponentType.xhtml",

+                null, new File("src/test/resources/org/apache/myfaces/application"));
+        // FIXME resource.setResourceName(resourceName) did not work
+        // this can be changed in the next release of MyFaces test (1.0.0-beta.NEXT)
+        
+        // register the new component type
+        _testApplication.addComponent(TEST_COMPONENT_TYPE, UIOutput.class.getName());
+        
+        // get the BeanInfo metadata
+        metadata = vdl.getComponentMetadata(facesContext, resource);
+        
+        // create the component
+        component = _testApplication.createComponent(facesContext, resource);
+        
+        // asserts for the fourth component
+        assertTrue("The component has to be an instance of UIOutput", component instanceof
UIOutput);
+        assertRendererTypeResourceBeanInfo(component, resource, metadata);
+    }
+    
+}

Propchange: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/ApplicationImplJsfTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/ApplicationImplJsfTest.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Propchange: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/ApplicationImplJsfTest.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/TestResourceComponent.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/TestResourceComponent.java?rev=933278&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/TestResourceComponent.java
(added)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/TestResourceComponent.java
Mon Apr 12 15:30:11 2010
@@ -0,0 +1,32 @@
+/*
+ * 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.application;
+
+import javax.faces.component.UINamingContainer;
+
+/**
+ * Test component for ApplicationImplJsfTest.testCreateComponentFromResource()
+ * 
+ * @author Jakob Korherr (latest modification by $Author$)
+ * @version $Revisio$ $Date$
+ */
+public class TestResourceComponent extends UINamingContainer
+{
+
+}

Propchange: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/TestResourceComponent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/TestResourceComponent.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Propchange: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/application/TestResourceComponent.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/MockFaceletViewDeclarationLanguage.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/MockFaceletViewDeclarationLanguage.java?rev=933278&r1=933277&r2=933278&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/MockFaceletViewDeclarationLanguage.java
(original)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/MockFaceletViewDeclarationLanguage.java
Mon Apr 12 15:30:11 2010
@@ -19,41 +19,43 @@
 package org.apache.myfaces.view.facelets;
 
 import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
 
 import javax.el.ELException;
 import javax.faces.FacesException;
+import javax.faces.application.Resource;
 import javax.faces.component.UIViewRoot;
 import javax.faces.context.FacesContext;
 import javax.faces.context.ResponseWriter;
 
-import org.apache.myfaces.view.facelets.Facelet;
-import org.apache.myfaces.view.facelets.FaceletFactory;
-import org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage;
 import org.apache.myfaces.view.facelets.compiler.Compiler;
 
 /**
  * Expose protected api of FaceletViewDeclarationLanguage to 
  * junit tests.
  * 
- * @author Leonardo
- *
+ * @author Leonardo Uribe (latest modification by $Author$)
+ * @version $Revisio$ $Date$
  */
 public class MockFaceletViewDeclarationLanguage extends
         FaceletViewDeclarationLanguage
 {
 
+    private String _renderedViewId;
+    private Map<Resource, Resource> _scriptComponentResources;
+    
     public MockFaceletViewDeclarationLanguage(FacesContext context)
     {
         super(context);
     }
     
-    private String _renderedViewId;
-    
     public void buildView(FacesContext context, UIViewRoot view, String xmlFile) throws IOException
     {
         _renderedViewId = xmlFile;
         buildView(context, view);
     }
+    
     @Override
     public String getRenderedViewId(FacesContext context, String actionId)
     {
@@ -155,6 +157,38 @@ public class MockFaceletViewDeclarationL
         super.sendSourceNotFound(context, message);
     }
 
+    @Override
+    public Resource getScriptComponentResource(FacesContext context,
+            Resource componentResource)
+    {
+        if (_scriptComponentResources != null)
+        {
+            Resource installedResource = _scriptComponentResources.get(componentResource);
+            if (installedResource != null)
+            {
+                // if we have a Resource installed for this componentResource, return it
+                return installedResource;
+            }
+        }
+        return super.getScriptComponentResource(context, componentResource);
+    }
+    
+    /**
+     * This method sets the scriptResource for a given componentResource so that
+     * a call to getScriptComponentResource() with the given componentResource
+     * will return the installed scriptResource.
+     * @param componentResource
+     * @param scriptResource
+     */
+    public void setScriptComponentResource(Resource componentResource, Resource scriptResource)
+    {
+        if (_scriptComponentResources == null)
+        {
+            _scriptComponentResources = new HashMap<Resource, Resource>();
+        }
+        _scriptComponentResources.put(componentResource, scriptResource);
+    }
+    
     //public Facelet getFacelet(String viewId) throws IOException
     //{
     //    return super._getFacelet(viewId);

Added: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/composite.xhtml
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/composite.xhtml?rev=933278&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/composite.xhtml
(added)
+++ myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/composite.xhtml
Mon Apr 12 15:30:11 2010
@@ -0,0 +1,36 @@
+<!--
+  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.
+-->
+<!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:h="http://java.sun.com/jsf/html"
+      xmlns:f="http://java.sun.com/jsf/core"
+      xmlns:ui="http://java.sun.com/jsf/facelets"
+      xmlns:cc="http://java.sun.com/jsf/composite">
+<head>
+    <title>This will not be present in rendered output</title>
+</head>
+<body>
+<cc:interface name="composite">
+</cc:interface>
+<cc:implementation>
+  <div>
+    composite
+  </div>
+</cc:implementation>
+</body>
+</html>

Propchange: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/composite.xhtml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/composite.xhtml
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/compositeWithComponentType.xhtml
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/compositeWithComponentType.xhtml?rev=933278&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/compositeWithComponentType.xhtml
(added)
+++ myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/compositeWithComponentType.xhtml
Mon Apr 12 15:30:11 2010
@@ -0,0 +1,36 @@
+<!--
+  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.
+-->
+<!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:h="http://java.sun.com/jsf/html"
+      xmlns:f="http://java.sun.com/jsf/core"
+      xmlns:ui="http://java.sun.com/jsf/facelets"
+      xmlns:cc="http://java.sun.com/jsf/composite">
+<head>
+    <title>This will not be present in rendered output</title>
+</head>
+<body>
+<cc:interface name="compositeWithComponentType" componentType="org.apache.myfaces.MyCustomComponentType">
+</cc:interface>
+<cc:implementation>
+  <div>
+    compositeWithComponentType
+  </div>
+</cc:implementation>
+</body>
+</html>

Propchange: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/compositeWithComponentType.xhtml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/application/testlib/compositeWithComponentType.xhtml
------------------------------------------------------------------------------
    svn:mime-type = text/plain



Mime
View raw message