[richfaces-svn-commits] JBoss Rich Faces SVN: r2399 - trunk/docs/userguide/en/src/main/docbook/modules.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Wed Aug 22 10:12:02 EDT 2007
Author: vkorluzhenko
Date: 2007-08-22 10:12:01 -0400 (Wed, 22 Aug 2007)
New Revision: 2399
Added:
trunk/docs/userguide/en/src/main/docbook/modules/RFCGettingStarted.xml
trunk/docs/userguide/en/src/main/docbook/modules/RFCSettings.xml
Removed:
trunk/docs/userguide/en/src/main/docbook/modules/RFCdocumentroadmap.xml
trunk/docs/userguide/en/src/main/docbook/modules/RFCsetwebappl.xml
trunk/docs/userguide/en/src/main/docbook/modules/a4jUGskinnability.xml
Log:
http://jira.jboss.com/jira/browse/RF-655 - table of content worked over
Added: trunk/docs/userguide/en/src/main/docbook/modules/RFCGettingStarted.xml
===================================================================
--- trunk/docs/userguide/en/src/main/docbook/modules/RFCGettingStarted.xml (rev 0)
+++ trunk/docs/userguide/en/src/main/docbook/modules/RFCGettingStarted.xml 2007-08-22 14:12:01 UTC (rev 2399)
@@ -0,0 +1,241 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<chapter id="GettingStarted" xreflabel="GettingStarted">
+ <?dbhtml filename="GettingStarted.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>MyFaces</keyword>
+
+ <keyword>JSF</keyword>
+
+ <keyword>RichFaces</keyword>
+
+ </keywordset>
+ </chapterinfo>
+ <title>Getting Started with RichFaces</title>
+ <section id="DownloadingAjax4jsf">
+ <?dbhtml filename="DownloadingAjax4jsf.html" ?>
+ <title>Downloading RichFaces 3.1.0</title>
+ <para>The latest release of <property>RichFaces</property> is available for download at:<simplelist>
+ <member>
+ <ulink url="http://labs.jboss.com/jbossrichfaces/downloads"
+ >http://labs.jboss.com/jbossrichfaces/downloads</ulink>
+ </member>
+ </simplelist> in the <property>RichFaces</property> project area under JBoss.</para>
+ </section>
+ <section id="Installation">
+ <?dbhtml filename="Installation.html" ?>
+ <title>Installation</title>
+ <itemizedlist>
+ <listitem> Unzip <emphasis>
+ <property>"ajax4jsf.zip"</property>
+ </emphasis> file to the chosen folder. </listitem>
+ <listitem> Copy <emphasis>
+ <property>"ajax4jsf.jar"</property>
+ </emphasis> and <emphasis>
+ <property>"oscache-2.3.2.jar"</property>
+ </emphasis> files into the <emphasis>
+ <property>"WEB-INF/lib"</property>
+ </emphasis> folder of your application. </listitem>
+ <note>
+ <title>Note:</title>
+ <para>Starting from Ajax4jsf 1.1.1, the oscache library is not required to be in the
+ classpath anymore. </para>
+ </note>
+ <listitem> Add the following content into the <emphasis>
+ <property>"WEB-INF/web.xml"</property>
+ </emphasis> file of your application: <programlisting role="XML"><![CDATA[<filter>
+ <display-name>Ajax4jsf Filter</display-name>
+ <filter-name>ajax4jsf</filter-name>
+ <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>ajax4jsf</filter-name>
+ <servlet-name>Faces Servlet</servlet-name>
+ <dispatcher>REQUEST</dispatcher>
+ <dispatcher>FORWARD</dispatcher>
+ <dispatcher>INCLUDE</dispatcher>
+ </filter-mapping>]]></programlisting>
+ <note>
+ <title>Note:</title>
+ <para>You can copy and paste the above text from the <emphasis>
+ <property>"README.txt"</property>
+ </emphasis> file.</para>
+ </note>
+ </listitem>
+ <listitem>
+
+ <para>Add the following line for each JSP page of your application where you are going to
+ bring in Ajax functionality.</para>
+ <programlisting role="XML"> <![CDATA[<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>]]></programlisting>
+ <para>For XHTML pages:</para>
+ <programlisting role="XML"><xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"></programlisting>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section id="SimpleAJAXEchoProject">
+ <?dbhtml filename="SimpleAJAXEchoProject.html" ?>
+ <title>Simple Ajax Echo Project </title>
+ <para> In our JSF project you need only one JSP page that has a form with a couple of child
+ tags: <emphasis role="bold">
+ <property><h:inputText></property>
+ </emphasis> and <emphasis role="bold">
+ <property><h:outputText></property>
+ </emphasis>. </para>
+ <para>This simple application let you input some text into the <emphasis role="bold">
+ <property><h:inputText></property>
+ </emphasis>, send data to the server, and see the server response as a value of <emphasis
+ role="bold">
+ <property><h:outputText></property>
+ </emphasis>. </para>
+ <section id="JSPPage">
+ <?dbhtml filename="JSPPage.html"?>
+ <title>JSP Page</title>
+ <para>Here is the necessary page (echo.jsp):</para>
+ <programlisting role="JSP"> <![CDATA[<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+ <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+ <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+ <html>
+ <head>
+ <title>repeater </title>
+ </head>
+ <body>
+ <f:view>
+ <h:form>
+ <h:inputText size="50" value="#{bean.text}" >
+ <a4j:support event="onkeyup" reRender="rep"/>
+ </h:inputText>
+ <h:outputText value="#{bean.text}" id="rep"/>
+ </h:form>
+ </f:view>
+ </body>
+ </html>]]></programlisting>
+ <para>The only line that distinguishes this page from a "regular" JSF one is</para>
+ <programlisting role="XML"><![CDATA[<a4j:support event="onkeyup" reRender="rep"/>]]></programlisting>
+ <para>The line adds an Ajax support to the parent <emphasis role="bold">
+ <property><h:inputText></property>
+ </emphasis> tag. This support is bound to "onkeyup" JavaScript event, so
+ that each time when this event is fired on the parent tag, our application sends an Ajax
+ request to the server. It means that the text field pointed to our managed bean property
+ contains up-to-date value of our input. </para>
+ <para> The value of <emphasis>
+ <property>"reRender"</property>
+ </emphasis> attribute of the <emphasis role="bold">
+ <property><a4j:support></property>
+ </emphasis> tag defines which part(s) of our page is (are) to be updated. In this case, the
+ only part of the page to update is the <emphasis role="bold">
+ <property><h:outputText></property>
+ </emphasis> tag because its ID value matches to the value of <emphasis>
+ <property>"reRender"</property>
+ </emphasis> attribute. As you see, it's not difficult to update multiple elements
+ on the page, only list their IDs as the value of <emphasis>
+ <property>"reRender"</property>
+ </emphasis>. </para>
+ </section>
+ <section id="DataBean">
+ <?dbhtml filename="DataBean.html"?>
+ <title>Data Bean</title>
+ <para>In order to build this application, you should create a managed bean:</para>
+ <programlisting role="JAVA">package demo;
+
+ public class Bean {
+ private String text;
+ public Bean() {
+ }
+ public String getText() {
+ return text;
+ }
+ public void setText(String text) {
+ this.text = text;
+ }
+ }</programlisting>
+ </section>
+ <section id="faces-config.xml">
+ <?dbhtml filename="faces-config.xml.html"?>
+ <title>faces-config.xml</title>
+ <para>Next, it's necessary to register your bean inside of the faces-config.xml file:</para>
+ <programlisting role="XML"> <![CDATA[<?xml version="1.0" encoding="UTF-8"?>
+ <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
+ "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
+ <faces-config>
+ <managed-bean>
+ <managed-bean-name>bean</managed-bean-name>
+ <managed-bean-class>demo.Bean</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ <managed-property>
+ <property-name>text</property-name>
+ <value/>
+ </managed-property>
+ </managed-bean>
+ </faces-config>]]></programlisting>
+ <para>
+ <note>
+ <title>Note:</title>
+ <para>Nothing that relates directly to Ajax4jsf is required in the configuration
+ file.</para>
+ </note>
+ </para>
+ </section>
+ <section id="Web.xml">
+ <?dbhtml filename="Web.xml.html"?>
+ <title>Web.xml</title>
+ <para>It is also necessary to add jar files (see <ulink
+ url="GettingStartedWithAjax4jsf.html#Installation">installation chapter</ulink>) and
+ modify the "web.xml" file: </para>
+ <programlisting role="XML"> <![CDATA[<?xml version="1.0"?>
+ <web-app version="2.4" 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">
+
+ <display-name>a4jEchoText</display-name>
+ <context-param>
+ <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+ <param-value>server</param-value>
+ </context-param>
+ <filter>
+ <display-name>Ajax4jsf Filter</display-name>
+ <filter-name>ajax4jsf</filter-name>
+ <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>ajax4jsf</filter-name>
+ <servlet-name>Faces Servlet</servlet-name>
+ <dispatcher>REQUEST</dispatcher>
+ <dispatcher>FORWARD</dispatcher>
+ <dispatcher>INCLUDE</dispatcher>
+ </filter-map>
+ <listener>
+ <listener-class>
+ com.sun.faces.config.ConfigureListener
+ </listener-class>
+ </listener>
+
+ <!-- Faces Servlet -->
+ <servlet>
+ <servlet-name>Faces Servlet</servlet-name>
+ <servlet-class>
+ javax.faces.webapp.FacesServlet
+ </servlet-class>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+
+ <!-- Faces Servlet Mapping -->
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+ <login-config>
+ <auth-method>BASIC</auth-method>
+ </login-config>
+ </web-app>]]></programlisting>
+ <para>Now your application should work.</para>
+ </section>
+ <section id="Deployment">
+ <?dbhtml filename="Deployment.html"?>
+ <title>Deployment</title>
+ <para>Finally, you should be able to place this application on your Web server.To start your
+ project, point your browser at <ulink url="http://localhost:8080/a4jEchoText/echo.jsf"
+ >http://localhost:8080/a4jEchoText/echo.jsf</ulink>
+ </para>
+ </section>
+ </section>
+</chapter>
Added: trunk/docs/userguide/en/src/main/docbook/modules/RFCSettings.xml
===================================================================
--- trunk/docs/userguide/en/src/main/docbook/modules/RFCSettings.xml (rev 0)
+++ trunk/docs/userguide/en/src/main/docbook/modules/RFCSettings.xml 2007-08-22 14:12:01 UTC (rev 2399)
@@ -0,0 +1,215 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<chapter id="SettingsForDifferentEnvironments" xreflabel="SettingsForDifferentEnvironments">
+ <?dbhtml filename="SettingsForDifferentEnvironments.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>MyFaces</keyword>
+
+ <keyword>JSF</keyword>
+
+ <keyword>RichFaces</keyword>
+
+ </keywordset>
+ </chapterinfo>
+
+ <title>Settings for different environments</title>
+ <para>RichFaces comes with support for all tags (components) included in the JavaServer Faces
+ specification. To add RichFaces capabilities to the existing JSF project you should just put the
+ RichFaces libraries into the lib folder of the project and add filter mapping. The behavior of
+ the existing project doesn't change just because of RichFaces.</para>
+ &wadParams;
+ <section id="SunJSFRI">
+ <?dbhtml filename="SunJSFRI.html"?>
+ <title>Sun JSF RI</title>
+ <para>RichFaces works with any implementation of <property>JSF</property> (both JSF 1.1 and JSF
+ 1.2) and with most <property>JSF</property> component libraries without any additional
+ settings. For more information look at:</para>
+
+ <simplelist>
+ <member>
+ <ulink url="http://java.sun.com/javaee/javaserverfaces/">java.sun.com</ulink>
+ </member>
+ </simplelist>
+
+ </section>
+ <section id="ApacheMyFaces">
+ <?dbhtml filename="ApacheMyFaces.html"?>
+ <title>Apache MyFaces</title>
+ <para>RichFaces works with all <property>Apache MyFaces</property> versions (1.1.1 - 1.1.5)
+ including specific libraries like Tomahawk Sandbox and Trinidad (the previous ADF Faces).
+ However, there are some considerations to take into account for configuring applications to
+ work with <property>MyFaces</property> and RichFaces.</para>
+ <para>There are some problems with different filters defined in the web.xml file clashing. To
+ avoid these problems, the RichFaces filter must be the first one among other filters in the
+ web.xml configuration file.</para>
+ <para>For more information look at:<ulink url="http://myfaces.apache.org"
+ >http://myfaces.apache.org</ulink></para>
+ <para> There's one more problem while using <property>MyFaces + Seam</property>. If you
+ use this combination you should use <emphasis role="bold">
+ <property><a4j:page></property>
+ </emphasis> inside<emphasis role="bold">
+ <property><f:view></property>
+ </emphasis>(right after it in your code) wrapping another content inside your pages because of
+ some problems in realization of <emphasis role="bold">
+ <property><f:view></property>
+ </emphasis> in myFaces. </para>
+ <para>The problem is to be overcome in the nearest future.</para>
+ </section>
+ <section id="FaceletsSupport">
+ <?dbhtml filename="FaceletsSupport.html"?>
+ <title>Facelets Support</title>
+ <para>A high-level support for <property>Facelets</property> is one of our main support
+ features. When working with RichFaces, there is no difference what release of
+ <property>Facelets</property> is used. </para>
+ <para>You should also take into account that some JSF frameworks such as
+ <property>Facelets</property> use their own ViewHandler and need to have it first in the chain
+ of ViewHandlers and the RichFaces AjaxViewHandler is not an exception. At first RichFaces
+ installs its ViewHandler in any case, so in case of two frameworks, for example RichFaces +
+ Facelets, no changes in settings are required. Although, when more then one framework (except
+ RichFaces) is used, it's possible to use the VIEW_HANDLERS parameter defining these frameworks
+ view handlers according to its usage order in it. For example, the declaration:</para>
+
+ <para>
+ <emphasis role="bold">Example:</emphasis>
+ </para>
+ <programlisting role="XML"> <context-param>
+ <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
+ <param-value>com.sun.facelets.FaceletViewHandler</param-value>
+ </context-param></programlisting>
+ <para>says that <property>Facelets</property> will officially be the first, however
+ AjaxViewHandler will be a little ahead temporarily to do some small, but very important job. </para>
+ <note>
+ <title>Note:</title>
+ <para>In this case you don't have to define <property>FaceletViewHandler</property>
+ in the WEB-INF/faces-config.xml.</para>
+ </note>
+ </section>
+ <section id="JBossSeamSupport">
+ <?dbhtml filename="JBossSeamSupport.html"?>
+ <title>JBoss Seam Support</title>
+ <para>RichFaces now works out-of-the-box with <property>JBoss Seam </property>and Facelets
+ running inside JBoss AS 4.0.4 and higher. There is no more shared JAR files needed. You just
+ have to package the RichFaces library with your application. </para>
+ <para> Your web.xml still must be like this: </para>
+ <programlisting role="XML"><![CDATA[web-app version="2.4"
+ 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">
+
+ <!-- Seam -->
+ <listener>
+ <listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
+ </listener>
+
+ <!-- richfaces -->
+ <filter>
+ <display-name>RichFaces Filter</display-name>
+ <filter-name>richfaces</filter-name>
+ <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>richfaces</filter-name>
+ <url-pattern>*.seam</url-pattern>
+ </filter-mapping>
+
+ <!-- Propagate conversations across redirects -->
+ <filter>
+ <filter-name>Seam Redirect Filter</filter-name>
+ <filter-class>org.jboss.seam.servlet.SeamRedirectFilter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>Seam Redirect Filter</filter-name>
+ <url-pattern>*.seam</url-pattern>
+ </filter-mapping>
+
+ <filter>
+ <filter-name>Seam Exception Filter</filter-name>
+ <filter-class>org.jboss.seam.servlet.SeamExceptionFilter</filter-class>
+ </filter>
+
+ <filter-mapping>
+ <filter-name>Seam Exception Filter</filter-name>
+ <url-pattern>*.jsf</url-pattern>
+ </filter-mapping>
+
+ <!-- JSF -->
+ <context-param>
+ <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+ <param-value>client</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
+ <param-value>com.sun.facelets.FaceletViewHandler</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>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>com.sun.faces.validateXml</param-name>
+ <param-value>true</param-value>
+ </context-param>
+ <context-param>
+ <param-name>com.sun.faces.verifyObjects</param-name>
+ <param-value>true</param-value>
+ </context-param>
+ <context-param>
+ <param-name>org.richfaces.SKIN</param-name>
+ <param-value>DEFAULT</param-value>
+ </context-param>
+
+ <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>*.seam</url-pattern>
+ </servlet-mapping>
+
+ <!-- MyFaces -->
+ <listener>
+ <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
+ </listener>
+</web-app>]]> </programlisting>
+ <para>Only one issue still persists while using <property>Seam</property> with MyFaces. Look at
+ myFaces part of this section.</para>
+ </section>
+ <section id="Portlet Support">
+ <title>Portlet Support</title>
+ <para><property>Portlets</property> have support since version Ajax4jsf 1.1.1. This support is
+ improved in Richfaces 3.1.0. Provide your feedback on compatible with RichFaces if you face
+ some problems.</para>
+ </section>
+ <section id="Sybase EAServer">
+ <title>Sybase EAServer</title>
+ <para>The load-on-startup for the Faces Servlet had to be set to 0 in web.xml.</para>
+
+ <para>
+ <emphasis role="bold">Example:</emphasis>
+ </para>
+ <programlisting role="XML"><![CDATA[...
+ <servlet>
+ <servlet-name>Faces Servlet</servlet-name>
+ <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+ <load-on-startup>0</load-on-startup>
+ </servlet>
+...
+]]></programlisting>
+ <para> This is because, EAServer calls servlet init() before the ServletContextInitializer. Not
+ an EAServer bug, this is in Servlet 2.3 spec.</para>
+ </section>
+</chapter>
Deleted: trunk/docs/userguide/en/src/main/docbook/modules/RFCdocumentroadmap.xml
===================================================================
--- trunk/docs/userguide/en/src/main/docbook/modules/RFCdocumentroadmap.xml 2007-08-22 13:37:24 UTC (rev 2398)
+++ trunk/docs/userguide/en/src/main/docbook/modules/RFCdocumentroadmap.xml 2007-08-22 14:12:01 UTC (rev 2399)
@@ -1,96 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "docbookV4.2/docbookx.dtd" []> -->
-<chapter id="DocumentRoadmap" xreflabel="DocumentRoadmap">
-<?dbhtml filename="DocumentRoadmap.html"?>
-
- <chapterinfo>
- <keywordset>
- <keyword>RichFaces</keyword>
-
- <keyword>JSF</keyword>
-
- <keyword>Ajax4jsf</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Roadmap to Learning RichFaces</title>
-
- <para>In this Developer Guide, you will learn how to get up and running
- quickly with <property>RichFaces</property>. The Developer Guide covers
- everything from system requirements to how to use each particular component.
- It is also supplemented by a <ulink
- url="http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone/docs/tlddoc/index.html">RichFaces Tag
- Library Reference</ulink> and a <ulink
- url="http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone/docs/apidoc/index.html">RichFaces API
- Reference</ulink>.</para>
-
- <section id="BackgroundKnowledge">
- <?dbhtml filename="BackgroundKnowledge.html"?>
- <title>Background Knowledge</title>
-
- <para>In order to take full advantage of this guide, you do need to start
- out with some knowledge of JavaServer Faces. Some understanding of
- <property>Facelets</property> and <property>JBoss Seam</property> would
- also be beneficial. To get extra information on these topics, follow these
- links to the appropriate external Web site:</para>
-
- <simplelist>
- <member><ulink
- url="http://java.sun.com/javaee/javaserverfaces/">JavaServer
- Faces</ulink></member>
-
- <member><ulink url="http://myfaces.apache.org/index.html">Apache
- MyFaces</ulink></member>
-
- <member><ulink
- url="https://facelets.dev.java.net/">Facelets</ulink></member>
-
- <member><ulink url="http://www.jboss.com/products/seam">JBoss
- Seam</ulink></member>
- </simplelist>
- </section>
-
- <section id="Ajax4jsf">
- <?dbhtml filename="Ajax4jsf.html"?>
- <title>Ajax4jsf</title>
-
- <para>Also, while working through this guide keep in mind that the
- RichFaces library is based on the Ajax4jsf framework and needs a properly
- set up Ajax4jsf library in order to work. This means that you should also
- learn know something about Ajax4jsf to get the most out RichFaces. To find
- out more about Ajax4jsf go to the <ulink url="http://labs.jboss.com/portal/jbossajax4jsf">official Ajax4jsf
- project site</ulink>.</para>
- </section>
-
- <!--
- <para>To get support on the project, contact the support team:</para>
-
- <itemizedlist>
- <listitem>
- Write on the mailing list of the
-
- <ulink
- url="http://www.jboss.org/projects/jbossrichfaces">RichFaces</ulink>
-
- project
- </listitem>
-
- <listitem>
- Write in the
-
- <ulink url="http://forum.exadel.com/index.php">support</ulink>
-
- topic on the
-
- <ulink url="http://forum.exadel.com/index.php">official Exadel site
- forum</ulink>
- </listitem>
-
- <listitem>
- Sent an email to
-
- <ulink url="mailto:support at exadel.com">support at exadel.com</ulink>
- </listitem>
- </itemizedlist>
--->
-</chapter>
\ No newline at end of file
Deleted: trunk/docs/userguide/en/src/main/docbook/modules/RFCsetwebappl.xml
===================================================================
--- trunk/docs/userguide/en/src/main/docbook/modules/RFCsetwebappl.xml 2007-08-22 13:37:24 UTC (rev 2398)
+++ trunk/docs/userguide/en/src/main/docbook/modules/RFCsetwebappl.xml 2007-08-22 14:12:01 UTC (rev 2399)
@@ -1,461 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<chapter id="SettingsForDifferentEnvironments" xreflabel="SettingsForDifferentEnvironments">
- <?dbhtml filename="SettingsForDifferentEnvironments.html"?>
-<chapterinfo>
- <keywordset>
- <keyword>MyFaces</keyword>
-
- <keyword>JSF</keyword>
-
- <keyword>RichFaces</keyword>
-
- </keywordset>
- </chapterinfo>
-
- <title>Settings for different environments</title>
- <para>RichFaces comes with support for all tags (components) included in the
- JavaServer Faces specification. To add RichFaces capabilities to the existing
- JSF project you should just put the RichFaces libraries into the lib folder of
- the project and add filter mapping. The behavior of the existing project
- doesn't change just because of RichFaces.</para>
-&wadParams;
-<section id="SunJSFRI">
-<?dbhtml filename="SunJSFRI.html"?>
- <title>Sun JSF RI</title>
- <para>RichFaces works with any implementation of <property>JSF</property> (both JSF 1.1 and
- JSF 1.2) and with most <property>JSF</property> component libraries without any additional settings.
- For more information look at:</para>
-
-<simplelist>
-<member>
- <ulink url="http://java.sun.com/javaee/javaserverfaces/">java.sun.com</ulink>
-</member>
-</simplelist>
-
- </section>
- <section id="ApacheMyFaces">
- <?dbhtml filename="ApacheMyFaces.html"?>
- <title>Apache MyFaces</title>
- <para>RichFaces works with all <property>Apache MyFaces</property> versions (1.1.1 - 1.1.5)
- including specific libraries like Tomahawk Sandbox and
- Trinidad (the previous ADF Faces). However, there are some considerations
- to take into account for configuring applications to work with <property>MyFaces</property> and
- RichFaces.</para>
- <para>There are some problems with different filters defined in
- the web.xml file clashing. To avoid these problems, the RichFaces filter
- must be the first one among other filters in the web.xml configuration
- file.</para>
- <para>For more information look at:<ulink url="http://myfaces.apache.org">http://myfaces.apache.org</ulink></para>
- <para>
- There's one more problem while using <property>MyFaces + Seam</property>. If you use this combination you should use
- <emphasis role="bold">
- <property><a4j:page></property>
- </emphasis> inside<emphasis role="bold">
- <property><f:view></property>
- </emphasis>(right after it in your code) wrapping another content
- inside your pages because of some problems in realization of <emphasis role="bold">
- <property><f:view></property>
- </emphasis> in myFaces.
- </para>
- <para>The problem is to be overcome in the nearest future.</para>
- </section>
- <section id="FaceletsSupport">
- <?dbhtml filename="FaceletsSupport.html"?>
- <title>Facelets Support</title>
- <para>A high-level support for <property>Facelets</property> is one of our main support
- features. When working with RichFaces, there is no difference what release
- of <property>Facelets</property> is used. </para>
- <para>You should also take into account that some JSF frameworks such as <property>Facelets</property> use their own
- ViewHandler and need to have it first in the chain of ViewHandlers and the
- RichFaces AjaxViewHandler is not an exception. At first RichFaces installs its ViewHandler in any case, so in case of two frameworks, for example RichFaces + Facelets, no changes in settings are required. Although, when more then one framework (except RichFaces) is used, it's possible to use the VIEW_HANDLERS parameter defining these frameworks view handlers according to its usage order in it.
- For example, the
- declaration:</para>
-
- <para>
- <emphasis role="bold">Example:</emphasis>
- </para>
- <programlisting role="XML"> <context-param>
- <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
- <param-value>com.sun.facelets.FaceletViewHandler</param-value>
- </context-param></programlisting>
- <para>says that <property>Facelets</property> will officially be the first, however AjaxViewHandler
- will be a little ahead temporarily to do some small, but very
- important job. </para>
- <note>
- <title>Note:</title>
- <para>In this case you don't have to define <property>FaceletViewHandler</property> in the
- WEB-INF/faces-config.xml.</para>
- </note>
- </section>
- <section id="JBossSeamSupport">
- <?dbhtml filename="JBossSeamSupport.html"?>
- <title>JBoss Seam Support</title>
- <para>RichFaces now works out-of-the-box with <property>JBoss Seam </property>and Facelets running inside JBoss AS 4.0.4 and higher.
- There is no more shared JAR files needed. You just have to package the RichFaces library with your application.
- </para>
- <para>
- Your web.xml still must be like this:
- </para>
- <programlisting role="XML"><![CDATA[web-app version="2.4"
- 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">
-
- <!-- Seam -->
- <listener>
- <listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
- </listener>
-
- <!-- richfaces -->
- <filter>
- <display-name>RichFaces Filter</display-name>
- <filter-name>richfaces</filter-name>
- <filter-class>org.ajax4jsf.Filter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>richfaces</filter-name>
- <url-pattern>*.seam</url-pattern>
- </filter-mapping>
-
- <!-- Propagate conversations across redirects -->
- <filter>
- <filter-name>Seam Redirect Filter</filter-name>
- <filter-class>org.jboss.seam.servlet.SeamRedirectFilter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>Seam Redirect Filter</filter-name>
- <url-pattern>*.seam</url-pattern>
- </filter-mapping>
-
- <filter>
- <filter-name>Seam Exception Filter</filter-name>
- <filter-class>org.jboss.seam.servlet.SeamExceptionFilter</filter-class>
- </filter>
-
- <filter-mapping>
- <filter-name>Seam Exception Filter</filter-name>
- <url-pattern>*.jsf</url-pattern>
- </filter-mapping>
-
- <!-- JSF -->
- <context-param>
- <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
- <param-value>client</param-value>
- </context-param>
-
- <context-param>
- <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
- <param-value>com.sun.facelets.FaceletViewHandler</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>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>com.sun.faces.validateXml</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <param-name>com.sun.faces.verifyObjects</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <param-name>org.richfaces.SKIN</param-name>
- <param-value>DEFAULT</param-value>
- </context-param>
-
- <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>*.seam</url-pattern>
- </servlet-mapping>
-
- <!-- MyFaces -->
- <listener>
- <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
- </listener>
-</web-app>]]> </programlisting>
- <para>Only one issue still persists while using <property>Seam</property> with MyFaces. Look at myFaces part of this section.</para>
- </section>
- <section id="Portlet Support">
- <title>Portlet Support</title>
- <para><property>Portlets</property> have support since version Ajax4jsf 1.1.1. This support is improved in Richfaces 3.1.0.
- Provide your feedback on compatible with RichFaces if you face some problems.</para>
- </section>
- <section id="Sybase EAServer">
- <title>Sybase EAServer</title>
- <para>The load-on-startup for the Faces Servlet had to be set to 0 in web.xml.</para>
-
- <para>
- <emphasis role="bold">Example:</emphasis>
- </para>
- <programlisting role="XML"><![CDATA[...
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
- <load-on-startup>0</load-on-startup>
- </servlet>
-...
-]]></programlisting>
- <para> This is because, EAServer calls servlet init() before the ServletContextInitializer. Not an EAServer bug, this is in Servlet 2.3 spec.</para>
- </section>
- <!-- <title>Getting Started with Ajax4jsf</title>
- -->
- <section id="Environment">
- <?dbhtml filename="Environment.html" ?>
- <title>Environment</title>
- <para>
- To use RichFaces 3.1.0 framework you need JDK 1.4 or higher, any JSF implementation
- and your favorite Servlet Container. To read more on the <property>Environments</property>, see further chapters.</para>
- <para>
- RichFaces 3.1.0 is designed in an easy-to-use way, so that you should do only a few simple steps to get Ajax functionality in your JSF application.
- </para>
- </section>
- <section id="DownloadingAjax4jsf">
- <?dbhtml filename="DownloadingAjax4jsf.html" ?>
- <title>Downloading RichFaces 3.1.0</title>
- <para>The latest release of <property>RichFaces</property> is available for download at:<simplelist><member><ulink url="http://labs.jboss.com/jbossrichfaces/downloads">http://labs.jboss.com/jbossrichfaces/downloads</ulink></member></simplelist>
- in the <property>RichFaces</property> project area under JBoss.</para>
- </section>
- <section id="Installation">
- <?dbhtml filename="Installation.html" ?>
- <title>Installation</title>
- <itemizedlist>
- <listitem>
-
- Unzip <emphasis >
- <property>"ajax4jsf.zip"</property>
- </emphasis> file to the chosen folder.
-
- </listitem>
- <listitem>
-
- Copy <emphasis ><property>"ajax4jsf.jar"</property></emphasis> and <emphasis ><property>"oscache-2.3.2.jar"</property></emphasis> files into the <emphasis >
- <property>"WEB-INF/lib"</property>
- </emphasis> folder of your application.
-
- </listitem>
- <note>
- <title>Note:</title>
- <para>Starting from Ajax4jsf 1.1.1, the oscache library is not required to be in the classpath anymore.
- </para>
- </note>
- <listitem>
- Add the following content into the <emphasis >
- <property>"WEB-INF/web.xml"</property>
- </emphasis> file of your application:
-
- <programlisting role="XML"><![CDATA[<filter>
- <display-name>Ajax4jsf Filter</display-name>
- <filter-name>ajax4jsf</filter-name>
- <filter-class>org.ajax4jsf.Filter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>ajax4jsf</filter-name>
- <servlet-name>Faces Servlet</servlet-name>
- <dispatcher>REQUEST</dispatcher>
- <dispatcher>FORWARD</dispatcher>
- <dispatcher>INCLUDE</dispatcher>
- </filter-mapping>]]></programlisting>
- <note>
- <title>Note:</title>
- <para>You can copy and paste the above text from the <emphasis >
- <property>"README.txt"</property>
- </emphasis> file.</para>
- </note>
- </listitem>
- <listitem>
-
- <para>Add the following line for each JSP page of your application where you are going to bring in Ajax functionality.</para>
- <programlisting role="XML"> <![CDATA[<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>]]></programlisting>
- <para>For XHTML pages:</para>
- <programlisting role="XML"><xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"></programlisting>
- </listitem>
- </itemizedlist>
- </section>
- <section id="SimpleAJAXEchoProject">
- <?dbhtml filename="SimpleAJAXEchoProject.html" ?>
- <title>Simple Ajax Echo Project </title>
- <para>
- In our JSF project you need only one JSP page that has a form with a couple of child tags:
- <emphasis role="bold">
- <property><h:inputText></property>
- </emphasis> and <emphasis role="bold">
- <property><h:outputText></property>
- </emphasis>.
- </para>
- <para>This simple application let you input some text into the <emphasis role="bold">
- <property><h:inputText></property>
- </emphasis>,
- send data to the server, and see the server response as a value of <emphasis role="bold">
- <property><h:outputText></property>
- </emphasis>.
- </para>
- <section id="JSPPage">
- <?dbhtml filename="JSPPage.html"?>
- <title>JSP Page</title>
- <para>Here is the necessary page (echo.jsp):</para>
- <programlisting role="JSP"> <![CDATA[<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
- <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
- <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
- <html>
- <head>
- <title>repeater </title>
- </head>
- <body>
- <f:view>
- <h:form>
- <h:inputText size="50" value="#{bean.text}" >
- <a4j:support event="onkeyup" reRender="rep"/>
- </h:inputText>
- <h:outputText value="#{bean.text}" id="rep"/>
- </h:form>
- </f:view>
- </body>
- </html>]]></programlisting>
- <para>The only line that distinguishes this page from a "regular" JSF one is</para>
- <programlisting role="XML"><![CDATA[<a4j:support event="onkeyup" reRender="rep"/>]]></programlisting>
- <para>The line adds an Ajax support to the parent <emphasis role="bold">
- <property><h:inputText></property>
- </emphasis> tag. This support is
- bound to "onkeyup" JavaScript event, so that each time when this event is fired on the
- parent tag, our application sends an Ajax request to the server. It means that the
- text field pointed to our managed bean property contains up-to-date value of our input.
- </para>
- <para>
- The value of <emphasis ><property>"reRender"</property></emphasis> attribute of the <emphasis role="bold">
- <property><a4j:support></property>
- </emphasis> tag defines which part(s) of our
- page is (are) to be updated. In this case, the only part of the page to
- update is the <emphasis role="bold">
- <property><h:outputText></property>
- </emphasis> tag because its ID value matches to the value of <emphasis ><property>"reRender"</property></emphasis>
- attribute. As you see, it's not difficult to update multiple elements on the page, only list their IDs
- as the value of <emphasis ><property>"reRender"</property></emphasis>.
- </para>
- </section>
- <section id="DataBean">
- <?dbhtml filename="DataBean.html"?>
- <title>Data Bean</title>
- <para>In order to build this application, you should create a managed bean:</para>
- <programlisting role="JAVA">package demo;
-
-public class Bean {
- private String text;
- public Bean() {
- }
- public String getText() {
- return text;
- }
- public void setText(String text) {
- this.text = text;
- }
-}</programlisting>
- </section>
- <section id="faces-config.xml">
- <?dbhtml filename="faces-config.xml.html"?>
- <title>faces-config.xml</title>
- <para>Next, it's necessary to register your bean inside of the faces-config.xml file:</para>
- <programlisting role="XML"> <![CDATA[<?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
- "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
- <faces-config>
- <managed-bean>
- <managed-bean-name>bean</managed-bean-name>
- <managed-bean-class>demo.Bean</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- <managed-property>
- <property-name>text</property-name>
- <value/>
- </managed-property>
- </managed-bean>
- </faces-config>]]></programlisting>
- <para> <note>
- <title>Note:</title>
- <para>Nothing that relates directly to Ajax4jsf is required
- in the configuration file.</para>
- </note></para>
- </section>
- <section id="Web.xml">
- <?dbhtml filename="Web.xml.html"?>
- <title>Web.xml</title>
- <para>It is also necessary to add jar files (see <ulink url="GettingStartedWithAjax4jsf.html#Installation">installation chapter</ulink>) and modify the "web.xml" file:
- </para>
- <programlisting role="XML"> <![CDATA[<?xml version="1.0"?>
- <web-app version="2.4" 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">
-
- <display-name>a4jEchoText</display-name>
- <context-param>
- <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
- <param-value>server</param-value>
- </context-param>
- <filter>
- <display-name>Ajax4jsf Filter</display-name>
- <filter-name>ajax4jsf</filter-name>
- <filter-class>org.ajax4jsf.Filter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>ajax4jsf</filter-name>
- <servlet-name>Faces Servlet</servlet-name>
- <dispatcher>REQUEST</dispatcher>
- <dispatcher>FORWARD</dispatcher>
- <dispatcher>INCLUDE</dispatcher>
- </filter-map>
- <listener>
- <listener-class>
- com.sun.faces.config.ConfigureListener
- </listener-class>
- </listener>
-
- <!-- Faces Servlet -->
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>
- javax.faces.webapp.FacesServlet
- </servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
- <!-- Faces Servlet Mapping -->
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.jsf</url-pattern>
- </servlet-mapping>
- <login-config>
- <auth-method>BASIC</auth-method>
- </login-config>
- </web-app>]]></programlisting>
- <para>Now your application should work.</para>
- </section>
- <section id="Deployment">
- <?dbhtml filename="Deployment.html"?>
- <title>Deployment</title>
- <para>Finally, you should be able to place this application on your Web
- server.To start your project, point
- your browser at
-<ulink url="http://localhost:8080/a4jEchoText/echo.jsf">http://localhost:8080/a4jEchoText/echo.jsf</ulink>
-</para>
- </section>
- </section>
- <section id="Relevant_src">
- <title>Other Relevant Resources</title>
- <para><ulink url="http://jsf.javabeat.net/articles/2007/06/introduction-to-ajax4jsf/3">Introduction to Ajax4Jsf - Sample Application</ulink> by Shunmuga Raja</para>
- </section>
-</chapter>
Deleted: trunk/docs/userguide/en/src/main/docbook/modules/a4jUGskinnability.xml
===================================================================
--- trunk/docs/userguide/en/src/main/docbook/modules/a4jUGskinnability.xml 2007-08-22 13:37:24 UTC (rev 2398)
+++ trunk/docs/userguide/en/src/main/docbook/modules/a4jUGskinnability.xml 2007-08-22 14:12:01 UTC (rev 2399)
@@ -1,79 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<chapter id="Built-inSkinnabilityInAjax4jsf" xreflabel="Built-inSkinnabilityInAjax4jsf">
- <?dbhtml filename="Built-inSkinnabilityInAjax4jsf.html"?>
-
- <chapterinfo>
- <keywordset>
- <keyword>Skinnability</keyword>
-
- <keyword>skins</keyword>
-
- <keyword>custom skin</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Built-in skinnability in Ajax4jsf</title>
- <para>Ajax4jsf gives an opportunity to incorporate <property>skinnability</property> into UI
- design. With this framework you can easily use named skin parameters in
- properties files to control the appearance of the skins that are applied
- consistently to a whole set of components. You can look at examples of
- predefined skins at:</para>
- <simplelist>
- <member>
- <ulink url="http://livedemo.exadel.com/richfaces-demo/">http://livedemo.exadel.com/richfaces-demo/</ulink>
- </member>
- </simplelist>
- <para>
- You may simply control the look-and-feel of your application by using the <property>skinnability</property> service
- of the Ajax4jsf framework. With the means of this service you can define the same style for rendering
- standard JSF components and custom JSF components built with the help of Ajax4jsf.
- </para>
- <para>To find out more on <property>skinnability</property> possibilities, follow these
- steps:</para>
- <itemizedlist>
- <listitem>
- Create a custom render kit and register it in the faces-config.xml
- like this:
- <programlisting role="XML"><![CDATA[<render-kit>
- <render-kit-id>NEW_SKIN</render-kit-id>
- <render-kit-class>
- org.ajax4jsf.framework.renderer.ChameleonRenderKitImpl
- </render-kit-class>
-</render-kit>]]></programlisting>
- </listitem>
- <listitem>
- Then you need to create and register custom renderers for the
- component based on the look-and-feel predefined variables:
- <programlisting role="XML"><![CDATA[<renderer>
- <component-family>javax.faces.Command</component-family>
- <renderer-type>javax.faces.Link</renderer-type>
- <renderer-class>
- newskin.HtmlCommandLinkRenderer
- </renderer-class>
-</renderer>]]></programlisting>
- </listitem>
- <listitem>
- Finally, you need to place a properties file with skin parameters
- into the class path root. There are two requirements for the properties
- file:
- <itemizedlist>
- <listitem>
- The file must be named <emphasis role="bold"><property><skinName></property></emphasis>.skin.properties, in this case, it would be called
- <filename>newskin.skin.properties</filename>.
- </listitem>
- <listitem>
- The first line in this file should be render.kit=
- <emphasis role="bold"><property><render-kit-id></property>,</emphasis> in this case, it would be called
- render.kit=NEW_SKIN.
- </listitem>
- </itemizedlist>
- </listitem>
- </itemizedlist>
- <para>Extra information on custom renderers creation can be found
- at:</para>
- <simplelist>
- <member>
- <ulink url="http://java.sun.com/javaee/javaserverfaces/reference/docs/index.html">http://java.sun.com/javaee/javaserverfaces/reference/docs/index.html</ulink>
- </member>
- </simplelist>
-</chapter>
More information about the richfaces-svn-commits
mailing list