You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ha...@apache.org on 2009/02/06 16:23:30 UTC

svn commit: r741591 - in /myfaces/commons/trunk/myfaces-commons-facelets-examples: ./ 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/commons/ src/main/java/o...

Author: hazems
Date: Fri Feb  6 15:23:28 2009
New Revision: 741591

URL: http://svn.apache.org/viewvc?rev=741591&view=rev
Log:
https://issues.apache.org/jira/browse/MFCOMMONS-4

Adding Facelets example module to test components.

Added:
    myfaces/commons/trunk/myfaces-commons-facelets-examples/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/LICENSE.txt
    myfaces/commons/trunk/myfaces-commons-facelets-examples/NOTICE.txt
    myfaces/commons/trunk/myfaces-commons-facelets-examples/pom.xml
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/examples/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/examples/DataFieldHolder.java
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/ExporterBean.java
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/SimpleCar.java
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/renderone/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/renderone/RenderOneBean.java
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/servlet/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/servlet/SourceCodeServlet.java
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/EducationLevel.java
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateEnum.java
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateForm.java
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/apache/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/apache/myfaces/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/apache/myfaces/examples/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/apache/myfaces/examples/resource/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/apache/myfaces/examples/resource/example_messages.properties
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/faces-config.xml
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/layout/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/layout/layout.xhtml
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/listeners/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/listeners/exporterActionListener.xml
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/web.xml
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/css/
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/css/basic.css
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/exporter.xhtml
    myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/index.html

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/LICENSE.txt
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/LICENSE.txt?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/LICENSE.txt (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/LICENSE.txt Fri Feb  6 15:23:28 2009
@@ -0,0 +1,202 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed 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.

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/NOTICE.txt
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/NOTICE.txt?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/NOTICE.txt (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/NOTICE.txt Fri Feb  6 15:23:28 2009
@@ -0,0 +1,16 @@
+=========================================================================
+==  NOTICE file corresponding to section 4(d) of the Apache License,   ==
+==  Version 2.0, in this case for the Apache MyFaces Maven Plugins     ==
+=========================================================================
+
+This product includes software developed by 
+The Apache Software Foundation (http://www.apache.org/).
+
+Portions of this software were originally based on the following:
+
+ - software copyright (c) 2000-2006, Oracle Corp, <http://www.oracle.com/>.
+and are licensed to the Apache Software Foundation under the 
+"Software Grant and Corporate Contribution License Agreement"
+
+See the LICENSE.txt file for information on all licenses 
+associated with this software.

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/pom.xml?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/pom.xml (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/pom.xml Fri Feb  6 15:23:28 2009
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    * 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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <parent>
+        <artifactId>commons12</artifactId>
+        <groupId>org.apache.myfaces.commons</groupId>
+        <version>1.0.1-SNAPSHOT</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.myfaces.commons</groupId>
+    <artifactId>myfaces-commons-facelets-examples12</artifactId>
+    <packaging>war</packaging>
+    <name>Apache MyFaces Commons Facelets Examples</name>
+    <version>1.0.1-SNAPSHOT</version>
+    <url>http://myfaces.apache.org</url>
+    <build>
+        <finalName>myfaces-commons-facelets-examples12</finalName>
+        <plugins>
+            <plugin>
+                <groupId>org.mortbay.jetty</groupId>
+                <artifactId>maven-jetty-plugin</artifactId>
+                <version>6.1.8</version>
+                <configuration>
+                    <scanIntervalSeconds>10</scanIntervalSeconds>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+    <repositories>
+        <repository>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots />
+            <id>apache-maven-snapshots</id>
+            <url>http://people.apache.org/repo/m2-snapshot-repository</url>
+        </repository>
+        <repository>
+            <id>java.net</id>
+            <url>http://download.java.net/maven/1</url>
+            <layout>legacy</layout>
+        </repository>
+    </repositories>
+    <dependencies>
+        <dependency>
+            <groupId>javax.servlet</groupId>
+            <artifactId>servlet-api</artifactId>
+        </dependency>
+        
+        <dependency>
+	    <groupId>com.sun.facelets</groupId>
+	    <artifactId>jsf-facelets</artifactId>
+	    <version>1.1.14</version>
+	</dependency>
+	
+        <dependency>
+            <groupId>org.apache.myfaces.core</groupId>
+            <artifactId>myfaces-api</artifactId>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.myfaces.core</groupId>
+            <artifactId>myfaces-impl</artifactId>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.myfaces.commons</groupId>
+            <artifactId>myfaces-validators12</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.myfaces.commons</groupId>
+            <artifactId>myfaces-converters12</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.myfaces.commons</groupId>
+            <artifactId>myfaces-components12</artifactId>
+            <version>${project.version}</version>
+        </dependency>        
+        <dependency>
+	      <groupId>com.lowagie</groupId>
+	      <artifactId>itext</artifactId>
+        </dependency>  
+        <dependency>
+            <groupId>poi</groupId>
+            <artifactId>poi</artifactId>
+        </dependency>  
+        <dependency>
+            <groupId>jstl</groupId>
+            <artifactId>jstl</artifactId>
+            <version>1.2</version>
+            <scope>runtime</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+        </dependency>
+    </dependencies>
+</project>
\ No newline at end of file

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/examples/DataFieldHolder.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/examples/DataFieldHolder.java?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/examples/DataFieldHolder.java (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/examples/DataFieldHolder.java Fri Feb  6 15:23:28 2009
@@ -0,0 +1,52 @@
+/*
+ * 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.commons.examples;
+
+/**
+ * A typical simple backing bean, that is backed to <code>helloworld.jsp</code>
+ * 
+ */
+public class DataFieldHolder {
+
+    
+    //properties
+    private String name;
+    
+    /**
+     * default empty constructor
+     */
+    public DataFieldHolder(){
+    }
+    
+    //-------------------getter & setter
+    public String getName() {
+        return name;
+    }
+    public void setName(String name) {
+        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";
+    }
+}

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/ExporterBean.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/ExporterBean.java?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/ExporterBean.java (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/ExporterBean.java Fri Feb  6 15:23:28 2009
@@ -0,0 +1,55 @@
+/*
+ * 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.commons.exporter;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author cagatay (latest modification by $Author: skitching $)
+ * @version $Revision: 673833 $ $Date: 2008-07-03 23:58:05 +0200 (Thu, 03 Jul 2008) $
+ */
+public class ExporterBean implements Serializable {
+
+    private List carsList;
+
+    public List getCarsList() {
+        if( carsList == null)
+            carsList = createCarsList();
+        return carsList;
+    }
+
+    public void setCarsList(List carsList) {
+        this.carsList = carsList;
+    }
+    
+    private List createCarsList() {
+        List list  = new ArrayList();
+        
+        for(int i = 0; i < 10; ++i) {
+            list.add( new SimpleCar(i, "row" + i, "value" + i));
+        }
+        return list;
+    }
+    
+    public String export() {
+        return null;
+    }
+}

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/SimpleCar.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/SimpleCar.java?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/SimpleCar.java (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/exporter/SimpleCar.java Fri Feb  6 15:23:28 2009
@@ -0,0 +1,75 @@
+/*
+ * 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.commons.exporter;
+
+import java.io.Serializable;
+
+/**
+ * DOCUMENT ME!
+ * @author Thomas Spiegl (latest modification by $Author: lu4242 $)
+ * @version $Revision: 651110 $ $Date: 2008-04-24 01:46:09 +0200 (Thu, 24 Apr 2008) $
+ */
+public class SimpleCar
+        implements Serializable
+{
+    /**
+     * serial id for serialisation versioning
+     */
+    private static final long serialVersionUID = 1L;
+    private int _id;
+    private String _type;
+    private String _color;
+
+    public SimpleCar(int id, String type, String color)
+    {
+        _id = id;
+        _type = type;
+        _color = color;
+    }
+
+    public int getId()
+    {
+        return _id;
+    }
+
+    public void setId(int id)
+    {
+        _id = id;
+    }
+
+    public String getType()
+    {
+        return _type;
+    }
+
+    public void setType(String type)
+    {
+        _type = type;
+    }
+
+    public String getColor()
+    {
+        return _color;
+    }
+
+    public void setColor(String color)
+    {
+        _color = color;
+    }
+}

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/renderone/RenderOneBean.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/renderone/RenderOneBean.java?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/renderone/RenderOneBean.java (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/renderone/RenderOneBean.java Fri Feb  6 15:23:28 2009
@@ -0,0 +1,107 @@
+/*
+ * 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.commons.renderone;
+
+import java.io.Serializable;
+
+/**
+ * @author Andrew Robinson (latest modification by $Author: skitching $)
+ * @version $Revision: 676967 $ $Date: 2008-07-15 18:57:23 +0200 (Tue, 15 Jul 2008) $
+ */
+public class RenderOneBean implements Serializable
+{
+    private boolean aRendered = false;
+    private boolean cRendered = true;
+    private boolean dRendered = true;
+    private boolean bRendered = true;
+    
+    private Integer index = new Integer("2");
+    
+    /**
+     * @return the index
+     */
+    public Integer getIndex()
+    {
+        return this.index;
+    }
+
+    /**
+     * @return the aRendered
+     */
+    public boolean isARendered()
+    {
+        return this.aRendered;
+    }
+
+    /**
+     * @param rendered the aRendered to set
+     */
+    public void setARendered(boolean rendered)
+    {
+        this.aRendered = rendered;
+    }
+
+    /**
+     * @return the cRendered
+     */
+    public boolean isCRendered()
+    {
+        return this.cRendered;
+    }
+
+    /**
+     * @param rendered the cRendered to set
+     */
+    public void setCRendered(boolean rendered)
+    {
+        this.cRendered = rendered;
+    }
+
+    /**
+     * @return the dRendered
+     */
+    public boolean isDRendered()
+    {
+        return this.dRendered;
+    }
+
+    /**
+     * @param rendered the dRendered to set
+     */
+    public void setDRendered(boolean rendered)
+    {
+        this.dRendered = rendered;
+    }
+
+    /**
+     * @return the bRendered
+     */
+    public boolean isBRendered()
+    {
+        return this.bRendered;
+    }
+
+    /**
+     * @param rendered the bRendered to set
+     */
+    public void setBRendered(boolean rendered)
+    {
+        this.bRendered = rendered;
+    }
+}

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/servlet/SourceCodeServlet.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/servlet/SourceCodeServlet.java?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/servlet/SourceCodeServlet.java (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/commons/servlet/SourceCodeServlet.java Fri Feb  6 15:23:28 2009
@@ -0,0 +1,129 @@
+/*
+ * 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.commons.servlet;
+
+import java.io.BufferedInputStream;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+
+import javax.servlet.ServletException;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+public class SourceCodeServlet extends HttpServlet 
+{
+    public void doGet(HttpServletRequest req, HttpServletResponse res)
+        throws IOException, ServletException
+    {
+        String webPage = req.getServletPath();
+        
+        // remove the '*.source' suffix that maps to this servlet
+        int chopPoint = webPage.lastIndexOf(".source");
+        
+        webPage = webPage.substring(0, chopPoint);
+
+        if(webPage.endsWith(".jsf"))
+        {
+            int jsfChopPoint = webPage.lastIndexOf(".jsf");
+
+            webPage = webPage.substring(0, jsfChopPoint);
+
+            webPage += ".jsp"; // replace jsf with jsp
+
+            // get the actual file location of the requested resource
+            String realPath = getServletConfig().getServletContext().getRealPath(webPage);
+
+            outputFile(res, realPath);
+        }
+        else if(webPage.endsWith(".jsp"))
+        {
+            // get the actual file location of the requested resource
+            String realPath = getServletConfig().getServletContext().getRealPath(webPage);
+
+            outputFile(res, realPath);
+        }
+        else if(webPage.endsWith(".jspx"))
+        {
+            // get the actual file location of the requested resource
+            String realPath = getServletConfig().getServletContext().getRealPath(webPage);
+
+            outputFile(res, realPath);
+        }
+        else if(webPage.endsWith(".xhtml"))
+        {
+            // get the actual file location of the requested resource
+            String realPath = getServletConfig().getServletContext().getRealPath(webPage);
+
+            outputFile(res, realPath);
+        }
+        else
+        {
+            int beginChopPoint = webPage.lastIndexOf("/");
+            int extensionChopPoint = webPage.lastIndexOf(".java");
+
+            webPage = webPage.substring(beginChopPoint+1,extensionChopPoint);
+
+            try
+            {
+
+                // get the actual file location of the requested resource; try it in classes first
+                String realPath = getServletConfig().getServletContext().getRealPath("/WEB-INF/classes/"+webPage.replace('.','/')+".java");
+
+                outputFile(res, realPath);
+            }
+            catch(Exception e)
+            {
+                //classes hasn't worked. How about src?
+                String realPath = getServletConfig().getServletContext().getRealPath("/WEB-INF/src/"+webPage.replace('.','/')+".java");
+
+                outputFile(res, realPath);
+            }
+            
+        }
+    }
+
+    private void outputFile(HttpServletResponse res, String realPath)
+            throws IOException
+    {
+        // output an HTML page
+        res.setContentType("text/plain");
+
+        // print some html
+        ServletOutputStream out = res.getOutputStream();
+
+        // print the file
+        InputStream in = null;
+        try
+        {
+            in = new BufferedInputStream(new FileInputStream(realPath));
+            int ch;
+            while ((ch = in.read()) !=-1)
+            {
+                out.print((char)ch);
+            }
+        }
+        finally {
+            if (in != null) in.close();  // very important
+        }
+    }
+}

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/EducationLevel.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/EducationLevel.java?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/EducationLevel.java (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/EducationLevel.java Fri Feb  6 15:23:28 2009
@@ -0,0 +1,29 @@
+/*
+ * 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.examples.validate;
+
+public enum EducationLevel
+{
+    NONE,
+    PRIMARY,
+    SECUNDARY,
+    UNIVERSITY,
+    MASTER,
+    DOCTOR
+}
\ No newline at end of file

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateEnum.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateEnum.java?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateEnum.java (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateEnum.java Fri Feb  6 15:23:28 2009
@@ -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.
+ */
+package org.apache.myfaces.examples.validate;
+
+public class ValidateEnum
+{
+
+    private EducationLevel level;
+
+    public EducationLevel getLevel()
+    {
+        return level;
+    }
+
+    public void setLevel(EducationLevel level)
+    {
+        this.level = level;
+    }
+    
+}

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateForm.java
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateForm.java?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateForm.java (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/java/org/apache/myfaces/examples/validate/ValidateForm.java Fri Feb  6 15:23:28 2009
@@ -0,0 +1,121 @@
+/*
+ * 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.examples.validate;
+
+/**
+ * @author mwessendorf
+ * @version $Revision: 673801 $ $Date: 2008-07-03 22:58:48 +0200 (Thu, 03 Jul 2008) $
+ */
+public class ValidateForm {
+
+    private String email = null;
+    private String email2 = null;
+    private String creditCardNumber = null;
+    private String url = null;
+    private String regExpr = null;
+
+    private String equal = null;
+    private String equal2 = null;
+
+    private String isbn =null;
+
+
+    public String getEmail() {
+        return email;
+    }
+
+    public void setEmail(String string) {
+        email = string;
+    }
+
+    public String submit(){
+        System.out.println("Action was called.");
+        return ("valid");
+    }
+
+    public String getCreditCardNumber() {
+        return creditCardNumber;
+    }
+    public String getUrl(){
+        return url;
+    }
+    public void setCreditCardNumber(String string) {
+        creditCardNumber = string;
+    }
+    public void setUrl(String string) {
+        url = string;
+    }
+
+    public String getEmail2() {
+        return email2;
+    }
+
+    public void setEmail2(String string) {
+        email2 = string;
+    }
+
+    /**
+     * @return
+     */
+    public String getRegExpr() {
+        return regExpr;
+    }
+
+    /**
+     * @param string
+     */
+    public void setRegExpr(String string) {
+        regExpr = string;
+    }
+
+    /**
+     * @return
+     */
+    public String getEqual2() {
+        return equal2;
+    }
+
+    /**
+     * @param string
+     */
+    public void setEqual2(String string) {
+        equal2 = string;
+    }
+
+    /**
+     * @return
+     */
+    public String getEqual() {
+        return equal;
+    }
+
+    /**
+     * @param string
+     */
+    public void setEqual(String string) {
+        equal = string;
+    }
+
+    public String getIsbn() {
+        return isbn;
+    }
+    public void setIsbn(String isbn) {
+        this.isbn = isbn;
+    }
+}

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/apache/myfaces/examples/resource/example_messages.properties
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/apache/myfaces/examples/resource/example_messages.properties?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/apache/myfaces/examples/resource/example_messages.properties (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/resources/org/apache/myfaces/examples/resource/example_messages.properties Fri Feb  6 15:23:28 2009
@@ -0,0 +1,18 @@
+button_submit = Submit
+email_comma = Email separated by ,
+credit_dot = Credit Card separated by .
+url_comma = Url separated by ,
+isbn_semicolon = ISBN separated by ;
+validate_email = Email
+validate_credit = Credit Card
+validate_url = Url
+validate_enum = Enumeration (NONE,PRIMARY,SECUNDARY,UNIVERSITY,MASTER,DOCTOR)
+validate_regexp = Regular Expression(bat,cat,rat are valid values)
+validate_isbn = ISBN
+validate_base = Base value
+validate_equal = Validate Equal
+validate_notequal = Validate Not Equal
+validate_greaterthan = Validate Greater Than 
+validate_greaterthanequal = Validate Greater Than Equal 
+validate_lessthan = Validate Less Than
+validate_lessthanequal =Validate Less Than Equal
\ No newline at end of file

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/faces-config.xml
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/faces-config.xml?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/faces-config.xml (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/faces-config.xml Fri Feb  6 15:23:28 2009
@@ -0,0 +1,42 @@
+<?xml version='1.0' encoding='UTF-8'?>
+
+<!DOCTYPE faces-config PUBLIC
+  "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+  "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+
+<faces-config>
+    
+  <!-- from project setup -->
+  <application>
+    <view-handler>
+      com.sun.facelets.FaceletViewHandler
+    </view-handler>    
+  </application>
+  
+    <managed-bean>
+        <managed-bean-name>dataFieldHolder</managed-bean-name>
+        <managed-bean-class>org.apache.myfaces.commons.examples.DataFieldHolder</managed-bean-class>
+        <managed-bean-scope>request</managed-bean-scope>
+    </managed-bean>
+    <!-- validation -->
+    <managed-bean>
+        <managed-bean-name>validateForm</managed-bean-name>
+        <managed-bean-class>org.apache.myfaces.examples.validate.ValidateForm</managed-bean-class>
+        <managed-bean-scope>request</managed-bean-scope>
+    </managed-bean>
+    <managed-bean>
+        <managed-bean-name>validateEnum</managed-bean-name>
+        <managed-bean-class>org.apache.myfaces.examples.validate.ValidateEnum</managed-bean-class>
+        <managed-bean-scope>request</managed-bean-scope>
+    </managed-bean>
+    <managed-bean>
+    	<managed-bean-name>exporterBean</managed-bean-name>
+    	<managed-bean-class>org.apache.myfaces.commons.exporter.ExporterBean</managed-bean-class>
+    	<managed-bean-scope>request</managed-bean-scope>
+    </managed-bean>    
+    <managed-bean>
+    	<managed-bean-name>renderOne</managed-bean-name>
+    	<managed-bean-class>org.apache.myfaces.commons.renderone.RenderOneBean</managed-bean-class>
+    	<managed-bean-scope>request</managed-bean-scope>
+    </managed-bean>       
+</faces-config>

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/layout/layout.xhtml
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/layout/layout.xhtml?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/layout/layout.xhtml (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/layout/layout.xhtml Fri Feb  6 15:23:28 2009
@@ -0,0 +1,41 @@
+<!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">
+
+<!--
+/*
+ * 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.
+ */
+//-->    
+
+<head>
+  <meta HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=UTF-8" />
+  <title>MyFaces - the free JSF Implementation</title>
+  <link rel="stylesheet" type="text/css" href="./css/basic.css" />
+</head>
+
+<body>
+
+    <ui:insert name="content">
+    	Include the example here!!!
+    </ui:insert>
+
+</body>
+
+</html>

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/listeners/exporterActionListener.xml
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/listeners/exporterActionListener.xml?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/listeners/exporterActionListener.xml (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/listeners/exporterActionListener.xml Fri Feb  6 15:23:28 2009
@@ -0,0 +1,11 @@
+<!DOCTYPE facelet-taglib PUBLIC
+  "-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN"
+  "http://java.sun.com/dtd/facelet-taglib_1_0.dtd">
+  
+<facelet-taglib>
+  <namespace>http://myfaces.apache.org/commons/components</namespace>
+  <tag>
+    <tag-name>exporterActionListener</tag-name>
+    <handler-class>org.apache.myfaces.commons.exporter.FaceletsExporterActionListenerTag</handler-class>
+  </tag>
+</facelet-taglib>
\ No newline at end of file

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/web.xml?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/web.xml (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/WEB-INF/web.xml Fri Feb  6 15:23:28 2009
@@ -0,0 +1,95 @@
+<?xml version="1.0"?>
+
+<!--
+    * Licensed to the Apache Software Foundation (ASF) under one
+    * or more contributor license agreements.  See the NOTICE file
+    * distributed with this work for additional information
+    * regarding copyright ownership.  The ASF licenses this file
+    * to you under the Apache License, Version 2.0 (the
+    * "License"); you may not use this file except in compliance
+    * with the License.  You may obtain a copy of the License at
+    *
+    *   http://www.apache.org/licenses/LICENSE-2.0
+    *
+    * Unless required by applicable law or agreed to in writing,
+    * software distributed under the License is distributed on an
+    * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    * KIND, either express or implied.  See the License for the
+    * specific language governing permissions and limitations
+    * under the License.
+-->
+<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
+    version="2.4">
+
+    <description>MyProject web.xml</description>
+    
+    <context-param>
+        <param-name>facelets.REFRESH_PERIOD</param-name>
+        <param-value>2</param-value>
+    </context-param>
+
+    <context-param>
+        <param-name>facelets.DEVELOPMENT</param-name>
+        <param-value>true</param-value>
+    </context-param>
+
+    <context-param>
+        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+        <param-value>client</param-value>
+    </context-param>
+	
+	<context-param>
+		<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+		<param-value>.xhtml</param-value>
+	</context-param>
+
+    <context-param>
+        <param-name>com.sun.faces.validateXml</param-name>
+        <param-value>true</param-value>
+        <description>
+            Set this flag to true if you want the JavaServer Faces
+            Reference Implementation to validate the XML in your
+            faces-config.xml resources against the DTD.  Default
+            value is false.
+        </description>
+    </context-param>
+
+    <context-param>
+        <param-name>com.sun.faces.verifyObjects</param-name>
+        <param-value>true</param-value>
+        <description>
+            Set this flag to true if you want the JavaServer Faces
+            Reference Implementation to verify that all of the application
+            objects you have configured (components, converters,
+            renderers, and validators) can be successfully created.
+            Default value is false.
+        </description>
+    </context-param>
+    
+   <context-param>
+    	<param-name>facelets.LIBRARIES</param-name>
+    	<param-value>/WEB-INF/listeners/exporterActionListener.xml</param-value>
+    </context-param>        
+
+    <!-- Faces Servlet -->
+    <servlet>
+        <servlet-name>Faces Servlet</servlet-name>
+        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+        <load-on-startup>1</load-on-startup>
+    </servlet>
+
+
+    <!-- Faces Servlet Mapping -->
+    <servlet-mapping>
+        <servlet-name>Faces Servlet</servlet-name>
+        <url-pattern>*.jsf</url-pattern>
+    </servlet-mapping>
+
+    <!-- Welcome files -->
+    <welcome-file-list>
+        <welcome-file>index.jsp</welcome-file>
+        <welcome-file>index.html</welcome-file>
+    </welcome-file-list>
+
+</web-app>

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/css/basic.css
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/css/basic.css?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/css/basic.css (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/css/basic.css Fri Feb  6 15:23:28 2009
@@ -0,0 +1,646 @@
+body {
+	font-family : arial, verdana, Geneva, Arial, Helvetica, sans-serif;
+    font-size : 12px;
+}
+
+.standard {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+}
+
+.standard_bold {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+    font-weight: bold;
+}
+
+.scrollerTable {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+    padding: 2;
+    border-style: solid;
+    border-width: 1px;
+    width: 400px;
+}
+
+.scroller {
+    padding-left:20px;
+}
+
+.paginator {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+}
+
+
+.standardTable {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+    padding: 2;
+    border-style: solid;
+    border-width: 1px;
+}
+
+.standardTable_Header {
+	color: #000000;
+    background-color: #FFDD00;
+    padding: 3;
+    text-align: center;
+    border: none;
+}
+
+.standardTable_SortHeader {
+    background-color: #FFDD00;
+    color: #000000;
+    padding: 3;
+    text-align: center;
+    border: none;
+    font-weight: bold;
+}
+
+.standardTable_Footer {
+    background-color: #FFFFE0;
+}
+
+.standardTable_Row1 {
+    background-color: #FFFFE0;
+}
+
+.standardTable_Row2 {
+    background-color: #FFFFE0;
+}
+
+.standardTable_Column {
+}
+
+.standardTable_ColumnCentered {
+    text-align: center
+}
+
+a
+{
+	color: #333366;
+    text-decoration: underline;
+    font-size: 12px;
+}
+
+a:hover
+{
+	color: #333366;
+    text-decoration: underline;
+}
+
+.error {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 10px;
+	color: #FF0000;
+}
+
+.sortLink {
+	color: #333366;
+    text-decoration: none;
+}
+
+
+.pageLayout {
+    width:760px;
+    height:100%;
+}
+
+.pageHeader {
+    background-color: #6392C6;
+    text-align: center;
+    vertical-align: middle;
+    height:1px;
+    overflow:visible;
+    color: #FFFFFF;
+    padding: 0px;
+    margin: 0px;
+}
+
+.pageHeader1 {
+}
+.pageHeader2 {
+    width:100%;
+}
+.pageHeader2col1 {
+    background-color: #FFFFFF;
+}
+
+.pageNavigation {
+    text-align: left;
+    vertical-align: top;
+    width: 200px;
+    background-color: #E7EFF7;
+    border: 1px solid #6392C6;
+    padding: 10px;
+}
+
+.pageBody {
+    text-align: left;
+    vertical-align: top;
+    width: 560px;
+    padding: 20px;
+    background-color: #FFFFFF;
+}
+
+.pageFooter {
+    text-align: right;
+    font-size: xx-small;
+    height:1px;
+    overflow:visible;
+    background-color: #6392C6;
+    color: #FFFFFF;
+}
+
+
+
+.navigation {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+    width: 100%;
+}
+
+.navitem {
+	white-space : nowrap;
+    text-decoration : none;
+}
+
+a.navitem:hover,active {
+	white-space : nowrap;
+	text-decoration: none;
+    color: #6392C6;
+}
+
+.navitem_open {
+	white-space : nowrap;
+	text-decoration: none;
+	font-weight : bold;
+}
+
+a.navitem_open:hover,active {
+	white-space : nowrap;
+	text-decoration: none;
+	font-weight : bold;
+    color: #6392C6;
+}
+
+.navitem_active {
+	white-space : nowrap;
+	text-decoration: none;
+	font-weight : bold;
+    background-color: #6392C6;
+	width: 100%;
+    color: #FFFFFF;
+}
+
+a.navitem_active:hover,active {
+	white-space : nowrap;
+	text-decoration: none;
+	font-weight : bold;
+    background-color: #6392C6;
+	width: 100%;
+    color: #FFFFFF;
+}
+
+
+.navseparator {
+    line-height: 12px;
+    border-bottom: 1px solid #A2B7C5;
+}
+
+
+
+.fileUploadInput {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+    width: 250px;
+}
+
+
+
+
+.emptyHeader {
+    background-color: #FFFFFF;
+    border-top: 0px none;
+    border-right: 0px none;
+    border-bottom: 0px none;
+    border-left: 0px none;
+}
+
+
+
+div.titlebar {
+  background: #C7D0D9;
+  color: black;
+  border: 1px solid #8CACBB;
+  padding-left: 1px;
+  padding-right: 1px;
+  padding-top: 1px;
+  padding-bottom: 1px;
+  margin: 1px 1px;
+  clear: both;
+}
+
+/*
+   ------------------------------------------------------------
+   Calendar component
+   ------------------------------------------------------------
+*/
+
+.yearMonthHeader {
+    background-color: #DDDDDD;
+    color: #000000;
+    text-align: center;
+    border: none;
+    font-weight: bold;
+}
+
+.weekHeader {
+    background-color: #E7E7E7;
+    color: #000000;
+    text-align: center;
+    border: none;
+}
+
+.currentDayCell {
+    background-color: #DDDDDD;
+    color: #000000;
+    border: none;
+}
+
+
+/*
+   ------------------------------------------------------------
+   End Calendar component
+   ------------------------------------------------------------
+*/
+
+/*
+   ------------------------------------------------------------
+   Popup component
+   ------------------------------------------------------------
+*/
+
+.popup {
+    background-color:rgb(255,255,255);
+    color: #000000;
+    border: 1px solid #CCCCCC;
+    font-size:smaller;
+    padding: 5px;
+}
+
+.popup table {
+    font-size:smaller;
+}
+
+
+/*
+   ------------------------------------------------------------
+   End popup component
+   ------------------------------------------------------------
+*/
+
+
+.countryFormTable {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+    padding: 2;
+    border-style: solid;
+    border-width: 1px;
+}
+
+.countryFormHeader {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+    padding: 2;
+    border-style: none;
+    background-color: #FFDD00;
+    text-align: center;
+	font-weight : normal;
+}
+
+.countryFormFooter {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+    padding: 2;
+    border-style: none;
+    background-color: #FFDD00;
+    text-align: center;
+	font-weight : normal;
+}
+
+.countryFormLabels {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+    padding: 2;
+    border-style: none;
+    text-align: right;
+	font-weight : bold;
+}
+
+.countryFormInputs {
+	font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+	font-size: 12px;
+	color: #000000;
+    padding: 2;
+    border-style: none;
+}
+
+/*
+   ------------------------------------------------------------
+   Tree component
+   ------------------------------------------------------------
+*/
+
+.nodeFolder
+{
+    font-size: 10px;
+    font-family: Verdana, Geneva, sans-serif;
+    text-decoration: none
+}
+.document
+{
+    color: blue;
+    font-size: 10px;
+    font-family: Verdana, Geneva, sans-serif;
+    text-decoration: none
+}
+.documentSelected
+{
+    color: blue;
+    font-size: 10px;
+    font-family: Verdana, Geneva, sans-serif;
+    text-decoration: none;
+    font-weight: bold
+}
+
+.childCount
+{
+    color: blue;
+    font-size: 10px;
+    font-family: Verdana, Geneva, sans-serif;
+    text-decoration: none
+}
+
+/*
+   ------------------------------------------------------------
+   Panelnavigation
+   ------------------------------------------------------------
+*/
+#subnavigation {
+margin-left: 0px;
+margin-right: 20px;
+padding: 0px 0px 20px 0px;
+border: 1px solid #546359;
+background-color: #EAF4F4;
+}
+
+#subnavigation_outer {
+float: left;
+width: 220px;
+padding: 0px;
+margin: 0px 0px 0px 0px;
+}
+#subnavigation_outer h1  {
+font-size: 1.5em;
+margin: 0px;
+padding: 0px 0px 15px 0px;
+}
+
+/*
+   --------------------------------------------------------------
+    Horizontal Panelnavigation
+   --------------------------------------------------------------
+*/
+#hNav_outer {
+    margin: 0;
+    padding: 0;   
+    height: 60px;
+    width: 800px;
+}
+#hNav_outer ul {    
+    padding: 0;
+    margin: 0;    
+}
+#hNav_outer ul li ul {
+    margin: 0;
+    padding: 0;
+}
+#hNav_outer ul a {
+    text-decoration: none;
+}
+#hNav_outer ul li { /*float the main list items*/
+    margin: 0;
+    float: left;
+    display: block;
+    padding: 5px;
+}
+#hNav_outer ul li ul {
+    display: none;
+}
+#hNav_outer ul li.off ul, #hNav_outer ul li.on ul { /*put the subnav below*/
+    position: absolute;
+    top: 36px;
+    *top: 44px;/*reposition for IE*/    
+    background: #224d6f;    
+    left: 13px;
+    *left: 15px;
+    width: 740px;    
+}
+#hNav_outer ul li.on ul {    
+    display: block;
+    background: #f90;
+}
+#hNav_outer ul li.on:hover ul, #hNav_outer ul li.over ul { /*for ie*/
+    background: #224d6f;
+}
+#hNav_outer ul li a {
+    color: #224d6f;
+    font-weight: bold;
+    display: block;
+    padding: 5;
+}
+#hNav_outer ul li.on a {   
+    color: #fff;
+    background: #f90;
+}
+#hNav_outer ul li.on ul a, #hNav_outer ul li.off ul a {
+    float: left; /*ie doesn't inherit the float*/
+    border: 0;
+    color: #f90;
+    width: auto;    
+}
+#hNav_outer ul li.on:hover ul a, #hNav_outer ul li.over ul li a { /*for ie - the specificity is necessary*/
+    background: #224d6f;
+}
+#hNav_outer ul li.off:hover ul, #hNav_outer ul li.over ul {
+    display: block;
+    z-index: 6000;
+}		
+#hNav_outer ul li.off a:hover, #hNav_outer ul li:hover a, #hNav_outer ul li.over a {
+    background: #29497b;
+    color: #f90;
+}
+#hNav_outer ul li.off a:hover, #hNav_outer ul li.on a:hover { 
+    color: #f90;
+}		
+/*subnav formatting*/
+#hNav_outer ul li.off ul a {
+    display: block;
+    background: #224d6f;
+    color: #fff;    
+}		
+#hNav_outer ul li.on ul a {       
+    display: block;
+    background: #f90;
+    color: #fff;    
+}
+
+/**************************************************
+ * css layers and classes for list navigation list
+ **************************************************/
+#subnavigation ul li  a {
+display:block;
+background-color: #D1E4E4;
+color: #294747;
+text-decoration: none;
+border-bottom: 1px solid #87A8A8;
+padding: 2px 20px;
+margin: 0px;
+}
+
+#subnavigation ul li a:visited {color:#294747;}
+#subnavigation ul li a:hover {color: #FFFFFF;  background-color: #87A8A8;}
+#subnavigation ul li a:active { color:#294747;}
+
+#subnavigation ul li a.selected {
+font-weight: bold;
+color:#294747;
+background-color: #FFFFFF;
+}
+
+#subnavigation ul ul li a {
+padding: 2px 20px 2px 25px;
+margin: 0px;
+background-color: #FFFFFF;}
+
+#subnavigation ul ul li ul li a {
+padding: 2px 20px 2px 30px;
+margin: 0px;
+}
+
+#subnavigation ul {
+list-style-type: none;
+padding: 0px;
+margin: 0px;
+}
+
+#subnavigation li{
+margin: 0px;
+padding: 0px;
+display:inline;
+}
+
+#subnavigation ul.mypage li a {
+padding: 2px 20px 2px 20px;
+margin: 0px;
+background-color: #EAF4F4;
+}
+
+#subnavigation ul.mypage ul li a:hover {color: #FFFFFF;  background-color: #87A8A8;}
+/*
+    body, th, td, input, select {
+        font-family: Verdana, Helvetica, Arial, sans-serif;
+    }
+
+    table, th, td {
+        font-size: small;
+        border: none;
+    }
+
+    .treeHeader {
+        background-color: #bbb;
+        border: 0.75px solid #fff;
+        padding: 2px 3px;
+        text-align: left;
+    }
+
+    .treeFooter {
+        padding: 5px;
+        margin: .67em 2px;
+        margin-top: 0;
+        background-color: #ddd;
+        background-image: url(../images/sw_med_rond.gif);
+        background-repeat: no-repeat;
+        background-position: bottom left;
+    }
+
+    input, .treeFooter {
+        font-size: xx-small;
+        font-size: x-small;
+    }
+
+    .a td {
+        background: #ddd;
+        border-bottom: 1px solid #fff;
+    }
+
+    .b td {
+        background: #efefef;
+        border-bottom: 1px solid #fff;
+    }
+
+    .col1 {
+        border-right: 1px solid #fff;
+        padding: 2px 15px 2px 5px;
+    }
+
+    .col2 {
+        border-left: 1px solid #fff;
+        padding: 2px 15px 2px 5px;
+    }
+
+    .tree {
+       lineheight: 18px;
+       font-family: arial, sans-serif;
+    }
+
+    .treenode {
+       padding: 2px 15px 2px 5px;
+    }
+
+    .treenode a {
+       text-decoration: none;
+    }
+
+    .treenodeSelected {
+       padding: 2px 15px 2px 5px;
+    }
+
+    .treenodeSelected a {
+       text-decoration: none;
+       font-weight: bold;
+    }
+
+    table .selectOneRadio {
+        font-weight: bold;
+    }
+
+
+    .standardList {
+        font-family : verdana, Geneva, Arial, Helvetica, sans-serif;
+        font-size: 12px;
+        color: #000000;
+    }
+
+    */

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/exporter.xhtml
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/exporter.xhtml?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/exporter.xhtml (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/exporter.xhtml Fri Feb  6 15:23:28 2009
@@ -0,0 +1,89 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+    xmlns:ui="http://java.sun.com/jsf/facelets"
+    xmlns:f="http://java.sun.com/jsf/core"
+    xmlns:h="http://java.sun.com/jsf/html"
+    xmlns:mc="http://myfaces.apache.org/commons/components">
+    
+<!--
+/*
+ * 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.
+ */
+//-->    
+
+<ui:composition template="/WEB-INF/layout/layout.xhtml">
+
+    <ui:define name="content">
+
+        <h:form id="myform">
+        <p>This component allows to export the datatable contents to an excel or pdf file.</p>
+
+            <br/>
+
+            <h:dataTable id="tbl_cars"
+                    styleClass="scrollerTable"
+                    headerClass="standardTable_Header"
+                    footerClass="standardTable_Header"
+                    rowClasses="standardTable_Row1,standardTable_Row2"
+                    columnClasses="standardTable_Column,standardTable_ColumnCentered,standardTable_Column"
+                    var="car"
+                    value="#{exporterBean.carsList}">
+           
+                   <h:column>
+                       <f:facet name="header">
+                       <h:outputText value="Id" />
+                       </f:facet>
+                       <h:outputText value="#{car.id}" />
+                   </h:column>
+
+                   <h:column>
+                       <f:facet name="header">
+                      <h:outputText value="Type" />
+                       </f:facet>
+                       <h:outputText value="#{car.type}" />
+                   </h:column>
+
+                   <h:column>
+                       <f:facet name="header">
+                      <h:outputText value="Color" />
+                       </f:facet>
+                       <h:outputText value="#{car.color}" />
+                   </h:column>
+
+            </h:dataTable>
+
+            <br/>
+
+            <h:commandButton id="btn1" action="#{exporterBean.export}" value="Export as excel">
+                <mc:exporterActionListener for="tbl_cars" fileType="XLS" filename="myFile"/>
+            </h:commandButton>            
+
+            <br/>
+
+            <h:commandButton id="btn2" action="#{exporterBean.export}" value="Export as pdf">
+                <mc:exporterActionListener for="tbl_cars" fileType="PDF" filename="myFile"/>
+            </h:commandButton>
+
+
+        </h:form>     
+    </ui:define>
+            
+</ui:composition>
+
+
+</html>

Added: myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/index.html
URL: http://svn.apache.org/viewvc/myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/index.html?rev=741591&view=auto
==============================================================================
--- myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/index.html (added)
+++ myfaces/commons/trunk/myfaces-commons-facelets-examples/src/main/webapp/index.html Fri Feb  6 15:23:28 2009
@@ -0,0 +1,11 @@
+<!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">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta http-equiv="refresh" content="0; url=exporter.jsf" />
+<title>Index</title>
+</head>
+
+<body>
+</body>
+</html>