JBoss Tools SVN: r19333 - branches/jbosstools-3.1.0.RC1/seam/docs/reference/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:15:28 -0500 (Wed, 16 Dec 2009)
New Revision: 19333
Modified:
branches/jbosstools-3.1.0.RC1/seam/docs/reference/en/master.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating the plugin version;
Modified: branches/jbosstools-3.1.0.RC1/seam/docs/reference/en/master.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/seam/docs/reference/en/master.xml 2009-12-16 15:14:56 UTC (rev 19332)
+++ branches/jbosstools-3.1.0.RC1/seam/docs/reference/en/master.xml 2009-12-16 15:15:28 UTC (rev 19333)
@@ -62,7 +62,7 @@
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 3.1.0.M2
+ Version: 3.1.0.CR1
</releaseinfo>
<abstract>
15 years, 1 month
JBoss Tools SVN: r19332 - branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:14:56 -0500 (Wed, 16 Dec 2009)
New Revision: 19332
Modified:
branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en/master_output.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating master_output.xml;
Modified: branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en/master_output.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en/master_output.xml 2009-12-16 15:14:29 UTC (rev 19331)
+++ branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en/master_output.xml 2009-12-16 15:14:56 UTC (rev 19332)
@@ -20,982 +20,982 @@
<!ENTITY jsftutoriallink "../../jsf_tools_tutorial/html_single/index.html">
<!ENTITY strutsreflink "../../struts_tools_ref_guide/html_single/index.html">
<!ENTITY strutstutoriallink "../../struts_tools_tutorial/html_single/index.html">
-]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
-
- <bookinfo>
- <title>JBoss Portal Tools Reference Guide</title>
- <corpauthor diffmk:change="added">
- <inlinemediaobject diffmk:change="added">
- <imageobject diffmk:change="added" role="fo">
- <imagedata diffmk:change="added" fileref="images/jbosstools_logo.png" format="PNG"></imagedata>
- </imageobject>
- <imageobject diffmk:change="added" role="html">
- <imagedata diffmk:change="added"></imagedata>
- </imageobject>
- </inlinemediaobject>
- </corpauthor>
- <author><firstname>Olga</firstname><surname>Chikvina</surname></author>
- <author><firstname>Snjezana</firstname><surname>Peco</surname><email>snjezana.peco(a)redhat.com</email></author>
- <author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina(a)exadel.com</email></author>
- <author><firstname>Thomas</firstname><surname>Heute</surname><email>theute(a)jboss.org</email></author>
-
- <pubdate>September 2008</pubdate>
- <copyright>
- <year>2008</year>
- <year>2009</year>
- <holder><diffmk:wrapper diffmk:change="changed">JBoss by Red Hat</diffmk:wrapper></holder>
- </copyright>
- <releaseinfo><diffmk:wrapper diffmk:change="changed">
- Version: 1.1.0.M2
- </diffmk:wrapper></releaseinfo>
-
-<abstract>
- <title></title>
- <para>
- <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jboss_portal_tools_r...">PDF version</ulink>
- </para>
-</abstract>
-
-
- </bookinfo>
- <toc></toc>
-
-
-
-<chapter id="intro" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/portlet/docs/reference/en/modules/intro.xml" xreflabel="intro">
- <?dbhtml filename="intro.html"?>
- <title>Introduction</title>
-
- <para>Starting from 3.0.0.Alpha1 version, JBoss set of plugins extends <property moreinfo="none">JBoss Portal</property>
- features. Thus, this guide is intended to explain you how to manage the functionality
- <property moreinfo="none">JBoss Tools</property> provide to ease the development with <property moreinfo="none">JBoss
- Portal</property>.</para>
-
- <section id="preface">
- <title>Preface</title>
- <para><property moreinfo="none">JBoss Portal</property> provides an open source platform for hosting and
- serving a portal's Web interface, publishing and managing its content, and customizing
- its experience. It supports a wide range of features, including standard portlets,
- single sign-on, clustering, and internationalization.</para>
- </section>
-
- <section id="key_features">
- <title>Key Features</title>
- <para>The next table lists key features supplied by <property moreinfo="none">JBoss Portal Tools</property>.</para>
-
- <table>
- <title>Key Functionality of JBoss Portal Tools</title>
- <tgroup cols="3">
-
- <colspec align="left" colnum="1" colwidth="1*"></colspec>
- <colspec colnum="2" colwidth="5*"></colspec>
- <colspec align="left" colnum="3" colwidth="1*"></colspec>
-
- <thead>
- <row>
- <entry>Feature</entry>
- <entry>Benefit</entry>
- <entry>Chapter</entry>
- </row>
- </thead>
-
- <tbody>
-
- <row>
- <entry>
- <para>Wizards for creating Projects with Portlet Facets</para>
- </entry>
- <entry>
- <para>New Dynamic Web Project wizard allows you to select a proper
- Configuration to enable Portlet Facet in it.</para>
- </entry>
- <entry>
- <link linkend="creating_project_with_jbossportal">Creating a Dynamic
- Web Project</link>
- </entry>
- </row>
-
-
- <row>
- <entry>
- <para>Create Java Portlet wizard</para>
- </entry>
-
- <entry>
- <para>The wizard enables creating a JSR-186/JSR-286 compliant
- portlet.</para>
- </entry>
- <entry>
- <link linkend="adding_java_portlet">Adding Java Portlet to a
- project</link>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>Create JSF/Seam Portlet wizard</para>
- </entry>
- <entry>
- <para>This wizard allows to create JSF/Seam portlets</para>
- </entry>
- <entry>
- <link linkend="jsf_portlet">Creating JSF Portlet</link>
- <link linkend="seam_portlet">Creating Seam Portlet</link>
- </entry>
- </row>
-
- </tbody>
- </tgroup>
- </table>
- </section>
-
- <section id="rel_resources">
- <title>Other relevant resources on the topic</title>
-
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://www.jboss.org/jbossportal/">JBoss Portal Home Page</ulink>
- </para>
- </listitem>
-
- <listitem>
- <para>
- <ulink url="http://wiki.jboss.org/wiki/JBossPortal">JBoss Portal Wiki</ulink>
- </para>
- </listitem>
-
- <listitem>
- <para>
- <ulink url="http://www.jboss.org/tools/">JBoss Tools Home Page</ulink>
- </para>
- </listitem>
-
- <listitem>
- <para>
- <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss Tools Forum</ulink>
- </para>
- </listitem>
-
- <listitem>
- <para>
- <ulink url="http://download.jboss.org/jbosstools/nightly-docs/">The latest
- JBossTools/JBDS documentation builds</ulink>
- </para>
- </listitem>
-
- <listitem>
- <para>JBoss Developer Studio/JBoss Tools release documentation you can find at<ulink url="http://docs.jboss.org/tools/">http://docs.jboss.org/tools</ulink> in the corresponding release directory.</para>
- </listitem>
- </itemizedlist>
-
- </section>
-</chapter>
-
-
-<chapter id="installation" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/portlet/docs/reference/en/modules/installation.xml" xreflabel="installation">
- <?dbhtml filename="installation.html"?>
- <title>Installation issues</title>
-
- <para>This section provides you with the steps on how to start with <property moreinfo="none">JBoss
- Portal</property> and integrated features using <property moreinfo="none">JBoss Tools</property>.</para>
-
- <itemizedlist>
- <listitem>
- <para>First, you need to have Eclipse Ganymede with JBoss Tools 3.0.0.Alpha1 and higher installed.</para>
-
- <tip>
- <title>Tip:</title>
- <para>Read <ulink url="../../GettingStartedGuide/html_single/index.html#JBossToolsInstall">JBoss Tools
- Installation</ulink> section in our Getting Started documentation to find out
- how to install <property moreinfo="none">JBoss Tools</property> onto Eclipse.</para>
- </tip>
- </listitem>
-
- <listitem>
- <para>Next, download the JBoss Portal + JBoss AS bundle from <ulink url="http://www.jboss.org/jbossportal/download/index.html">JBoss Portal Download
- page</ulink></para>
-
- <note>
- <title>Note:</title>
- <para>You need JBoss Portal 2.7 if you want to work with a Portlet 2.0</para>
- </note>
-
- </listitem>
-
- <listitem>
- <para>Extract the bundle wherever you want on your hard drive</para>
- </listitem>
- </itemizedlist>
-
- <para>Now, when you have it installed, we are going to demonstrate some powerful features of
- <property moreinfo="none">JBoss Portal</property> tooling for Eclipse.</para>
-</chapter>
-
-
-<chapter id="starting_project" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/portlet/docs/reference/en/modules/starting_project.xml" xreflabel="starting_project">
- <?dbhtml filename="starting_project.html"?>
- <title>Starting the Project with JBoss Portal</title>
-
- <para>To get started with <property moreinfo="none">JBoss Portal</property> and <property moreinfo="none">JBoss
- Tools</property>, you should first have a Web Project pointed to the JBoss Portal Runtime.
- Thus, in this chapter we are going to show you how to create a Dynamic Web Project, add Java
- Portlet to it and deploy it to the <property moreinfo="none">JBoss Portal</property>.</para>
-
- <section id="creating_project_with_jbossportal">
- <title>Creating a Dynamic Web Project</title>
-
- <para>To create a Dynamic Web Project, go to <emphasis>
- <property moreinfo="none">File > New > Dynamic Web Project</property>
- </emphasis> if you are in the <property moreinfo="none">Web Perspective</property> or <property moreinfo="none">File >
- New > Other > Web > Dynamic Web Project</property> in any other Perspective. The
- first page of the New Dynamic Web Project wizard looks as follows.</para>
-
- <figure float="0">
- <title>New Dynamic Web Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Fill out the name of your project. Next, click the <emphasis>
- <property moreinfo="none">New</property>
- </emphasis> button in the <emphasis>
- <property moreinfo="none">Target Runtime</property>
- </emphasis> section to specify a new Target Runtime. Choose <emphasis>
- <property moreinfo="none"> JBoss Community > JBoss 4.2 Runtime</property>
- </emphasis> and select the <emphasis>
- <property moreinfo="none">Create a new local server</property>
- </emphasis> checkbox. Click <emphasis>
- <property moreinfo="none">Next</property>.</emphasis></para>
-
- <figure float="0">
- <title>New Server Runtime</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On the next page you should give a name to the runtime. Let's call it <emphasis>
- <property moreinfo="none">JBoss Portal 2.7 Runtime</property>
- </emphasis>, and then point it to the location of your JBoss AS + Portal
- installation.</para>
-
- <figure float="0">
- <title>New Server Runtime Environment</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/server_runtime_environment.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <note>
- <title>Note:</title>
-
- <para>The JBoss Tools Portlet feature has been tested using 2.6.5 and 2.7.0.ALPHA
- versions of <property moreinfo="none">JBoss Portal</property>. Remember, if you want to use Portlet
- version 2.0 (JSR-268), you have to choose JBoss Portal 2.7.</para>
- </note>
-
- <para>At this point a new JBoss Server instance will be created. Here you can verify the
- defined runtime information. If something is incorrect, press <emphasis>
- <property moreinfo="none">Back</property>
- </emphasis> to return on the previous wizard page.</para>
-
- <figure float="0">
- <title>Target Server</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Click <emphasis>
- <property moreinfo="none">Finish</property>.</emphasis></para>
-
- <para>On the next step you should click the <emphasis>
- <property moreinfo="none">Modify</property>
- </emphasis> button next to the <property moreinfo="none">Configuration</property> section to enable
- Portlet Facets for the project.</para>
-
- <figure float="0">
- <title>Setting the Project Configuration</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On this page you should check the <emphasis>
- <property moreinfo="none">JBoss Core Portlet</property>
- </emphasis> and press <emphasis>
- <property moreinfo="none">OK</property>
- </emphasis>.</para>
-
- <figure float="0">
- <title>Enabling the Portlet Facet</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_4_a.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <note>
- <title>Note:</title>
- <para>If the portlet libraries aren't available in the runtime you targeted,
- JBoss Portlet facets will be hidden on this page.</para>
- <para>To made portal functionality always visible no matter what the runtime support,
- you should go to <emphasis>
- <property moreinfo="none">Window > Preferences</property>
- </emphasis> and then <emphasis>
- <property moreinfo="none">JBoss Tools > JBoss Portlet</property>
- </emphasis> and deselect <emphasis>
- <property moreinfo="none">Check runtimes for Portlet Components</property>
- </emphasis> checkbox (see figure below).</para>
- </note>
-
- <figure float="0">
- <title>JBoss Runtime Preferences</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/portlet_preferences.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The next page is for configuring web modules. Here all values are set, so you can
- leave everything as it is.</para>
-
- <figure float="0">
- <title>The Project Web Modules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Finally, the last wizard page will ask you to add JBoss Portlet capabilities to your
- project. Here you can choose whether to set up user libraries, libraries provided by
- server runtime or not include libraries at all.</para>
-
- <itemizedlist>
- <listitem><para>To set up server runtime libraries, you need to select <emphasis>
- <property moreinfo="none">Libraries provided by server runtime</property></emphasis> in the list box.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Including Server Runtime Libraries</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/portlet_capabilities6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>For setting up user libraries, select <emphasis>
- <property moreinfo="none">User library</property></emphasis> in the list box and then press <emphasis>
- <property moreinfo="none">Add</property></emphasis> in the <emphasis>
- <property moreinfo="none">User Library</property></emphasis> section.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Adding User Library</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/portlet_capabilities1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Then press <emphasis>
- <property moreinfo="none">New</property></emphasis> and type the user library name in the appeared dialog.</para>
-
- <figure float="0">
- <title>Adding User Library</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/portlet_capabilities2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Next add necessary jar's.</para>
-
- <figure float="0">
- <title>Adding the Portlet API Jar</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/portlet_capabilities3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Hit <emphasis>
- <property moreinfo="none">OK</property>.</emphasis> The user library will be added.
- </para>
-
- <figure float="0">
- <title>User Library Added</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/portlet_capabilities4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem><para>If you don't need to include libraries at all, just deselect the <emphasis>
- <property moreinfo="none">Enable implementation library</property></emphasis> checkbox.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Disabling Implementation Libraries</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/portlet_capabilities5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>After setting JBoss Portlet capabilities press <emphasis>
- <property moreinfo="none">Finish</property>.</emphasis></para>
-
- <para>That's it! Our base project is done.</para>
-
- </section>
-
- <section id="structure_overview">
- <title>The Project Structure Overview</title>
-
- <para>Now, let's look at the structure of the just created project.</para>
-
- <figure float="0">
- <title>The Project Structure Overview</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Here <property moreinfo="none">JBoos Tools</property> added JBoss Portlet facet to the project,
- created an empty <emphasis>
- <property moreinfo="none">portlet.xml</property>
- </emphasis> file and added the Portlet library to the project classpath.</para>
- </section>
-
- <section id="adding_java_portlet">
- <title>Adding a Java Portlet to the Project</title>
-
- <para>At this point we'll show what the steps you need to proceed to add a new Java
- Portlet to the project.</para>
-
- <para>Call the <property moreinfo="none">Create Portlet wizard</property> by selecting <emphasis>
- <property moreinfo="none">New > Other > JBoss Tools Web > Portlet > Java
- Portlet</property>.</emphasis></para>
-
- <figure float="0">
- <title>New Java Portlet</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_7.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The wizard fills in the Web Project and Source Folder fields for you. Then you need to
- specify the Java package and the Class name and click <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis>.</para>
-
- <figure float="0">
- <title>Specifying Class File Destination</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On the other page you will be able to set the display name of the Portlet, a title, a
- description, the supported modes and init parameters.</para>
-
- <figure float="0">
- <title>Specifying Class File Destination</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_9.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On the next screen you can define which methods from
- <emphasis>GenericPortlet</emphasis> you want to override.</para>
-
- <figure float="0">
- <title>Specifying Class File Destination</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_10.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The last screen lets you build <property moreinfo="none">JBoss Portal</property> specific descriptors
- to create an instance during the deployment and place it directly on the Portal.</para>
-
- <figure float="0">
- <title>Specifying Class File Destination</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_11.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <tip>
- <title>Tip:</title>
-
- <para>If you uncheck the <emphasis> Create Portlet Instance</emphasis> checkbox,
- <property moreinfo="none">JBoss Tools</property> won't create the deployment elements
- in the <emphasis> default-object.xml</emphasis> and <emphasis>
- portlet-instances.xml</emphasis> files.</para>
- </tip>
-
- <para>Once Java Portlet is created, new resources have been added to the project structure.
- As you can see on the figure below, it adds a Java Portlet class (<emphasis>
- <property moreinfo="none">TestPortlet.java</property>
- </emphasis> in our case), <emphasis>
- <property moreinfo="none">default-object.xml</property>
- </emphasis> and <emphasis>
- <property moreinfo="none">portlet-instances.xml</property>
- </emphasis> files and updates <emphasis>
- <property moreinfo="none">portlet.xml</property>
- </emphasis> as well.</para>
-
- <figure float="0">
- <title>The structure of Web Project with Java Portlet created</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_12.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Thus, now the Project is ready to be built and deployed.</para>
- </section>
-
- <section id="deploying_to_portal">
- <title>Deploying a Portlet to JBoss Portal</title>
-
- <para>You can deploy the created project in the way you deploy any other Web Application.
- Right click on the project and do <emphasis>
- <property moreinfo="none">Run As > Run On Server</property>
- </emphasis> and accept the defaults. On the <emphasis>
- <property moreinfo="none">Add and Remove Projects</property>
- </emphasis> page move the created Project to the right and click <emphasis>
- <property moreinfo="none">Finish</property>.</emphasis></para>
-
- <figure float="0">
- <title>Deploying the Portlet Application</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_13.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>It will deploy the Portlet Web Application and start <property moreinfo="none">JBoss
- AS</property>.</para>
-
- <tip>
- <title>Tip:</title>
-
- <para>You should use <emphasis>http://localhost:8080/portal</emphasis> URL to see your
- Portlet in the Browser.</para>
- </tip>
-
- <para>In the Browser the Portlet looks as follows:</para>
-
- <figure float="0">
- <title>Java Portlet in the Browser Window</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/starting_project/starting_project_14.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Consequently, here you learnt how to create a Dynamic Web Project, add Java Portlet to
- it and deploy the project to <property moreinfo="none">JBoss Portal</property>.</para>
- </section>
-
-</chapter>
-
-
-<chapter id="jsf_portlet" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/portlet/docs/reference/en/modules/jsf_portlet.xml" xreflabel="jsf_portlet">
- <?dbhtml filename="jsf_portlet.html"?>
- <title>Creating JSF Portlet</title>
-
- <para>This chapter will explain how you can configure JSF Portlet within Dynamic Web
- Project and JSF Project by using the wizards <property moreinfo="none">JBoss Tools</property> provides.</para>
-
- <section id="jsf_portlet1">
- <title>Adding JSF Portlet to Dynamic Web Project</title>
-
- <para>To add JSF Portlet to a Dynamic Web Project, you should set the Configuration to <emphasis>
- <property moreinfo="none">JavaServer Faces v1.1 Project</property>
- </emphasis> or <emphasis>
- <property moreinfo="none">JavaServer Faces v1.2 Project</property>
- </emphasis> and configure the JSF Portlet Facets in the <property moreinfo="none">New Dynamic Web
- Project wizard</property> by clicking the <emphasis>
- <property moreinfo="none">Modify</property>
- </emphasis> button.</para>
-
- <figure float="0">
- <title>Setting the JSF Configuration</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On the Project Facets dialog you should select <property moreinfo="none">JBoss Core Portlet</property>
- and <property moreinfo="none">JBoss JSF Portlet</property> check boxes.</para>
-
- <figure float="0">
- <title>Enabling the Portlet Facets</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Next wizard page is for configuring JSF Capabilities. You can leave everything as it
- is here.</para>
-
- <figure float="0">
- <title>JSF Capabilities</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>To support Portlets in JSF/Seam applications <property moreinfo="none">JBoss Tools</property> works
- with <property moreinfo="none">JBoss Portlet Bridge</property>. Thus on the next page you should add JSF Portlet
- capabilities by pointing to the Portletbridge Runtime location.</para>
-
- <figure float="0">
- <title>JSF Capabilities</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <tip>
- <title>Tip:</title>
-
- <para>You can download JBoss Portlet Bridge 1.0.0.B4 from <ulink url="http://www.jboss.org/portletbridge/download/"><diffmk:wrapper diffmk:change="changed">Portletbridge Download page</diffmk:wrapper></ulink>.</para>
- </tip>
-
- <para>Next click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> to organize the Project.</para>
- <para id="add_jsf_portlet">To add JSF Portlet to generated project you should call the
- <property moreinfo="none">Create Portlet wizard</property> by navigating to <emphasis>
- <property moreinfo="none">New > Other > JBoss Tools Web > Portlet > JSF/Seam
- Portlet</property>.</emphasis></para>
-
- <figure float="0">
- <title>Calling New Portlet Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>As you see, the Seam and JSF Portlet wizards are merged into one. We set JSF
- Configuration for the project, so default values in this wizard will be set as for a JSF
- portlet.</para>
-
- <figure float="0">
- <title>Creating JSF Portlet</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> to complete JSF Portlet creation. Now you can deploy the project the same
- way as it was <link linkend="deploying_to_portal">described above</link>.</para>
-
- <para>In the Browser JSF Portlet looks as follows.</para>
-
- <figure float="0">
- <title>JSF Portlet in the Browser</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet7.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-
- <section id="jsf_portlet_to_JSF_project">
- <title>Adding JSF Portlet to JSF Project</title>
-
- <para>How to organize a JSF Project you can find out in our <ulink url="../../jsf_tools_ref_guide/html_single/index.html#new_jsf_project">JSF Tools Reference Guide</ulink>. Just
- remember to point Target Runtime to JBoss Portal directory location.</para>
-
- <figure float="0">
- <title>Creating New JSF Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Before adding a Portlet to the project you should enable necessary facets for it.
- Right-click the created project and click <emphasis>
- <property moreinfo="none">Preferences</property>
- </emphasis> to open the <property moreinfo="none">Project Preferences</property> screen.</para>
- <para>On the <property moreinfo="none">Project Facets</property> page select the <emphasis>
- <property moreinfo="none">JBoss Core Portlet</property>
- </emphasis> and <emphasis>
- <property moreinfo="none">JBoss JSF Portlet</property>
- </emphasis> checkboxes. And then the screen will ask you to enable <emphasis>
- <property moreinfo="none">JavaServer Faces</property>
- </emphasis> facet as well.</para>
-
- <figure float="0">
- <title>Project Facets</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet9.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Notice, <emphasis>
- <property moreinfo="none">"Further configuration required..."</property>
- </emphasis> warning appears at the bottom of the screen. It means that you should click
- it to configure JSF and JSF Portlet Capabilities in the project.</para>
-
- <figure float="0">
- <title>JSF Capabilities</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet10.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <figure float="0">
- <title>Project Facets</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_portlet/jsf_portlet11.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>After setting the path to Portletbridge Runtime location, click <emphasis>
- <property moreinfo="none">OK</property>
- </emphasis> and then <emphasis>
- <property moreinfo="none">OK</property>
- </emphasis> again.</para>
-
- <para>Now you can add JSF Portlet to the generated JSF Project. How to do it we showed in
- <link linkend="add_jsf_portlet">the previous section</link>.</para>
- </section>
-</chapter>
-
-
-<chapter id="seam_portlet" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/portlet/docs/reference/en/modules/seam_portlet.xml" xreflabel="seam_portlet">
- <?dbhtml filename="seam_portlet.html"?>
- <title>Creating Seam Portlet</title>
-
- <para>This chapter covers the steps on how to configure Seam Portlet within Dynamic Web
- Project and Seam Project by using the wizards <property moreinfo="none">JBoss Tools</property> provides.</para>
-
- <section id="seam_portlet1">
- <title>Adding Seam Portlet to Dynamic Web Project</title>
-
- <para>To add Seam Portlet to a Dynamic Web Project first you should organize New Dynamic Web
- Project with the Configuration setting to <emphasis>
- <property moreinfo="none">JBoss Seam Portlet Project v2.0</property>.</emphasis></para>
-
- <figure float="0">
- <title>Calling New Portlet Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/seam_portlet/seam_portlet1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>It will add all needed facets to your project. By clicking the <emphasis>
- <property moreinfo="none">Modify</property>
- </emphasis> button you can observe the chosen configuration of facets as well as modify
- it. As you can see, all JBoss Portlets are checked.</para>
-
- <figure float="0">
- <title>Project Facets</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/seam_portlet/seam_portlet2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Next wizard pages are for adjusting the Project Web Modules and JSF Configuration.
- They include default values, so you can skip them by pressing <emphasis>
- <property moreinfo="none">Next</property>.</emphasis></para>
-
- <para>On the <property moreinfo="none">Seam Facet</property> page <ulink url="../../seam/html_single/index.html#seamFacet">set
- Connection Profile</ulink> and hit <emphasis>
- <property moreinfo="none">Next</property>.</emphasis></para>
-
- <figure float="0">
- <title>Seam Facet Settings</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/seam_portlet/seam_portlet3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Last wizard page will prompt you to set the path to Portletbridge Runtime
- location.</para>
-
- <figure float="0">
- <title>Setting the Portletbridge Runtime</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/seam_portlet/seam_portlet4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <tip>
- <title>Tip:</title>
-
- <para>Thus you should have JBoss Portlet Bridge downloaded and extracted somewhere on
- your hard drive. You can download JBoss Portlet Bridge 1.0.0.B4 from <ulink url="http://www.jboss.org/portletbridge/download/">www.jboss.org/portletbridge/download</ulink>.</para>
- </tip>
-
- <para>Now, to add Seam Portlet to the project you should follow to <emphasis>
- <property moreinfo="none">New > Other > JBoss Tools Web > Portlet > JSF/Seam
- Portlet</property>.</emphasis> This will call the wizard for creating JSF/Seam
- Portlets.</para>
-
- <figure float="0">
- <title>Calling the Create Portlet Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/seam_portlet/seam_portlet5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>As we set Seam Configuration for the Dynamic Web Project, the wizard puts the values
- as for Seam Portlet.</para>
-
- <figure float="0">
- <title>Creating Seam Portlet</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/seam_portlet/seam_portlet6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>After creating the Seam Portlet, you should <link linkend="deploying_to_portal">deploy
- the project to JBoss Portal</link> and start the Server. In a Browser
- you'll see the following:</para>
-
- <figure float="0">
- <title>Seam Portlet in the Browser</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/seam_portlet/seam_portlet7.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-
- <section id="seam_portlet_to_seam_project">
- <title>Adding Seam Portlet to Seam Project</title>
-
- <para>First start a Seam Project by following to <emphasis>
- <property moreinfo="none">New > Other > Seam > Seam Web Project</property>. </emphasis> On the first
- wizard page specify JBoss Portal directory location as <property moreinfo="none">Target
- Runtime</property> and <emphasis>
- <property moreinfo="none">JBoss Seam Portlet Project v2.0</property>
- </emphasis> as <property moreinfo="none">Configuration</property>.</para>
-
- <figure float="0">
- <title>Project Facets</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/seam_portlet/seam_portlet8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Next steps will be the same as we did for the Dynamic Web Project in the <link linkend="seam_portlet1">Adding Seam Portlet to Dynamic Web Project</link>
- section.</para>
- </section>
-</chapter>
-
-
-<chapter id="portlets_to_nonWTP_projects" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/portlet/docs/reference/en/modules/portlets_to_nonWTP_projects.xml" xreflabel="portlets_to_nonWTP_projects">
- <?dbhtml filename="portlets_to_nonWTP_projects.html"?>
- <title>Adding Portlets to non-WTP Projects</title>
-
- <para>Starting from <property moreinfo="none">JBoss Tools 3.0.0.Beta1</property> version the JBoss Portlet
- wizards no longer require a WTP project to be able to create Portlets.</para>
-
- <note>
- <title>Note:</title>
- <para>Please note, if the project does not have the proper portlet API jar's, the generated
- classes will have compile errors.</para>
- </note>
-
- <para>In conclusion, with this document you've learnt how to get started with <property moreinfo="none">JBoss
- Portal</property> using <property moreinfo="none">JBoss Tools</property> suite of Eclipse plugins.
- The above chapters walked you through the steps on how to organize a web project with
- portlets which includes a sample staff and deploy it onto the <property moreinfo="none">JBoss
- Portal</property>.</para>
-
- <para>If you still have questions or suggestions you are always welcome on our <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">Forum</ulink>. Your feedback will be very much appreciated.</para>
-
-</chapter>
-
-
-</book>
+]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
+
+ <bookinfo>
+ <title>JBoss Portal Tools Reference Guide</title>
+ <corpauthor>
+ <inlinemediaobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/jbosstools_logo.png" format="PNG"></imagedata>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+ </corpauthor>
+ <author><firstname>Olga</firstname><surname>Chikvina</surname></author>
+ <author><firstname>Snjezana</firstname><surname>Peco</surname><email>snjezana.peco(a)redhat.com</email></author>
+ <author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina(a)exadel.com</email></author>
+ <author><firstname>Thomas</firstname><surname>Heute</surname><email>theute(a)jboss.org</email></author>
+
+ <pubdate>September 2008</pubdate>
+ <copyright>
+ <year>2008</year>
+ <year>2009</year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo><diffmk:wrapper diffmk:change="changed">
+ Version: 1.1.0.CR1
+ </diffmk:wrapper></releaseinfo>
+
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jboss_portal_tools_r...">PDF version</ulink>
+ </para>
+</abstract>
+
+
+ </bookinfo>
+ <toc></toc>
+
+
+
+<chapter id="intro" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/portlet/docs/reference/en/modules/intro.xml" xreflabel="intro">
+ <?dbhtml filename="intro.html"?>
+ <title>Introduction</title>
+
+ <para>Starting from 3.0.0.Alpha1 version, JBoss set of plugins extends <property moreinfo="none">JBoss Portal</property>
+ features. Thus, this guide is intended to explain you how to manage the functionality
+ <property moreinfo="none">JBoss Tools</property> provide to ease the development with <property moreinfo="none">JBoss
+ Portal</property>.</para>
+
+ <section id="preface">
+ <title>Preface</title>
+ <para><property moreinfo="none">JBoss Portal</property> provides an open source platform for hosting and
+ serving a portal's Web interface, publishing and managing its content, and customizing
+ its experience. It supports a wide range of features, including standard portlets,
+ single sign-on, clustering, and internationalization.</para>
+ </section>
+
+ <section id="key_features">
+ <title>Key Features</title>
+ <para>The next table lists key features supplied by <property moreinfo="none">JBoss Portal Tools</property>.</para>
+
+ <table>
+ <title>Key Functionality of JBoss Portal Tools</title>
+ <tgroup cols="3">
+
+ <colspec align="left" colnum="1" colwidth="1*"></colspec>
+ <colspec colnum="2" colwidth="5*"></colspec>
+ <colspec align="left" colnum="3" colwidth="1*"></colspec>
+
+ <thead>
+ <row>
+ <entry>Feature</entry>
+ <entry>Benefit</entry>
+ <entry>Chapter</entry>
+ </row>
+ </thead>
+
+ <tbody>
+
+ <row>
+ <entry>
+ <para>Wizards for creating Projects with Portlet Facets</para>
+ </entry>
+ <entry>
+ <para>New Dynamic Web Project wizard allows you to select a proper
+ Configuration to enable Portlet Facet in it.</para>
+ </entry>
+ <entry>
+ <link linkend="creating_project_with_jbossportal">Creating a Dynamic
+ Web Project</link>
+ </entry>
+ </row>
+
+
+ <row>
+ <entry>
+ <para>Create Java Portlet wizard</para>
+ </entry>
+
+ <entry>
+ <para>The wizard enables creating a JSR-186/JSR-286 compliant
+ portlet.</para>
+ </entry>
+ <entry>
+ <link linkend="adding_java_portlet">Adding Java Portlet to a
+ project</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>Create JSF/Seam Portlet wizard</para>
+ </entry>
+ <entry>
+ <para>This wizard allows to create JSF/Seam portlets</para>
+ </entry>
+ <entry>
+ <link linkend="jsf_portlet">Creating JSF Portlet</link>
+ <link linkend="seam_portlet">Creating Seam Portlet</link>
+ </entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+
+ <section id="rel_resources">
+ <title>Other relevant resources on the topic</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://www.jboss.org/jbossportal/">JBoss Portal Home Page</ulink>
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <ulink url="http://wiki.jboss.org/wiki/JBossPortal">JBoss Portal Wiki</ulink>
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <ulink url="http://www.jboss.org/tools/">JBoss Tools Home Page</ulink>
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss Tools Forum</ulink>
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/">The latest
+ JBossTools/JBDS documentation builds</ulink>
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>JBoss Developer Studio/JBoss Tools release documentation you can find at<ulink url="http://docs.jboss.org/tools/">http://docs.jboss.org/tools</ulink> in the corresponding release directory.</para>
+ </listitem>
+ </itemizedlist>
+
+ </section>
+</chapter>
+
+
+<chapter id="installation" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/portlet/docs/reference/en/modules/installation.xml" xreflabel="installation">
+ <?dbhtml filename="installation.html"?>
+ <title>Installation issues</title>
+
+ <para>This section provides you with the steps on how to start with <property moreinfo="none">JBoss
+ Portal</property> and integrated features using <property moreinfo="none">JBoss Tools</property>.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>First, you need to have Eclipse Ganymede with JBoss Tools 3.0.0.Alpha1 and higher installed.</para>
+
+ <tip>
+ <title>Tip:</title>
+ <para>Read <ulink url="../../GettingStartedGuide/html_single/index.html#JBossToolsInstall">JBoss Tools
+ Installation</ulink> section in our Getting Started documentation to find out
+ how to install <property moreinfo="none">JBoss Tools</property> onto Eclipse.</para>
+ </tip>
+ </listitem>
+
+ <listitem>
+ <para>Next, download the JBoss Portal + JBoss AS bundle from <ulink url="http://www.jboss.org/jbossportal/download/index.html">JBoss Portal Download
+ page</ulink></para>
+
+ <note>
+ <title>Note:</title>
+ <para>You need JBoss Portal 2.7 if you want to work with a Portlet 2.0</para>
+ </note>
+
+ </listitem>
+
+ <listitem>
+ <para>Extract the bundle wherever you want on your hard drive</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Now, when you have it installed, we are going to demonstrate some powerful features of
+ <property moreinfo="none">JBoss Portal</property> tooling for Eclipse.</para>
+</chapter>
+
+
+<chapter id="starting_project" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/portlet/docs/reference/en/modules/starting_project.xml" xreflabel="starting_project">
+ <?dbhtml filename="starting_project.html"?>
+ <title>Starting the Project with JBoss Portal</title>
+
+ <para>To get started with <property moreinfo="none">JBoss Portal</property> and <property moreinfo="none">JBoss
+ Tools</property>, you should first have a Web Project pointed to the JBoss Portal Runtime.
+ Thus, in this chapter we are going to show you how to create a Dynamic Web Project, add Java
+ Portlet to it and deploy it to the <property moreinfo="none">JBoss Portal</property>.</para>
+
+ <section id="creating_project_with_jbossportal">
+ <title>Creating a Dynamic Web Project</title>
+
+ <para>To create a Dynamic Web Project, go to <emphasis>
+ <property moreinfo="none">File > New > Dynamic Web Project</property>
+ </emphasis> if you are in the <property moreinfo="none">Web Perspective</property> or <property moreinfo="none">File >
+ New > Other > Web > Dynamic Web Project</property> in any other Perspective. The
+ first page of the New Dynamic Web Project wizard looks as follows.</para>
+
+ <figure float="0">
+ <title>New Dynamic Web Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Fill out the name of your project. Next, click the <emphasis>
+ <property moreinfo="none">New</property>
+ </emphasis> button in the <emphasis>
+ <property moreinfo="none">Target Runtime</property>
+ </emphasis> section to specify a new Target Runtime. Choose <emphasis>
+ <property moreinfo="none"> JBoss Community > JBoss 4.2 Runtime</property>
+ </emphasis> and select the <emphasis>
+ <property moreinfo="none">Create a new local server</property>
+ </emphasis> checkbox. Click <emphasis>
+ <property moreinfo="none">Next</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>New Server Runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On the next page you should give a name to the runtime. Let's call it <emphasis>
+ <property moreinfo="none">JBoss Portal 2.7 Runtime</property>
+ </emphasis>, and then point it to the location of your JBoss AS + Portal
+ installation.</para>
+
+ <figure float="0">
+ <title>New Server Runtime Environment</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/server_runtime_environment.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <note>
+ <title>Note:</title>
+
+ <para>The JBoss Tools Portlet feature has been tested using 2.6.5 and 2.7.0.ALPHA
+ versions of <property moreinfo="none">JBoss Portal</property>. Remember, if you want to use Portlet
+ version 2.0 (JSR-268), you have to choose JBoss Portal 2.7.</para>
+ </note>
+
+ <para>At this point a new JBoss Server instance will be created. Here you can verify the
+ defined runtime information. If something is incorrect, press <emphasis>
+ <property moreinfo="none">Back</property>
+ </emphasis> to return on the previous wizard page.</para>
+
+ <figure float="0">
+ <title>Target Server</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Click <emphasis>
+ <property moreinfo="none">Finish</property>.</emphasis></para>
+
+ <para>On the next step you should click the <emphasis>
+ <property moreinfo="none">Modify</property>
+ </emphasis> button next to the <property moreinfo="none">Configuration</property> section to enable
+ Portlet Facets for the project.</para>
+
+ <figure float="0">
+ <title>Setting the Project Configuration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On this page you should check the <emphasis>
+ <property moreinfo="none">JBoss Core Portlet</property>
+ </emphasis> and press <emphasis>
+ <property moreinfo="none">OK</property>
+ </emphasis>.</para>
+
+ <figure float="0">
+ <title>Enabling the Portlet Facet</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_4_a.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <note>
+ <title>Note:</title>
+ <para>If the portlet libraries aren't available in the runtime you targeted,
+ JBoss Portlet facets will be hidden on this page.</para>
+ <para>To made portal functionality always visible no matter what the runtime support,
+ you should go to <emphasis>
+ <property moreinfo="none">Window > Preferences</property>
+ </emphasis> and then <emphasis>
+ <property moreinfo="none">JBoss Tools > JBoss Portlet</property>
+ </emphasis> and deselect <emphasis>
+ <property moreinfo="none">Check runtimes for Portlet Components</property>
+ </emphasis> checkbox (see figure below).</para>
+ </note>
+
+ <figure float="0">
+ <title>JBoss Runtime Preferences</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/portlet_preferences.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The next page is for configuring web modules. Here all values are set, so you can
+ leave everything as it is.</para>
+
+ <figure float="0">
+ <title>The Project Web Modules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Finally, the last wizard page will ask you to add JBoss Portlet capabilities to your
+ project. Here you can choose whether to set up user libraries, libraries provided by
+ server runtime or not include libraries at all.</para>
+
+ <itemizedlist>
+ <listitem><para>To set up server runtime libraries, you need to select <emphasis>
+ <property moreinfo="none">Libraries provided by server runtime</property></emphasis> in the list box.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Including Server Runtime Libraries</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/portlet_capabilities6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>For setting up user libraries, select <emphasis>
+ <property moreinfo="none">User library</property></emphasis> in the list box and then press <emphasis>
+ <property moreinfo="none">Add</property></emphasis> in the <emphasis>
+ <property moreinfo="none">User Library</property></emphasis> section.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Adding User Library</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/portlet_capabilities1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Then press <emphasis>
+ <property moreinfo="none">New</property></emphasis> and type the user library name in the appeared dialog.</para>
+
+ <figure float="0">
+ <title>Adding User Library</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/portlet_capabilities2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Next add necessary jar's.</para>
+
+ <figure float="0">
+ <title>Adding the Portlet API Jar</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/portlet_capabilities3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Hit <emphasis>
+ <property moreinfo="none">OK</property>.</emphasis> The user library will be added.
+ </para>
+
+ <figure float="0">
+ <title>User Library Added</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/portlet_capabilities4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem><para>If you don't need to include libraries at all, just deselect the <emphasis>
+ <property moreinfo="none">Enable implementation library</property></emphasis> checkbox.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Disabling Implementation Libraries</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/portlet_capabilities5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>After setting JBoss Portlet capabilities press <emphasis>
+ <property moreinfo="none">Finish</property>.</emphasis></para>
+
+ <para>That's it! Our base project is done.</para>
+
+ </section>
+
+ <section id="structure_overview">
+ <title>The Project Structure Overview</title>
+
+ <para>Now, let's look at the structure of the just created project.</para>
+
+ <figure float="0">
+ <title>The Project Structure Overview</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Here <property moreinfo="none">JBoos Tools</property> added JBoss Portlet facet to the project,
+ created an empty <emphasis>
+ <property moreinfo="none">portlet.xml</property>
+ </emphasis> file and added the Portlet library to the project classpath.</para>
+ </section>
+
+ <section id="adding_java_portlet">
+ <title>Adding a Java Portlet to the Project</title>
+
+ <para>At this point we'll show what the steps you need to proceed to add a new Java
+ Portlet to the project.</para>
+
+ <para>Call the <property moreinfo="none">Create Portlet wizard</property> by selecting <emphasis>
+ <property moreinfo="none">New > Other > JBoss Tools Web > Portlet > Java
+ Portlet</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>New Java Portlet</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_7.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The wizard fills in the Web Project and Source Folder fields for you. Then you need to
+ specify the Java package and the Class name and click <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis>.</para>
+
+ <figure float="0">
+ <title>Specifying Class File Destination</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On the other page you will be able to set the display name of the Portlet, a title, a
+ description, the supported modes and init parameters.</para>
+
+ <figure float="0">
+ <title>Specifying Class File Destination</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_9.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On the next screen you can define which methods from
+ <emphasis>GenericPortlet</emphasis> you want to override.</para>
+
+ <figure float="0">
+ <title>Specifying Class File Destination</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_10.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The last screen lets you build <property moreinfo="none">JBoss Portal</property> specific descriptors
+ to create an instance during the deployment and place it directly on the Portal.</para>
+
+ <figure float="0">
+ <title>Specifying Class File Destination</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_11.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <tip>
+ <title>Tip:</title>
+
+ <para>If you uncheck the <emphasis> Create Portlet Instance</emphasis> checkbox,
+ <property moreinfo="none">JBoss Tools</property> won't create the deployment elements
+ in the <emphasis> default-object.xml</emphasis> and <emphasis>
+ portlet-instances.xml</emphasis> files.</para>
+ </tip>
+
+ <para>Once Java Portlet is created, new resources have been added to the project structure.
+ As you can see on the figure below, it adds a Java Portlet class (<emphasis>
+ <property moreinfo="none">TestPortlet.java</property>
+ </emphasis> in our case), <emphasis>
+ <property moreinfo="none">default-object.xml</property>
+ </emphasis> and <emphasis>
+ <property moreinfo="none">portlet-instances.xml</property>
+ </emphasis> files and updates <emphasis>
+ <property moreinfo="none">portlet.xml</property>
+ </emphasis> as well.</para>
+
+ <figure float="0">
+ <title>The structure of Web Project with Java Portlet created</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_12.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Thus, now the Project is ready to be built and deployed.</para>
+ </section>
+
+ <section id="deploying_to_portal">
+ <title>Deploying a Portlet to JBoss Portal</title>
+
+ <para>You can deploy the created project in the way you deploy any other Web Application.
+ Right click on the project and do <emphasis>
+ <property moreinfo="none">Run As > Run On Server</property>
+ </emphasis> and accept the defaults. On the <emphasis>
+ <property moreinfo="none">Add and Remove Projects</property>
+ </emphasis> page move the created Project to the right and click <emphasis>
+ <property moreinfo="none">Finish</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>Deploying the Portlet Application</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_13.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>It will deploy the Portlet Web Application and start <property moreinfo="none">JBoss
+ AS</property>.</para>
+
+ <tip>
+ <title>Tip:</title>
+
+ <para>You should use <emphasis>http://localhost:8080/portal</emphasis> URL to see your
+ Portlet in the Browser.</para>
+ </tip>
+
+ <para>In the Browser the Portlet looks as follows:</para>
+
+ <figure float="0">
+ <title>Java Portlet in the Browser Window</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/starting_project/starting_project_14.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Consequently, here you learnt how to create a Dynamic Web Project, add Java Portlet to
+ it and deploy the project to <property moreinfo="none">JBoss Portal</property>.</para>
+ </section>
+
+</chapter>
+
+
+<chapter id="jsf_portlet" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/portlet/docs/reference/en/modules/jsf_portlet.xml" xreflabel="jsf_portlet">
+ <?dbhtml filename="jsf_portlet.html"?>
+ <title>Creating JSF Portlet</title>
+
+ <para>This chapter will explain how you can configure JSF Portlet within Dynamic Web
+ Project and JSF Project by using the wizards <property moreinfo="none">JBoss Tools</property> provides.</para>
+
+ <section id="jsf_portlet1">
+ <title>Adding JSF Portlet to Dynamic Web Project</title>
+
+ <para>To add JSF Portlet to a Dynamic Web Project, you should set the Configuration to <emphasis>
+ <property moreinfo="none">JavaServer Faces v1.1 Project</property>
+ </emphasis> or <emphasis>
+ <property moreinfo="none">JavaServer Faces v1.2 Project</property>
+ </emphasis> and configure the JSF Portlet Facets in the <property moreinfo="none">New Dynamic Web
+ Project wizard</property> by clicking the <emphasis>
+ <property moreinfo="none">Modify</property>
+ </emphasis> button.</para>
+
+ <figure float="0">
+ <title>Setting the JSF Configuration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On the Project Facets dialog you should select <property moreinfo="none">JBoss Core Portlet</property>
+ and <property moreinfo="none">JBoss JSF Portlet</property> check boxes.</para>
+
+ <figure float="0">
+ <title>Enabling the Portlet Facets</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Next wizard page is for configuring JSF Capabilities. You can leave everything as it
+ is here.</para>
+
+ <figure float="0">
+ <title>JSF Capabilities</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>To support Portlets in JSF/Seam applications <property moreinfo="none">JBoss Tools</property> works
+ with <property moreinfo="none">JBoss Portlet Bridge</property>. Thus on the next page you should add JSF Portlet
+ capabilities by pointing to the Portletbridge Runtime location.</para>
+
+ <figure float="0">
+ <title>JSF Capabilities</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <tip>
+ <title>Tip:</title>
+
+ <para>You can download JBoss Portlet Bridge 1.0.0.B4 from <ulink url="http://www.jboss.org/portletbridge/download/">Portletbridge Download page</ulink>.</para>
+ </tip>
+
+ <para>Next click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> to organize the Project.</para>
+ <para id="add_jsf_portlet">To add JSF Portlet to generated project you should call the
+ <property moreinfo="none">Create Portlet wizard</property> by navigating to <emphasis>
+ <property moreinfo="none">New > Other > JBoss Tools Web > Portlet > JSF/Seam
+ Portlet</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>Calling New Portlet Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>As you see, the Seam and JSF Portlet wizards are merged into one. We set JSF
+ Configuration for the project, so default values in this wizard will be set as for a JSF
+ portlet.</para>
+
+ <figure float="0">
+ <title>Creating JSF Portlet</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> to complete JSF Portlet creation. Now you can deploy the project the same
+ way as it was <link linkend="deploying_to_portal">described above</link>.</para>
+
+ <para>In the Browser JSF Portlet looks as follows.</para>
+
+ <figure float="0">
+ <title>JSF Portlet in the Browser</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet7.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section id="jsf_portlet_to_JSF_project">
+ <title>Adding JSF Portlet to JSF Project</title>
+
+ <para>How to organize a JSF Project you can find out in our <ulink url="../../jsf_tools_ref_guide/html_single/index.html#new_jsf_project">JSF Tools Reference Guide</ulink>. Just
+ remember to point Target Runtime to JBoss Portal directory location.</para>
+
+ <figure float="0">
+ <title>Creating New JSF Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Before adding a Portlet to the project you should enable necessary facets for it.
+ Right-click the created project and click <emphasis>
+ <property moreinfo="none">Preferences</property>
+ </emphasis> to open the <property moreinfo="none">Project Preferences</property> screen.</para>
+ <para>On the <property moreinfo="none">Project Facets</property> page select the <emphasis>
+ <property moreinfo="none">JBoss Core Portlet</property>
+ </emphasis> and <emphasis>
+ <property moreinfo="none">JBoss JSF Portlet</property>
+ </emphasis> checkboxes. And then the screen will ask you to enable <emphasis>
+ <property moreinfo="none">JavaServer Faces</property>
+ </emphasis> facet as well.</para>
+
+ <figure float="0">
+ <title>Project Facets</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet9.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Notice, <emphasis>
+ <property moreinfo="none">"Further configuration required..."</property>
+ </emphasis> warning appears at the bottom of the screen. It means that you should click
+ it to configure JSF and JSF Portlet Capabilities in the project.</para>
+
+ <figure float="0">
+ <title>JSF Capabilities</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet10.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <figure float="0">
+ <title>Project Facets</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_portlet/jsf_portlet11.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>After setting the path to Portletbridge Runtime location, click <emphasis>
+ <property moreinfo="none">OK</property>
+ </emphasis> and then <emphasis>
+ <property moreinfo="none">OK</property>
+ </emphasis> again.</para>
+
+ <para>Now you can add JSF Portlet to the generated JSF Project. How to do it we showed in
+ <link linkend="add_jsf_portlet">the previous section</link>.</para>
+ </section>
+</chapter>
+
+
+<chapter id="seam_portlet" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/portlet/docs/reference/en/modules/seam_portlet.xml" xreflabel="seam_portlet">
+ <?dbhtml filename="seam_portlet.html"?>
+ <title>Creating Seam Portlet</title>
+
+ <para>This chapter covers the steps on how to configure Seam Portlet within Dynamic Web
+ Project and Seam Project by using the wizards <property moreinfo="none">JBoss Tools</property> provides.</para>
+
+ <section id="seam_portlet1">
+ <title>Adding Seam Portlet to Dynamic Web Project</title>
+
+ <para>To add Seam Portlet to a Dynamic Web Project first you should organize New Dynamic Web
+ Project with the Configuration setting to <emphasis>
+ <property moreinfo="none">JBoss Seam Portlet Project v2.0</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>Calling New Portlet Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/seam_portlet/seam_portlet1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>It will add all needed facets to your project. By clicking the <emphasis>
+ <property moreinfo="none">Modify</property>
+ </emphasis> button you can observe the chosen configuration of facets as well as modify
+ it. As you can see, all JBoss Portlets are checked.</para>
+
+ <figure float="0">
+ <title>Project Facets</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/seam_portlet/seam_portlet2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Next wizard pages are for adjusting the Project Web Modules and JSF Configuration.
+ They include default values, so you can skip them by pressing <emphasis>
+ <property moreinfo="none">Next</property>.</emphasis></para>
+
+ <para>On the <property moreinfo="none">Seam Facet</property> page <ulink url="../../seam/html_single/index.html#seamFacet">set
+ Connection Profile</ulink> and hit <emphasis>
+ <property moreinfo="none">Next</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>Seam Facet Settings</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/seam_portlet/seam_portlet3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Last wizard page will prompt you to set the path to Portletbridge Runtime
+ location.</para>
+
+ <figure float="0">
+ <title>Setting the Portletbridge Runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/seam_portlet/seam_portlet4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <tip>
+ <title>Tip:</title>
+
+ <para>Thus you should have JBoss Portlet Bridge downloaded and extracted somewhere on
+ your hard drive. You can download JBoss Portlet Bridge 1.0.0.B4 from <ulink url="http://www.jboss.org/portletbridge/download/">www.jboss.org/portletbridge/download</ulink>.</para>
+ </tip>
+
+ <para>Now, to add Seam Portlet to the project you should follow to <emphasis>
+ <property moreinfo="none">New > Other > JBoss Tools Web > Portlet > JSF/Seam
+ Portlet</property>.</emphasis> This will call the wizard for creating JSF/Seam
+ Portlets.</para>
+
+ <figure float="0">
+ <title>Calling the Create Portlet Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/seam_portlet/seam_portlet5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>As we set Seam Configuration for the Dynamic Web Project, the wizard puts the values
+ as for Seam Portlet.</para>
+
+ <figure float="0">
+ <title>Creating Seam Portlet</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/seam_portlet/seam_portlet6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>After creating the Seam Portlet, you should <link linkend="deploying_to_portal">deploy
+ the project to JBoss Portal</link> and start the Server. In a Browser
+ you'll see the following:</para>
+
+ <figure float="0">
+ <title>Seam Portlet in the Browser</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/seam_portlet/seam_portlet7.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section id="seam_portlet_to_seam_project">
+ <title>Adding Seam Portlet to Seam Project</title>
+
+ <para>First start a Seam Project by following to <emphasis>
+ <property moreinfo="none">New > Other > Seam > Seam Web Project</property>. </emphasis> On the first
+ wizard page specify JBoss Portal directory location as <property moreinfo="none">Target
+ Runtime</property> and <emphasis>
+ <property moreinfo="none">JBoss Seam Portlet Project v2.0</property>
+ </emphasis> as <property moreinfo="none">Configuration</property>.</para>
+
+ <figure float="0">
+ <title>Project Facets</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/seam_portlet/seam_portlet8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Next steps will be the same as we did for the Dynamic Web Project in the <link linkend="seam_portlet1">Adding Seam Portlet to Dynamic Web Project</link>
+ section.</para>
+ </section>
+</chapter>
+
+
+<chapter id="portlets_to_nonWTP_projects" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/portlet/docs/reference/en/modules/portlets_to_nonWTP_projects.xml" xreflabel="portlets_to_nonWTP_projects">
+ <?dbhtml filename="portlets_to_nonWTP_projects.html"?>
+ <title>Adding Portlets to non-WTP Projects</title>
+
+ <para>Starting from <property moreinfo="none">JBoss Tools 3.0.0.Beta1</property> version the JBoss Portlet
+ wizards no longer require a WTP project to be able to create Portlets.</para>
+
+ <note>
+ <title>Note:</title>
+ <para>Please note, if the project does not have the proper portlet API jar's, the generated
+ classes will have compile errors.</para>
+ </note>
+
+ <para>In conclusion, with this document you've learnt how to get started with <property moreinfo="none">JBoss
+ Portal</property> using <property moreinfo="none">JBoss Tools</property> suite of Eclipse plugins.
+ The above chapters walked you through the steps on how to organize a web project with
+ portlets which includes a sample staff and deploy it onto the <property moreinfo="none">JBoss
+ Portal</property>.</para>
+
+ <para>If you still have questions or suggestions you are always welcome on our <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">Forum</ulink>. Your feedback will be very much appreciated.</para>
+
+</chapter>
+
+
+</book>
15 years, 1 month
JBoss Tools SVN: r19331 - branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:14:29 -0500 (Wed, 16 Dec 2009)
New Revision: 19331
Modified:
branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en/master.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating the plugin version;
Modified: branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en/master.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en/master.xml 2009-12-16 15:13:49 UTC (rev 19330)
+++ branches/jbosstools-3.1.0.RC1/portlet/docs/reference/en/master.xml 2009-12-16 15:14:29 UTC (rev 19331)
@@ -48,7 +48,7 @@
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 1.1.0.M2
+ Version: 1.1.0.CR1
</releaseinfo>
<abstract>
15 years, 1 month
JBoss Tools SVN: r19329 - branches/jbosstools-3.1.0.RC1/jsf/docs/userguide/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:13:21 -0500 (Wed, 16 Dec 2009)
New Revision: 19329
Modified:
branches/jbosstools-3.1.0.RC1/jsf/docs/userguide/en/master.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating the plugin version;
Modified: branches/jbosstools-3.1.0.RC1/jsf/docs/userguide/en/master.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/jsf/docs/userguide/en/master.xml 2009-12-16 15:11:24 UTC (rev 19328)
+++ branches/jbosstools-3.1.0.RC1/jsf/docs/userguide/en/master.xml 2009-12-16 15:13:21 UTC (rev 19329)
@@ -40,7 +40,7 @@
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 2.1.0.GA
+ Version: 3.1.0.CR1
</releaseinfo>
<abstract>
<title/>
15 years, 1 month
JBoss Tools SVN: r19328 - branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_tutorial/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:11:24 -0500 (Wed, 16 Dec 2009)
New Revision: 19328
Modified:
branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_tutorial/en/master.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating the plugin version;
Modified: branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_tutorial/en/master.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_tutorial/en/master.xml 2009-12-16 15:10:55 UTC (rev 19327)
+++ branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_tutorial/en/master.xml 2009-12-16 15:11:24 UTC (rev 19328)
@@ -51,7 +51,7 @@
</copyright>
<releaseinfo>
- Version: 3.1.0.M2
+ Version: 3.1.0.CR1
</releaseinfo>
15 years, 1 month
JBoss Tools SVN: r19327 - branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:10:55 -0500 (Wed, 16 Dec 2009)
New Revision: 19327
Modified:
branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en/master_output.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating master_output.xml;
Modified: branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en/master_output.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en/master_output.xml 2009-12-16 15:10:24 UTC (rev 19326)
+++ branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en/master_output.xml 2009-12-16 15:10:55 UTC (rev 19327)
@@ -26,1957 +26,1960 @@
<!ENTITY migrationlink "../../Exadel-migration/html_single/index.html">
-]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
- <bookinfo>
- <title>JSF Tools Reference Guide</title>
- <corpauthor diffmk:change="added">
- <inlinemediaobject diffmk:change="added">
- <imageobject diffmk:change="added" role="fo">
- <imagedata diffmk:change="added" fileref="images/jbosstools_logo.png" format="PNG"></imagedata>
- </imageobject>
- <imageobject diffmk:change="added" role="html">
- <imagedata diffmk:change="added"></imagedata>
- </imageobject>
- </inlinemediaobject>
- </corpauthor>
- <author><firstname>Anatoly</firstname><surname>Fedosik</surname></author>
- <author><firstname>Olga</firstname><surname>Chikvina</surname></author>
- <author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina(a)exadel.com</email></author>
-
- <pubdate>April 2008</pubdate>
- <copyright>
- <year>2007</year>
- <year>2009</year>
- <holder><diffmk:wrapper diffmk:change="changed">JBoss by Red Hat</diffmk:wrapper></holder>
- </copyright>
- <releaseinfo><diffmk:wrapper diffmk:change="changed">
- Version: 3.1.0.M2
- </diffmk:wrapper></releaseinfo>
-
-<abstract>
- <title></title>
- <para>
- <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jsf_tools_ref_guide/...">PDF version</ulink>
- </para>
-</abstract>
-
- </bookinfo>
-
- <toc></toc>
-
-
-<chapter id="introduction" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jsf/docs/jsf_tools_ref_guide/en/modules/introduction.xml">
- <?dbhtml filename="introduction.html"?>
-
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- <keyword>JSF Tools</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Introduction</title>
-
- <para>JSF Tools are especially designed for supporting JSF and JSF-related technologies. JSF
- Tools provide extensible and exemplary tools for building JSF-based applications as well as
- adding JSF capabilities to existing web projects, importing JSF projects and choosing any
- JSF implementation while developing JSF application.</para>
-
- <para>In this guide we provide you with the information on JSF tooling which allows you to
- develop JSF applications much faster and with far fewer errors so sparing your time.</para>
-
- <section id="jsf_key_features">
- <title>Key Features of JSF Tools</title>
-
- <para>Here, we provide you with a key functionality which is integrated in JSF tooling.</para>
-
- <table>
- <title>Key Functionality for JSF Tools</title>
- <tgroup cols="3">
-
- <colspec align="left" colnum="1" colwidth="2*"></colspec>
- <colspec colnum="2" colwidth="4*"></colspec>
- <colspec colnum="3" colwidth="2*"></colspec>
-
- <thead>
- <row>
- <entry>Feature</entry>
- <entry>Benefit</entry>
- <entry>Chapter</entry>
- </row>
- </thead>
- <tbody>
-
- <row>
- <entry>JSF and Facelets support</entry>
- <entry>Step-by-step wizards for creating new JSF and Facelets projects with a number of predefined templates, importing existing ones and adding JSF capabilities to non-jsf web projects.</entry>
- <entry><link linkend="jsf_support">jsf support</link></entry>
- </row>
-
- <row>
- <entry>Flexible and customizable project template management</entry>
- <entry>Jump-start development with out-of-the-box templates or easily
- customized templates for re-use.</entry>
- <entry>
- <link linkend="projects">projects</link>
- </entry>
- </row>
-
- <row>
- <entry>Support for JSF Configuration File</entry>
- <entry>Working on file using three modes: diagram, tree and source.
- Synchronization between the modes and full control over the code. Easy
- moving around the diagram using the Diagram Navigator.</entry>
- <entry>
- <link linkend="jsf_config_file">graphical editor for jsf</link>
- </entry>
- </row>
-
- <row>
- <entry>Support for Managed Beans</entry>
- <entry>Adding new managed beans, generating code for attributes, properties
- and getter/setter methods.</entry>
- <entry>
- <link linkend="managed_beans">managed beans</link>
- </entry>
- </row>
-
- <row>
- <entry>Support for Custom Converters and Validators</entry>
- <entry>Fast creating of custom converters and validators with tree view of
- faces-config.xml file.</entry>
- <entry>
- <link linkend="creation_and_registration">converters and validators</link>
- </entry>
- </row>
-
- <row>
- <entry>Verification and Validation</entry>
- <entry>All occuring errors will be immediately reported by verification
- feature, no matter in what view you are working. Constant validation and
- errors checking allows to catch many of the errors during development
- process that significantly reduces development time.</entry>
- <entry>
- <link linkend="jsf_project_verification">verification and
- validation</link>
- </entry>
-
- </row>
- </tbody>
- </tgroup>
- </table>
- </section>
- <section>
- <title>Other relevant resources on the topic</title>
- <para><diffmk:wrapper diffmk:change="changed">All JBoss Developer Studio/JBoss Tools release documentation you can find at </diffmk:wrapper><ulink url="http://docs.jboss.org/tools/">http://docs.jboss.org/tools</ulink> in the corresponding release directory.</para>
- <para>The latest documentation builds are available at <ulink url="http://download.jboss.org/jbosstools/nightly-docs/">http://download.jboss.org/jbosstools/nightly-docs</ulink>.</para>
- </section>
-</chapter>
-
-
-<chapter id="jsf_support" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jsf/docs/jsf_tools_ref_guide/en/modules/jsf_support.xml">
- <?dbhtml filename="jsf_support.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>JSF Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>JavaServer Faces Support</title>
-
- <para>We don't lock you into any one <property moreinfo="none">JavaServer
- Faces</property> implementation. You can always select the one which is
- necessary for you while <link linkend="new_jsf_project">creating a new JSF
- project</link>, <link linkend="add_jsf_capability">adding JSF capability</link> to
- any existing Eclipse project or <link linkend="ImportingExsJSFProjWithAnyStr74447">importing existing JSF projects</link> as well.</para>
- <para>At this point the special wizard will prompt you to specify a proper JSF environment.
- It may be JSF 1.1.02 RI or JSF 1.2 which integrates a number of new features and
- changes. The wizard also lets you select JSF implementation with a component
- orientation such as JSF 1.2 with Facelets or MyFaces 1.1.4.</para>
-
- <figure float="0">
- <title>Choosing JSF Environment</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_11.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>After specifying a proper JSF environment all the required libraries for the selected
- version will be added to your project.</para>
-
- <section id="FaceletsSupport865">
-
- <title>Facelets Support</title>
- <para>In this section we will focus more on all concepts that are integrated for
- working with Facelets.</para>
-
- <para>The Facelets extends JavaServer Faces by providing a lightweight framework
- that radically simplifies the design of presentation pages for JSF. Facelets can be used in a variety of ways that we
- will consider further in this section.</para>
-
- <section>
- <title>Facelets templates</title>
- <para>If you want to build an application using Facelets, just create a
- project with Facelets based on version 1.2 of the JSF Reference
- Implementation, i. e. select the <emphasis>
- <property moreinfo="none">JSF 1.2 with Facelets</property>
- </emphasis> in the JSF Environment section of the New JSF Project
- wizard.</para>
-
- <figure float="0">
- <title>Choosing Facelets Environment</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Once you've selected the environment, it's possible
- to specify the one of three available templates:</para>
- <figure float="0">
- <title>Choosing Facelets Template</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>The following table lists possible templates with Facelets for any JSF
- project and gives a proper description for each one.</para>
- <table>
- <title>Facelets Templates</title>
- <tgroup cols="2">
- <colspec align="left" colnum="1" colwidth="2*"></colspec>
- <colspec colnum="2" colwidth="3*"></colspec>
-
-
- <thead>
- <row>
- <entry align="center">
- <para>Template</para>
- </entry>
-
- <entry align="center">
- <para>Description</para>
- </entry>
- </row>
- </thead>
-
- <tbody>
-
- <row>
- <entry>
- <para>
- <emphasis>
- <property moreinfo="none">FaceletsBlankWithoutLibs</property>
- </emphasis>
- </para>
- </entry>
-
- <entry>
- <para>Some servers already provide
- jsf libs and you take risk
- of getting conflicting
- libraries while deploying
- your project. To avoid such
- conflicts, use a template
- without libs if you have a
- server with its own jsf
- libraries</para>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>
- <emphasis>
- <property moreinfo="none">FaceletsKickStartWithRILibs</property>
- </emphasis>
- </para>
- </entry>
-
- <entry>
- <para>A sample application with
- Facelets that is ready to
- run</para>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>
- <emphasis>
- <property moreinfo="none">FaceletsKickStartWithoutLibs</property>
- </emphasis>
- </para>
- </entry>
-
- <entry>
- <para>A sample application without
- libraries</para>
- </entry>
- </row>
-
- </tbody>
- </tgroup>
- </table>
- </section>
- <section>
- <title>Facelets components</title>
-
- <para>The <ulink url="../../jsf/html_single/index.html#palette">JBoss Tools
- Palette</ulink> comes with the Facelets components ready to
- use. A useful tip appears when you hover the mouse cursor over the
- tag, the tip includes a detailed description of the tag component,
- the syntax and available attributes.</para>
-
- <!-- JBoss Developer Studio does not provide templates for MyFaces right out of the box, but you can easily do it
- yourself with the "Save As Template" feature (available on the File submenu). Just create a small project
- with MyFaces and Facelets and then save it as a template for future use.
-
- How can I add Facelets support to an existing project?</para>
- <para>A: Right-click on the folder of existing project and select <emphasis>JBoss Tools > Add Custom Capabilities.. > Facelets</emphasis>. </para>
- -->
- <figure float="0">
- <title>Facelets Components</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_4.png" scale="65"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section>
- <title>Code assist for Facelets</title>
-
- <para>One more feature which comes with Facelets support is code assist
- (Ctrl + Space). It is available for <property moreinfo="none">Facelets
- tags</property> while editing <emphasis>
- <property moreinfo="none">.xhtml</property>
- </emphasis> files.</para>
-
- <figure float="0">
- <title>XHTML File Code Assist</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_5.png" scale="60"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>What's more, code assist is also available for <emphasis role="italic">
- <property moreinfo="none">"jsfc"</property>
- </emphasis> attribute in any HTML tag.</para>
-
- <figure float="0">
- <title>Code Assist for JSFC Attribute</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_6.png" scale="70"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>After selecting <emphasis role="italic">
- <property moreinfo="none">"jsfc"</property>
- </emphasis> you get the code assist for JSF components available on
- a page.</para>
-
- <figure float="0">
- <title>Code Assist for JSF Components</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_7.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>When a component is chosen you will see all available attributes for
- it.</para>
-
- <figure float="0">
- <title>Available Attributes for the Component</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_8.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section>
- <title>Open On feature</title>
- <para>Finally, Eclipse's <emphasis>
- <property moreinfo="none">OpenOn</property>
- </emphasis> feature for editing Facelets files is supported. Using this feature,
- you can easily navigate between the <property moreinfo="none">Facelets
- templates</property> and other parts of your projects. Just by
- holding down the Control key while hovering the mouse cursor over a
- reference to a template, the reference becomes a hyperlink to open
- that template.</para>
-
-
- <figure float="0">
- <title>Template Hyperlink</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_9.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <!-- <para>Additionally, when hovering the mouse cursor over <emphasis role="italic"><property>"Facelets tag"</property></emphasis> attributes, JBoss Developer Studio provides a pop-up help tip:</para>
- <figure>
-<title>Pop-up Help Tip for Facelets Tag Attributes</title>
-<mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/defaultImage.png"/>
- </imageobject>
-</mediaobject>
- </figure>
-
- -->
- <!-- <para>See <link linkend="faq_facelets">FAQ</link> concerning Facelets
- support.</para>
- -->
- </section>
-
- <!--section>
- <title>Relevant Resources Links</title>
- <para>Necessary information and support for Facelets find out <ulink
- url="https://facelets.dev.java.net/"
- >here</ulink>.</para>
- </section-->
- </section>
-
-
-
-
-
-
-
-
-
-
- <!--section>
- <title>Relevant Resources Links</title>
- <para>If you don't familiar with <ulink
- url="http://java.sun.com/javaee/javaserverfaces/">JSF
- technology</ulink>, we suggest that you walk through the
- information on the topic.</para>
- </section-->
-</chapter>
-
-
-<chapter diffmk:change="added" id="projects" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jsf/docs/jsf_tools_ref_guide/en/modules/projects.xml">
- <?dbhtml filename="projects.html"?>
- <chapterinfo diffmk:change="added">
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>JSF Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Projects</title>
- <para><diffmk:wrapper diffmk:change="changed">To take an advantage of JSF firstly you should perform one of the next steps:</diffmk:wrapper></para>
-
- <itemizedlist>
- <listitem>
- <para>Create new JSF projects</para>
- </listitem>
- <listitem>
- <para>Import (open) existing JSF projects</para>
- </listitem>
- <listitem>
- <para><diffmk:wrapper diffmk:change="changed">Add JSF capability to any existing Eclipse project</diffmk:wrapper></para>
- </listitem>
- <listitem>
- <para><diffmk:wrapper diffmk:change="changed">Import and add JSF capability to any existing project created outside
- Eclipse.</diffmk:wrapper></para>
- </listitem>
- </itemizedlist>
- <para><diffmk:wrapper diffmk:change="changed">In this section we're going to stop on each of them in detail.</diffmk:wrapper></para>
-
- <section id="new_jsf_project">
-
- <title>Creating a New JSF Project</title>
-
- <para><diffmk:wrapper diffmk:change="changed">If you want your project to already contain all JSF libraries, tag libraries
- and JSF configuration file, just organize a new brand JSF project. It is
- possible to do this easily with the help of the special wizard. To get it, select</diffmk:wrapper><emphasis>
- <property moreinfo="none"><diffmk:wrapper diffmk:change="changed"> File > New > Project > JBoos Tools
- Web > JSF > JSF Project</diffmk:wrapper></property>
- </emphasis> and click <emphasis>
- <property moreinfo="none">Next</property>.</emphasis></para>
-
- <figure float="0">
- <title>Choosing a JSF Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_10.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para><diffmk:wrapper diffmk:change="changed">On the next form you'll be prompted to enter </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Project
- Name</diffmk:wrapper></property><diffmk:wrapper diffmk:change="changed"> and select a location for the project or just leave
- a default path.</diffmk:wrapper></para>
- <para><diffmk:wrapper diffmk:change="changed">Here, JSF Version also allows you to select which JSF implementation to
- use.</diffmk:wrapper></para>
- <figure float="0">
- <title>Creating a New JSF Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_11.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para><diffmk:wrapper diffmk:change="changed">There is a number of predefined project templates that are flexible and easily
- customizable. Thus you can pick a different template on which the projects
- Importing Existing should be based on. Almost all templates come in two
- variations: with jsf libraries and without ones.</diffmk:wrapper></para>
- <figure float="0">
- <title>Choosing JSF Templates</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_12.png "></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para><diffmk:wrapper diffmk:change="changed">The table below provides description for each possible JSF template.</diffmk:wrapper></para>
- <table>
- <title>JSF Project Templates</title>
- <tgroup cols="2">
- <colspec align="left" colnum="1" colwidth="1*"></colspec>
- <colspec colnum="2" colwidth="3*"></colspec>
-
-
- <thead>
- <row>
- <entry align="center">
- <para>Template</para>
- </entry>
-
- <entry align="center">
- <para>Description</para>
- </entry>
- </row>
- </thead>
-
- <tbody>
-
- <row>
- <entry>
- <para>
- <emphasis>
- <property moreinfo="none">JSFBlankWithLibs</property>
- </emphasis>
- </para>
- </entry>
-
- <entry>
- <para><diffmk:wrapper diffmk:change="changed">This template will create a standard Web
- project structure with all JSF capabilities</diffmk:wrapper></para>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>
- <emphasis>
- <property moreinfo="none">JSFKickStartWithLibs</property>
- </emphasis>
- </para>
- </entry>
-
- <entry>
- <para><diffmk:wrapper diffmk:change="changed">This template will create a standard Web
- project structure but will also include a sample
- application that is ready to run</diffmk:wrapper></para>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>
- <emphasis>
- <property moreinfo="none">JSFKickStartWithoutLibs</property>
- </emphasis>
- </para>
- </entry>
-
- <entry>
- <para><diffmk:wrapper diffmk:change="changed">Some servers already provide jsf libs and
- you take risk of getting conflicting libraries
- while deploying your project. To avoid such
- conflicts, use a template without libs if you have
- a server with its own jsf libraries</diffmk:wrapper></para>
- </entry>
- </row>
-
- </tbody>
- </tgroup>
- </table>
-
-
-
-
- <para>On the next screen select what <emphasis>
- <property moreinfo="none">Servlet version</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> to use and whether to register this application with JBoss AS
- (or other server) for running and testing your application.</diffmk:wrapper></para>
-
- <para>The <emphasis>
- <property moreinfo="none">Context Path</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> is the name under which the application will be deployed.</diffmk:wrapper></para>
-
- <para>The <emphasis>
- <property moreinfo="none">Runtime</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> value tells Eclipse where to find Web libraries in order to
- build (compile) the project. It is not possible to finish project creation
- without selecting Runtime. If you don't have any values, select </diffmk:wrapper><emphasis>
- <property moreinfo="none">New...</property>
- </emphasis> to add new Runtime.</para>
-
- <para>The <emphasis>
- <property moreinfo="none">Target Server</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> allows you specifying whether to deploy the application. The
- Target Server corresponds to the Runtime value selected above. If you
- don't want to deploy the application, uncheck this value.</diffmk:wrapper></para>
- <figure float="0">
- <title>Registering the Project on Server</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_14.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para><diffmk:wrapper diffmk:change="changed">When you are all done, you should have the project that has been appeared in
- the Package Explorer view:</diffmk:wrapper></para>
- <figure float="0">
- <title>A New Project in the Package Explorer</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_15.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>At this point you can open <emphasis>
- <property moreinfo="none">faces-config.xml</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> and start working on your application. There are a lot of
- features to develop JSF applications. We will describe the features
- further.</diffmk:wrapper></para>
- </section>
-
- <section id="ImportingExsJSFProjWithAnyStr74447">
-
- <title>Importing Existing JSF Projects with Any Structure</title>
-
- <para><diffmk:wrapper diffmk:change="changed">For detailed information on migration of JSF projects into a workspace see
- </diffmk:wrapper><ulink url="../../Exadel-migration/html_single/index.html#jsf_struts"><diffmk:wrapper diffmk:change="changed">Migration
- Guide</diffmk:wrapper></ulink>.</para>
-
- </section>
- <section id="add_jsf_capability">
-
- <title>Adding JSF Capability to Any Existing Eclipse Project</title>
-
- <para>It's also possible to add <property moreinfo="none">JSF capability</property><diffmk:wrapper diffmk:change="changed"> (JSF
- libraries, tag libraries) to any existing Eclipse project in your workspace.
- After that you'll be able to make use of such editors as JSF
- configuration editor, JBoss Tools JSP editor and any others.</diffmk:wrapper></para>
- <para>Right click the project and select <emphasis>
- <property moreinfo="none"><diffmk:wrapper diffmk:change="changed">JBoss Tools > Add JSF Capabilities</diffmk:wrapper></property>. </emphasis><diffmk:wrapper diffmk:change="changed">
- This will start the process of adding all necessary libraries, files to make
- this a Web JSF project.</diffmk:wrapper></para>
- <figure float="0">
- <title>Adding JSF Capabilities</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_16.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>The wizard will first ask you to show the <emphasis>
- <property moreinfo="none">web.xml</property>
- </emphasis> file location and the project name.</para>
- <figure float="0">
- <title>Project Location</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_17.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para><diffmk:wrapper diffmk:change="changed">On the last form you can set the different folders for your project as well as
- register this application with a servlet container.</diffmk:wrapper></para>
-
- <para>Make sure to select <emphasis>
- <property moreinfo="none">Add Libraries</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> to add all required JSF related libraries to this
- project.</diffmk:wrapper></para>
-
- <para>The <emphasis>
- <property moreinfo="none">Context Path</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> is the name under which the application will be deployed.</diffmk:wrapper></para>
-
- <para>The <emphasis>
- <property moreinfo="none">Runtime</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> value tells Eclipse where to find Web libraries in order to
- build (compile) the project. It is not possible to finish project import
- without selecting Runtime. If you don't have any values, select </diffmk:wrapper><emphasis>
- <property moreinfo="none">New...</property>
- </emphasis> to add new Runtime.</para>
-
- <para>The <emphasis>
- <property moreinfo="none">Target Server</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> allows you to specify whether to deploy the application. The
- Target Server corresponds to the Runtime value selected above. If you
- don't want to deploy the application, uncheck this value.</diffmk:wrapper></para>
- <figure float="0">
- <title>Project Folders</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_18.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para><diffmk:wrapper diffmk:change="changed">Once your project is imported you can see that JSF related libraries have been
- added to your project: </diffmk:wrapper><emphasis>
- <property moreinfo="none">jsf-api.jar</property>
- </emphasis> and <emphasis>
- <property moreinfo="none">jsf-impl.jar</property>
- </emphasis>.</para>
- <note>
- <title>Note:</title>
- <para><diffmk:wrapper diffmk:change="changed">Some application servers provide their own jsf implementation
- libraries. Thus, to avoid conflicts you should not add jsf libraries
- while adding jsf capabilities.</diffmk:wrapper></para>
- </note>
- <para><diffmk:wrapper diffmk:change="changed">You are now ready to work with JSF by creating a new JSF configuration
- file:</diffmk:wrapper></para>
-
-
- <figure float="0">
- <title>Creating a New JSF Configuration File</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_19.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para><diffmk:wrapper diffmk:change="changed">Once the file has been created, it should be opened in a special </diffmk:wrapper><link linkend="jsf_config_file">Faces Config Editor</link>.</para>
- </section>
- <section id="AddingYourOwnProjectTemplates853">
-
- <title>Adding Your Own Project Templates</title>
- <para><diffmk:wrapper diffmk:change="changed">Template is a set of files that is served as a basis to facilitate the
- creation of a new project. Project templates provide content and structure
- for a project.</diffmk:wrapper></para>
- <para><diffmk:wrapper diffmk:change="changed">There is a powerful templating capability for creating new and importing
- existing Struts and JSF projects. This templating facility has a variety of
- aspects to consider. But, let's start with the most straightforward
- case and consider the process of creating a template from your existing JSF
- project.</diffmk:wrapper></para>
-
- <para><diffmk:wrapper diffmk:change="changed">Let's say you have a project that you want to use as the basis for a
- new </diffmk:wrapper><property moreinfo="none">template</property><diffmk:wrapper diffmk:change="changed">. Follow these steps to make a template out
- of it:</diffmk:wrapper></para>
- <itemizedlist>
- <listitem>
- <para><diffmk:wrapper diffmk:change="changed">In the Web Projects view, right-click the project and select </diffmk:wrapper><emphasis>
- <property moreinfo="none">JBoss Tools JSF > Save As
- Template</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Saving Your Project as Template</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_20.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para><diffmk:wrapper diffmk:change="changed">In the first dialog box, you can choose a name for the
- template (defaults to the project name) and confirm what
- run-time implementation of the project technology will be
- used</diffmk:wrapper></para>
- </listitem>
-
- </itemizedlist>
- <figure float="0">
- <title>Define Template Properties</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_20_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
-
- <itemizedlist>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> and you will be sent to a dialog box with your
- project structure displayed with check boxes. Here you can
- check only those parts and files in your project directory
- that should be part of the template</diffmk:wrapper></para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Define Template Properties</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_20_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para><diffmk:wrapper diffmk:change="changed">At this point, unless you want to designate some extra files
- as having Velocity template coding inside them, you should
- click </diffmk:wrapper><emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis>.</para>
- </listitem>
- </itemizedlist>
- <para><diffmk:wrapper diffmk:change="changed">That's it. Now, you can use this template with any new or imported
- project that uses the same run-time implementation as the project you turned
- into a template.</diffmk:wrapper></para>
- <para><diffmk:wrapper diffmk:change="changed">At this point, you have a fully configured project and now you can bring some
- new logic to it starting from JSF configuration file.</diffmk:wrapper></para>
- </section>
- <section diffmk:change="added">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Relevant Resources Links</diffmk:wrapper></title>
-
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">You can find more in-depth explanation on how to work with special wizards, editors and views that can
- be used in various scenarios while developing JSF applications in our </diffmk:wrapper><ulink diffmk:change="added" url="../../jsf/html_single/index.html"><diffmk:wrapper diffmk:change="added">Visual Web Tools guide</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></para>
- </section>
-</chapter>
-
-
-<chapter diffmk:change="added" id="webxml_editor" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jsf/docs/jsf_tools_ref_guide/en/modules/webxml_editor.xml" xreflabel="webxml_editor">
- <?dbhtml filename="webxml_editor.html"?>
- <chapterinfo diffmk:change="added">
- <keywordset diffmk:change="added">
- <keyword diffmk:change="added"><diffmk:wrapper diffmk:change="added">JBoss Tools</diffmk:wrapper></keyword>
- <keyword diffmk:change="added"><diffmk:wrapper diffmk:change="added">JSF Tools</diffmk:wrapper></keyword>
- </keywordset>
- </chapterinfo>
-
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Web.xml Editor</diffmk:wrapper></title>
-
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">The </diffmk:wrapper><emphasis diffmk:change="added">
- <property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">web.xml</diffmk:wrapper></property></emphasis><diffmk:wrapper diffmk:change="added"> file inside the </diffmk:wrapper><emphasis diffmk:change="added">
- <property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">WEB-INF</diffmk:wrapper></property></emphasis><diffmk:wrapper diffmk:change="added"> folder is a deployment descriptor file for a Web Application. It
- describes the servlets and other components and deployment properties that make up your application.</diffmk:wrapper></para>
-
- <para diffmk:change="added"><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">JBoss Tools</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> add the </diffmk:wrapper><emphasis diffmk:change="added">
- <property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">web.xml</diffmk:wrapper></property></emphasis><diffmk:wrapper diffmk:change="added"> file to created JSF project automatically and provides a special editor for its editing.
- See the Visual Web Tools guide that gives a descriptive information on the </diffmk:wrapper><ulink diffmk:change="added" url="../../jsf/html_single/index.html#GraphicalWebApplicationFileEditor"><diffmk:wrapper diffmk:change="added">web.xml editor</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></para>
-</chapter>
-
-<chapter id="jsf_config_file" role="updated" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jsf/docs/jsf_tools_ref_guide/en/modules/jsf_config_file.xml">
- <?dbhtml filename="jsf_config_file.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>JSF Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>JSF Configuration File Editor</title>
-
- <para>First, we should mention that JSF configuration file (<emphasis>
- <property moreinfo="none">faces-config.xml</property>
- </emphasis>) is intended for registering JSF application resources such as Converters,
- Validators, Managed Beans and page-to-page navigation rules.</para>
- <para>Now, let's look at how you can easily configure this file by means of a special
- graphical editor for JSF configuration file. The editor has three main views:</para>
-
- <itemizedlist>
- <listitem>
- <para>Diagram</para>
- </listitem>
- <listitem>
- <para>Tree</para>
- </listitem>
- <listitem>
- <para>Source</para>
- </listitem>
- </itemizedlist>
-
- <para>They can be selected via the tabs at the bottom of the editor.</para>
-
- <section id="Diagram9553">
-
- <title>Diagram view</title>
-
- <para>Here, we will show you how to work with JSF configuration file through the Diagram
- view of the editor.</para>
- <para>As you can see on the figure below, the Diagram view displays the navigation rules in
- the faces-config.xml:</para>
- <figure float="0">
- <title>Diagram View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_21.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>If your diagram is large, make use of the Outline view. Within it you can switch to a <emphasis>
- <property moreinfo="none">Diagram Navigator</property>
- </emphasis> mode by selecting the middle icon at the top of the view window. It allows
- you to easily move around the diagram. Just move the blue area in any direction, and the
- diagram on the left will also move:</para>
- <figure float="0">
- <title>Outline View for Diagram</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_32.png" scale="50"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>To create a new page here, you should click the page icon (View Template) on the
- toolbar from the left and then click anywhere on the diagram. A New Page Wizard will
- appear.</para>
-
- <para>To create a transition for connecting pages:</para>
-
- <itemizedlist>
- <listitem>
- <para>Select the transition icon from the toolbar (New Connection).</para>
- </listitem>
- <listitem>
- <para>Click the source page.</para>
- </listitem>
- <listitem>
- <para>Click the target page.</para>
- </listitem>
- </itemizedlist>
-
- <para>A transition will appear between the two pages:</para>
- <figure float="0">
- <title>Transition between JSP Pages</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_22.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>It is also possible to create a new page with context menu by right-clicking anywhere
- on the diagram and selecting <emphasis>
- <property moreinfo="none">New View</property>. </emphasis></para>
- <figure float="0">
- <title>Creating a New View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_23.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>To edit an existing transition, first select the transition line. Then, place the
- mouse cursor over the last black dot (on the target page). The mouse cursor will change
- to a big +. At this point, drag the line to a new target page:</para>
- <figure float="0">
- <title>Editing Transition between Views</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_24.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section id="TreeView11123" role="updated">
-
- <title>Tree View</title>
-
- <para>You can find it more convenient to edit your JSF Configuration file in the Tree view of
- the <property moreinfo="none">VPE</property>.</para>
-
- <para>The view displays all JSF application artifacts referenced in the configuration file
- in a tree format. By selecting any node on the left, you can see and edit its properties
- which will appear in the right-hand area. Let's look at the structure of this
- tree more closely.</para>
-
- <itemizedlist>
- <listitem>
- <para>Under the <emphasis>
- <property moreinfo="none">Application</property>
- </emphasis> node you can adjust JSF application specific settings such as
- internationalization, possibility to set extensions, add property and variable
- resolvers, etc.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>JSF Application Specific Settings</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_24a.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>The <emphasis>
- <property moreinfo="none">Components</property>
- </emphasis> node is for registering custom JSF components. Right-click and
- choose <emphasis>
- <property moreinfo="none">New > Component</property>
- </emphasis> or just press the <emphasis>
- <property moreinfo="none">Add</property>
- </emphasis> button in the right-hand area to add a new component to the JSF
- Configuration file.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Registering a New JSF Component</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_24b.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>In the <property moreinfo="none">Add Component wizard</property> you should set a component
- type and point to a component class by using the <emphasis>
- <property moreinfo="none">Browse</property>
- </emphasis> button or create a new class for this component by using the <emphasis>
- <property moreinfo="none">Component-Class</property>
- </emphasis> link.</para>
-
- <figure float="0">
- <title>Adding a New JSF Component to the JSF Configuration File</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_24c.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>Use the <emphasis>
- <property moreinfo="none">Render Kit</property>
- </emphasis> node to create and register a set of related renderers for custom
- JSF components.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Adding a New JSF Component to the JSF Configuration File</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_24d.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>Under the <emphasis>
- <property moreinfo="none">Converters</property>
- </emphasis> node you can create a converter class for your JSF application
- either with id or for a proper class. How to do that see the <link linkend="CreateAndRegisterACustomConverter94230">Create and Register a
- Custom Converter</link> section.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Creating a New Custom Converter</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_59.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>The <emphasis>
- <property moreinfo="none">Managed Bean</property>
- </emphasis> node is meant for creating and registering Bean classes in your JSF
- application. Read more on the topic in the <link linkend="managed_beans">Managed
- Beans</link> chapter.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Managed Beans</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_26.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>Use the <emphasis>
- <property moreinfo="none">Navigation Rules</property>
- </emphasis> node to configure a navigation between the pages in your
- application: create a new navigation rule and adjust necessary properties for it
- in the right-hand area.</para>
- </listitem>
- </itemizedlist>
- <tip>
- <title>Tip:</title>
- <para>The same you can do in the <link linkend="Diagram9553">Diagram view</link> of the
- JSF Configuration file editor.</para>
- </tip>
-
- <figure float="0">
- <title>Configuring Navigation Rules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_26a.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>Under the <emphasis>
- <property moreinfo="none">Referenced Beans</property>
- </emphasis> node you can add a new Referenced Bean and configure various
- properties for it. To learn more on this refer to the <link linkend="referenced_beans">Create and Register Referenced Beans</link>
- section.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Referenced Beans</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_26b.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>The <emphasis>
- <property moreinfo="none">Validators</property>
- </emphasis> node is needed to create validator classes for organizing the
- validation of your application data. You can read more on the topic in the <link linkend="CreateAndRegisterACustomValidator5632">Create and Register a Custom
- Validator</link> section.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Validators</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_26c.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>The <emphasis>
- <property moreinfo="none">Extensions</property>
- </emphasis> node is for setting extensions for your <emphasis>
- <property moreinfo="none">faces-config.xml</property>.</emphasis></para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Adding Extensions</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_26d.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>In the <property moreinfo="none">Tree view</property> you can also edit the properties of the selected
- element with the help of the <property moreinfo="none">Properties view</property> as shown below:</para>
-
- <figure float="0">
- <title>Properties View </title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_33.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- </section>
- <section id="SourceView4643">
-
- <title>Source View</title>
-
- <para>Here, we'll discuss how you can configure your faces-config.xml with the help
- of Source View.</para>
- <para>The Source view for the editor displays a text content of the JSF configuration file.
- It is always synchronized with other two views, so any changes made in one of the views
- will immediately appear in the other:</para>
- <figure float="0">
- <title>Source View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_27.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
-
- <para>You can also work in the Source view with the help of the <emphasis>
- <property moreinfo="none">Outline view</property>.</emphasis> The Outline view shows a tree
- structure of the JSF configuration file. Simply select any element in the Outline view,
- and it will jump to the same place in the Source editor, so you can navigate through the
- source code with Outline view.</para>
- <figure float="0">
- <title>Outline View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_31.png" scale="50"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- </section>
-
- <section id="jsf_editor_features">
- <title>Editor Features</title>
- <para>Here we'll discuss a very important features that JSF configuration file
- editor provides for work with JSF resources.</para>
-
- <section id="jsf_openOn">
- <title>Open On</title>
- <para>The JSF configuration file editor comes with a very useful OpenOn navigating
- feature. More fully you can read about it in our <ulink url="../../jsf/html_single/index.html#OpenOnSelection4Hyperlinknavigation">Visual Web Tools
- Guide</ulink>.</para>
- </section>
-
- <section id="ContentAssist976">
-
- <title>Code Assist</title>
- <para>Code Assist provides pop-up tip to help you complete your code statements. It
- allows you to write your code faster and with more accuracy.</para>
- <para>Code assist is always available in the Source mode:</para>
- <figure float="0">
- <title>Code Assist in Source View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_28.png" scale="65"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- </section>
-
- <section id="ErrorReporting3324">
-
- <title>Error Reporting</title>
- <para>When you are developing your project, error checking is constantly provided. This
- greatly reduces your development time as it allows you to catch many of the errors
- during development.</para>
- <para>Errors will be reported by <link linkend="jsf_project_verification">
- verification</link> facility:</para>
- <figure float="0">
- <title>Error Reporting in Source View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_29.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Other errors are also reported.</para>
- <figure float="0">
- <title>Other Errors Reporting</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_30.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- </section>
- </section>
-
-</chapter>
-
-
-<chapter id="managed_beans" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jsf/docs/jsf_tools_ref_guide/en/modules/managed_beans.xml">
- <?dbhtml filename="managed_beans.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>JSF Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Managed Beans</title>
-
- <para>There is lots of power to work with <property moreinfo="none">managed beans</property>.</para>
- <itemizedlist>
- <listitem>
- <para>Add and generate code for new managed beans</para>
- <itemizedlist>
- <listitem>
- <para>Generate code for attributes and getter/setter methods</para>
- </listitem>
- </itemizedlist>
- </listitem>
- <listitem>
- <para>Add existing managed beans to JSF configuration file</para>
- </listitem>
- </itemizedlist>
-
- <para>Thus, in this section we will guides you through all this possibilities.</para>
-
- <section id="CodeGenerationForManagedBeans421">
-
- <title>Code Generation for Managed Beans</title>
-
- <para>To start, create a new managed bean in JSF configuration file editor, in the Tree
- view.</para>
- <figure float="0">
- <title>Creation of New Managed Bean</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_34.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <note>
- <title>Note:</title>
- <para>When you define a new managed bean, make sure that <emphasis>
- <property moreinfo="none">Generate Source Code</property>
- </emphasis> is checked as shown in the figure below.</para>
- </note>
- <figure float="0">
- <title>New Managed Bean</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_35.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>After the <emphasis role="italic">
- <property moreinfo="none">"Java"</property>
- </emphasis> class has been generated you can open it for additional editing. There are
- two ways to open the <emphasis role="italic">
- <property moreinfo="none">"Java"</property>
- </emphasis> class:</para>
-
- <itemizedlist>
- <listitem>
- <para>click on <emphasis>
- <property moreinfo="none">Managed-Bean-Class</property>
- </emphasis> link in the editor</para>
- </listitem>
- </itemizedlist>
- <para>or</para>
- <itemizedlist>
- <listitem>
- <para>right click the <emphasis>
- <property moreinfo="none">managed bean</property>
- </emphasis> and select <emphasis>
- <property moreinfo="none">Open Source</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Opening of Created Managed Bean</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_36.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The generated Java source should look as follows:</para>
-
- <figure float="0">
- <title>Java Source Code</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_37.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>You can also generate source code for properties, also includes <emphasis role="italic">
- <property moreinfo="none">"getter"</property>
- </emphasis> and <emphasis role="italic">
- <property moreinfo="none">"setter"</property>
- </emphasis> methods. Right click on the bean and select <emphasis>
- <property moreinfo="none">New > Property</property>
- </emphasis>. You will see <property moreinfo="none">Add Property</property> dialog.</para>
- <figure float="0">
- <title>Generation of Source Code for Properties</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_38.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>When the form is open make sure that all the check boxes are selected:</para>
- <itemizedlist>
- <listitem>
- <para>Add Java property</para>
- </listitem>
- <listitem>
- <para>Generate Getter</para>
- </listitem>
- <listitem>
- <para>Generate Setter</para>
- </listitem>
- </itemizedlist>
- <para></para>
- <figure float="0">
- <title>"Add Property" Form</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_39.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Once the generation is complete, you can open the file and see the added property with
- <emphasis role="italic">
- <property moreinfo="none">"get"</property>
- </emphasis> and <emphasis role="italic">
- <property moreinfo="none">"set"</property>
- </emphasis> methods:</para>
- <figure float="0">
- <title>Generated Java Source Code for Property</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_40.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Thus, we've discussed everything which comes to creating a new Managed Bean.
- The next section will show you how to add an existing Bean into a JSF configuration
- file.</para>
- </section>
- <section id="AddExistingJavaBeansToAJSFConfigurationFile74332">
-
- <title>Add Existing Java Beans to a JSF Configuration File</title>
- <para>If you already have a Java bean you can easily add it to a <property moreinfo="none">JSF configuration
- file</property>.</para>
- <para>You should start the same way you create a new managed bean. Use the <emphasis>
- <property moreinfo="none">Browse...</property>
- </emphasis> button to add your existing Java class.</para>
- <figure float="0">
- <title>New Managed Bean Form</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_42.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Once the class is set, its <emphasis>
- <property moreinfo="none">Name</property>
- </emphasis> will be set as well. But you can easily substitute it for the other one.
- Notice that <emphasis>
- <property moreinfo="none">Generate Source Code</property>
- </emphasis> option is not available as the <emphasis role="italic">
- <property moreinfo="none">"Java"</property>
- </emphasis> class already exists. </para>
- <para>After adding your class <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis> button will be activated. Pressing it you'll get <emphasis>
- <property moreinfo="none">Managed Properties</property>
- </emphasis> dialog where all corresponding properties are displayed. Check the necessary
- ones to add them into your <property moreinfo="none">JSF Configuration File</property>.</para>
-
- <figure float="0">
- <title>Selection of Bean's Properties.</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_43.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>If you don't want to add any, just click <emphasis>
- <property moreinfo="none">Finish</property>. </emphasis></para>
- <para>Above-listed steps have demonstrated how you can specify an existing Bean in the JSF
- configuration file, i.e. <emphasis>
- <property moreinfo="none">faces-config.xml</property>. </emphasis> In the next chapter
- you'll know how to organize and register another kind of artifacts.</para>
- </section>
-</chapter>
-
-
-<chapter id="creation_and_registration" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jsf/docs/jsf_tools_ref_guide/en/modules/creation_and_registration.xml">
- <?dbhtml filename="creation_and_registration.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>JSF Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
- <title>Creation and Registration</title>
-
- <section id="CreateAndRegisterACustomConverter94230">
-
- <title>Create and Register a Custom Converter</title>
-
- <para>It's also possible to create a
- custom Converter in order to specify your own converting rules. Let's look at how you can do this.</para>
-
- <para>To create and register a custom converter it's necessary to
- go through the following steps:</para>
-
- <itemizedlist>
- <listitem>
- <para>In the Project Explorer view open <emphasis>
- <property moreinfo="none">faces-config.xml</property>
- </emphasis> and select <emphasis>
- <property moreinfo="none">Tree</property>
- </emphasis> tab.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Converters</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_44.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">Converters</property>
- </emphasis> and click on<emphasis>
- <property moreinfo="none"> Add</property>
- </emphasis> button.</para>
- </listitem>
- <listitem>
- <para>On the form type the name of your converter in the <emphasis>
- <property moreinfo="none">Converter-id</property>
- </emphasis> field and name of the class for
- converters. After clicking <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button your custom converter is
- registered under the entered name.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Add Converter Form</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_45.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Now you can create <emphasis role="italic">
- <property moreinfo="none">"converter"</property>
- </emphasis> class. In the Converter section you
- should see your <emphasis>
- <property moreinfo="none">Converter-id</property>
- </emphasis> and
- <emphasis><property moreinfo="none">Converter-class</property>.</emphasis>
- Click on <emphasis>
- <property moreinfo="none">Converter-class</property>
- </emphasis> to generate the source code.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Generation of Source Code for Converter Class</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_46.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>A usual wizard for creating a Java class will appear.
- All needed fields here will be adjusted
- automatically. Just leave everything without changes
- and click <emphasis>
- <property moreinfo="none">Finish</property>.
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>New Java Class Form</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_47.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>To open a converter class click again on <emphasis>
- <property moreinfo="none">Converter-class</property>
- </emphasis> link in the Converter section.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Converter Class</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_48.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Now you
- are able to add a business logic of converter in the
- Java editor.</para>
- </section>
-
- <section id="CreateAndRegisterACustomValidator5632">
-
- <title>Create and Register a Custom Validator</title>
-
- <para>It's also quite easy to develop your
- own custom Validators. You should perform the actions similar to the
- previous one. Go through the following steps:</para>
- <itemizedlist>
- <listitem>
- <para>In the Project Explorer view open<emphasis>
- <property moreinfo="none"> faces-config.xml</property>
- </emphasis> and select <emphasis>
- <property moreinfo="none">Tree </property>
- </emphasis>tab.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Validator in Faces Config Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_49.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">Validators</property>
- </emphasis> and click on <emphasis>
- <property moreinfo="none">Add </property>
- </emphasis>button.</para>
- </listitem>
- <listitem>
- <para>Type the name of your validator in the <emphasis>
- <property moreinfo="none">Validator-id</property>
- </emphasis> field and name of the class for
- validators. After clicking <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button your custom validator is
- registered under the entered name.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Adding Validator</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_50.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Now you can create the "validator" class. </para>
- <itemizedlist>
- <listitem>
- <para>In the Validator section you can see your <emphasis>
- <property moreinfo="none">Validator-id</property>
- </emphasis> and <emphasis>
- <property moreinfo="none">Validator-class</property></emphasis>. To generate the source code click on <emphasis>
- <property moreinfo="none">Validator-class</property>.
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Creating Validator Class</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_51.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Java class will be created automatically. Leave
- everything without changes and click <emphasis>
- <property moreinfo="none">Finish</property>.
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>New Java Class Form</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_52.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>To open validator class click again on <emphasis>
- <property moreinfo="none">Validator-Class</property>
- </emphasis> link in the Validator section. Now you
- are able to write a business logic of validator in
- the Java editor.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Converter Class Editing</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_53.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-
- <section id="referenced_beans">
- <title>Create and Register Referenced Beans</title>
-
- <para>Creation of Referenced Beans is similar to creation of Custom
- Validator as well. To perform this, let's walk through the necessary steps.</para>
-
- <itemizedlist>
- <listitem>
- <para>In the Project Explorer view open<emphasis>
- <property moreinfo="none"> faces-config.xml</property>
- </emphasis> and select <emphasis>
- <property moreinfo="none">Tree </property>
- </emphasis>tab.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Referenced Beans in Faces Config Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_54.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">Referenced Beans</property>
- </emphasis> and click on <emphasis>
- <property moreinfo="none">Add</property>
- </emphasis> button.</para>
- </listitem>
- <listitem>
- <para>Type in the name of your Referenced Bean and type in
- or select <emphasis>
- <property moreinfo="none">Referenced-Bean-Class</property>
- </emphasis> by using <emphasis>
- <property moreinfo="none">Browse</property>
- </emphasis> button.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Add Referenced Bean</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_55.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>In the Referenced Bean section you should see your <emphasis>
- <property moreinfo="none">Referenced-Bean-Name</property>
- </emphasis> and
- <emphasis><property moreinfo="none">Referenced-Bean-Class</property>.</emphasis>
- Click on the link to open the Java creation
- wizard.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Create Referenced Bean Class</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_56.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Java class will be created automatically. Leave
- everything without changes and click <emphasis>
- <property moreinfo="none">Finish</property>.
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>New Java Class Form</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_57.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>To open Referenced Bean class click again on <emphasis>
- <property moreinfo="none">Referenced-Bean-Class</property>
- </emphasis> in the Referenced Bean section. Now you
- are able to write business logic of Referenced Bean
- in the Java editor.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Referenced Bean Class Editing</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_support/jsf_support_58.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-</chapter>
-
-<chapter id="jsf_project_verification" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jsf/docs/jsf_tools_ref_guide/en/modules/jsf_project_verification.xml">
- <?dbhtml filename="struts_project_verification.html"?>
-
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>JSF Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>JSF Project Verification</title>
-
- <para>In this chapter we'll discuss a possible verification that you can take advantage
- of.</para>
- <!-- JBoss Developer Studio checks for many different rules for a JSF project -->
- <para>Many different rules are checked for a JSF project that can be configured by selecting <emphasis>
- <property moreinfo="none">Window > Preferences</property>
- </emphasis> from the menu bar, selecting <emphasis>
- <property moreinfo="none">JBoss Tools > Web > Verification</property>
- </emphasis> from the Preferences dialog box and then expanding the JSF Rules node.</para>
- <figure float="0">
- <title>JSF Rules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Suppose you are working in the Source viewer for a JSF configuration file as shown below:</para>
- <figure float="0">
- <title>Faces-config.xml File</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>While typing a class name, you might make a minor typo (like <emphasis role="italic">
- <property moreinfo="none">"jsfHello.PersonBean9"</property>
- </emphasis> instead of <emphasis role="italic">
- <property moreinfo="none">"jsfHello.PersonBean"</property>
- </emphasis>). After saving the file, verification checks to make sure everything is correct
- and finds the error below:</para>
- <figure float="0">
- <title>Error in Source View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_3.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Notice that the Package Explorer View shows a marked folder and a marked file where the
- error is.</para>
- <para>You can place the cursor over the line with an error message and get a detailed error
- message:</para>
- <figure float="0">
- <title>Error Message</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Verification also checks navigation rules:</para>
- <figure float="0">
- <title>Checking Navigation Rules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>If you provide a page name that does not exist, verification will let you know about that:</para>
- <figure float="0">
- <title>Page Name Verification</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_6.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>You can always call up verification explicitly by right-clicking any element in the tree
- and selecting Verify from the context menu. This works from both the Tree and Diagram
- viewers for the JSF configuration file editor. You can also invoke verification from the Web
- Projects view. Below we are checking all of the elements in the configuration file.</para>
- <figure float="0">
- <title>Verify Command</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_7.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>In summary, this document highlights all the JSF-specific features of <property moreinfo="none">JBoss Tools</property>
- meant for enhancing the development of rich Web applications based on JSF technology. The
- reference introduces you to wizards for creating and importing JSF projects, JSF
- Configuration File editor features, functionality for enabling JSF capabilities and etc.</para>
-
- <para>If you have questions or good suggestions, please refer to <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss
- Tools Forum</ulink>.</para>
-</chapter>
-
-</book>
+]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
+ <bookinfo>
+ <title>JSF Tools Reference Guide</title>
+ <corpauthor>
+ <inlinemediaobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/jbosstools_logo.png" format="PNG"></imagedata>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+ </corpauthor>
+ <author><firstname>Anatoly</firstname><surname>Fedosik</surname></author>
+ <author><firstname>Olga</firstname><surname>Chikvina</surname></author>
+ <author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina(a)exadel.com</email></author>
+
+ <pubdate>April 2008</pubdate>
+ <copyright>
+ <year>2007</year>
+ <year>2009</year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo><diffmk:wrapper diffmk:change="changed">
+ Version: 3.1.0.CR1
+ </diffmk:wrapper></releaseinfo>
+
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jsf_tools_ref_guide/...">PDF version</ulink>
+ </para>
+</abstract>
+
+ </bookinfo>
+
+ <toc></toc>
+
+
+<chapter id="introduction" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_ref_guide/en/modules/introduction.xml">
+ <?dbhtml filename="introduction.html"?>
+
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ <keyword>JSF Tools</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Introduction</title>
+
+ <para>JSF Tools are especially designed for supporting JSF and JSF-related technologies. JSF
+ Tools provide extensible and exemplary tools for building JSF-based applications as well as
+ adding JSF capabilities to existing web projects, importing JSF projects and choosing any
+ JSF implementation while developing JSF application.</para>
+
+ <para>In this guide we provide you with the information on JSF tooling which allows you to
+ develop JSF applications much faster and with far fewer errors so sparing your time.</para>
+
+ <section id="jsf_key_features">
+ <title>Key Features of JSF Tools</title>
+
+ <para>Here, we provide you with a key functionality which is integrated in JSF tooling.</para>
+
+ <table>
+ <title>Key Functionality for JSF Tools</title>
+ <tgroup cols="3">
+
+ <colspec align="left" colnum="1" colwidth="2*"></colspec>
+ <colspec colnum="2" colwidth="4*"></colspec>
+ <colspec colnum="3" colwidth="2*"></colspec>
+
+ <thead>
+ <row>
+ <entry>Feature</entry>
+ <entry>Benefit</entry>
+ <entry>Chapter</entry>
+ </row>
+ </thead>
+ <tbody>
+
+ <row>
+ <entry>JSF and Facelets support</entry>
+ <entry>Step-by-step wizards for creating new JSF and Facelets projects with a number of predefined templates, importing existing ones and adding JSF capabilities to non-jsf web projects.</entry>
+ <entry><link linkend="jsf_support">jsf support</link></entry>
+ </row>
+
+ <row>
+ <entry>Flexible and customizable project template management</entry>
+ <entry>Jump-start development with out-of-the-box templates or easily
+ customized templates for re-use.</entry>
+ <entry>
+ <link linkend="projects">projects</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>Support for JSF Configuration File</entry>
+ <entry>Working on file using three modes: diagram, tree and source.
+ Synchronization between the modes and full control over the code. Easy
+ moving around the diagram using the Diagram Navigator.</entry>
+ <entry>
+ <link linkend="jsf_config_file">graphical editor for jsf</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>Support for Managed Beans</entry>
+ <entry>Adding new managed beans, generating code for attributes, properties
+ and getter/setter methods.</entry>
+ <entry>
+ <link linkend="managed_beans">managed beans</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>Support for Custom Converters and Validators</entry>
+ <entry>Fast creating of custom converters and validators with tree view of
+ faces-config.xml file.</entry>
+ <entry>
+ <link linkend="creation_and_registration">converters and validators</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>Verification and Validation</entry>
+ <entry>All occuring errors will be immediately reported by verification
+ feature, no matter in what view you are working. Constant validation and
+ errors checking allows to catch many of the errors during development
+ process that significantly reduces development time.</entry>
+ <entry>
+ <link linkend="jsf_project_verification">verification and
+ validation</link>
+ </entry>
+
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+ <section>
+ <title>Other relevant resources on the topic</title>
+ <para>All JBoss Developer Studio/JBoss Tools release documentation you can find at<ulink url="http://docs.jboss.org/tools/">http://docs.jboss.org/tools</ulink> in the corresponding release directory.</para>
+ <para>The latest documentation builds are available at <ulink url="http://download.jboss.org/jbosstools/nightly-docs/">http://download.jboss.org/jbosstools/nightly-docs</ulink>.</para>
+ </section>
+</chapter>
+
+
+<chapter id="jsf_support" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_ref_guide/en/modules/jsf_support.xml">
+ <?dbhtml filename="jsf_support.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>JSF Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>JavaServer Faces Support</title>
+
+ <para>We don't lock you into any one <property moreinfo="none">JavaServer
+ Faces</property> implementation. You can always select the one which is
+ necessary for you while <link linkend="new_jsf_project">creating a new JSF
+ project</link>, <link linkend="add_jsf_capability">adding JSF capability</link> to
+ any existing Eclipse project or <link linkend="ImportingExsJSFProjWithAnyStr74447">importing existing JSF projects</link> as well.</para>
+ <para>At this point the special wizard will prompt you to specify a proper JSF environment.
+ It may be JSF 1.1.02 RI or JSF 1.2 which integrates a number of new features and
+ changes. The wizard also lets you select JSF implementation with a component
+ orientation such as JSF 1.2 with Facelets or MyFaces 1.1.4.</para>
+
+ <figure float="0">
+ <title>Choosing JSF Environment</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_11.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>After specifying a proper JSF environment all the required libraries for the selected
+ version will be added to your project.</para>
+
+ <section id="FaceletsSupport865">
+
+ <title>Facelets Support</title>
+ <para>In this section we will focus more on all concepts that are integrated for
+ working with Facelets.</para>
+
+ <para>The Facelets extends JavaServer Faces by providing a lightweight framework
+ that radically simplifies the design of presentation pages for JSF. Facelets can be used in a variety of ways that we
+ will consider further in this section.</para>
+
+ <section>
+ <title>Facelets templates</title>
+ <para>If you want to build an application using Facelets, just create a
+ project with Facelets based on version 1.2 of the JSF Reference
+ Implementation, i. e. select the <emphasis>
+ <property moreinfo="none">JSF 1.2 with Facelets</property>
+ </emphasis> in the JSF Environment section of the New JSF Project
+ wizard.</para>
+
+ <figure float="0">
+ <title>Choosing Facelets Environment</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Once you've selected the environment, it's possible
+ to specify the one of three available templates:</para>
+ <figure float="0">
+ <title>Choosing Facelets Template</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The following table lists possible templates with Facelets for any JSF
+ project and gives a proper description for each one.</para>
+ <table>
+ <title>Facelets Templates</title>
+ <tgroup cols="2">
+ <colspec align="left" colnum="1" colwidth="2*"></colspec>
+ <colspec colnum="2" colwidth="3*"></colspec>
+
+
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Template</para>
+ </entry>
+
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ </row>
+ </thead>
+
+ <tbody>
+
+ <row>
+ <entry>
+ <para>
+ <emphasis>
+ <property moreinfo="none">FaceletsBlankWithoutLibs</property>
+ </emphasis>
+ </para>
+ </entry>
+
+ <entry>
+ <para>Some servers already provide
+ jsf libs and you take risk
+ of getting conflicting
+ libraries while deploying
+ your project. To avoid such
+ conflicts, use a template
+ without libs if you have a
+ server with its own jsf
+ libraries</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>
+ <emphasis>
+ <property moreinfo="none">FaceletsKickStartWithRILibs</property>
+ </emphasis>
+ </para>
+ </entry>
+
+ <entry>
+ <para>A sample application with
+ Facelets that is ready to
+ run</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>
+ <emphasis>
+ <property moreinfo="none">FaceletsKickStartWithoutLibs</property>
+ </emphasis>
+ </para>
+ </entry>
+
+ <entry>
+ <para>A sample application without
+ libraries</para>
+ </entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+ <section>
+ <title>Facelets components</title>
+
+ <para>The <ulink url="../../jsf/html_single/index.html#palette">JBoss Tools
+ Palette</ulink> comes with the Facelets components ready to
+ use. A useful tip appears when you hover the mouse cursor over the
+ tag, the tip includes a detailed description of the tag component,
+ the syntax and available attributes.</para>
+
+ <!-- JBoss Developer Studio does not provide templates for MyFaces right out of the box, but you can easily do it
+ yourself with the "Save As Template" feature (available on the File submenu). Just create a small project
+ with MyFaces and Facelets and then save it as a template for future use.
+
+ How can I add Facelets support to an existing project?</para>
+ <para>A: Right-click on the folder of existing project and select <emphasis>JBoss Tools > Add Custom Capabilities.. > Facelets</emphasis>. </para>
+ -->
+ <figure float="0">
+ <title>Facelets Components</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_4.png" scale="65"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section>
+ <title>Code assist for Facelets</title>
+
+ <para>One more feature which comes with Facelets support is code assist
+ (Ctrl + Space). It is available for <property moreinfo="none">Facelets
+ tags</property> while editing <emphasis>
+ <property moreinfo="none">.xhtml</property>
+ </emphasis> files.</para>
+
+ <figure float="0">
+ <title>XHTML File Code Assist</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_5.png" scale="60"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>What's more, code assist is also available for <emphasis role="italic">
+ <property moreinfo="none">"jsfc"</property>
+ </emphasis> attribute in any HTML tag.</para>
+
+ <figure float="0">
+ <title>Code Assist for JSFC Attribute</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_6.png" scale="70"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>After selecting <emphasis role="italic">
+ <property moreinfo="none">"jsfc"</property>
+ </emphasis> you get the code assist for JSF components available on
+ a page.</para>
+
+ <figure float="0">
+ <title>Code Assist for JSF Components</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_7.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>When a component is chosen you will see all available attributes for
+ it.</para>
+
+ <figure float="0">
+ <title>Available Attributes for the Component</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_8.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section>
+ <title>Open On feature</title>
+ <para>Finally, Eclipse's <emphasis>
+ <property moreinfo="none">OpenOn</property>
+ </emphasis> feature for editing Facelets files is supported. Using this feature,
+ you can easily navigate between the <property moreinfo="none">Facelets
+ templates</property> and other parts of your projects. Just by
+ holding down the Control key while hovering the mouse cursor over a
+ reference to a template, the reference becomes a hyperlink to open
+ that template.</para>
+
+
+ <figure float="0">
+ <title>Template Hyperlink</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_9.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <!-- <para>Additionally, when hovering the mouse cursor over <emphasis role="italic"><property>"Facelets tag"</property></emphasis> attributes, JBoss Developer Studio provides a pop-up help tip:</para>
+ <figure>
+<title>Pop-up Help Tip for Facelets Tag Attributes</title>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/defaultImage.png"/>
+ </imageobject>
+</mediaobject>
+ </figure>
+
+ -->
+ <!-- <para>See <link linkend="faq_facelets">FAQ</link> concerning Facelets
+ support.</para>
+ -->
+ </section>
+
+ <!--section>
+ <title>Relevant Resources Links</title>
+ <para>Necessary information and support for Facelets find out <ulink
+ url="https://facelets.dev.java.net/"
+ >here</ulink>.</para>
+ </section-->
+ </section>
+
+
+
+
+
+
+
+
+
+
+ <!--section>
+ <title>Relevant Resources Links</title>
+ <para>If you don't familiar with <ulink
+ url="http://java.sun.com/javaee/javaserverfaces/">JSF
+ technology</ulink>, we suggest that you walk through the
+ information on the topic.</para>
+ </section-->
+</chapter>
+
+
+<chapter id="projects" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_ref_guide/en/modules/projects.xml">
+ <?dbhtml filename="projects.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>JSF Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Projects</title>
+ <para>To take an advantage of JSF firstly you should perform one of the next steps:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Create new JSF projects</para>
+ </listitem>
+ <listitem>
+ <para>Import (open) existing JSF projects</para>
+ </listitem>
+ <listitem>
+ <para>Add JSF capability to any existing Eclipse project</para>
+ </listitem>
+ <listitem>
+ <para>Import and add JSF capability to any existing project created outside
+ Eclipse.</para>
+ </listitem>
+ </itemizedlist>
+ <para>In this section we're going to stop on each of them in detail.</para>
+
+ <section id="new_jsf_project">
+
+ <title>Creating a New JSF Project</title>
+
+ <para>If you want your project to already contain all JSF libraries, tag libraries
+ and JSF configuration file, just organize a new brand JSF project. It is
+ possible to do this easily with the help of the special wizard. To get it, select<emphasis>
+ <property moreinfo="none"> File > New > Project > JBoos Tools
+ Web > JSF > JSF Project</property>
+ </emphasis> and click <emphasis>
+ <property moreinfo="none">Next</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>Choosing a JSF Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_10.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On the next form you'll be prompted to enter <property moreinfo="none">Project
+ Name</property> and select a location for the project or just leave
+ a default path.</para>
+ <para>Here, JSF Version also allows you to select which JSF implementation to
+ use.</para>
+ <figure float="0">
+ <title>Creating a New JSF Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_11.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>There is a number of predefined project templates that are flexible and easily
+ customizable. Thus you can pick a different template on which the projects
+ Importing Existing should be based on. Almost all templates come in two
+ variations: with jsf libraries and without ones.</para>
+ <figure float="0">
+ <title>Choosing JSF Templates</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_12.png "></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The table below provides description for each possible JSF template.</para>
+ <table>
+ <title>JSF Project Templates</title>
+ <tgroup cols="2">
+ <colspec align="left" colnum="1" colwidth="1*"></colspec>
+ <colspec colnum="2" colwidth="3*"></colspec>
+
+
+ <thead>
+ <row>
+ <entry align="center">
+ <para>Template</para>
+ </entry>
+
+ <entry align="center">
+ <para>Description</para>
+ </entry>
+ </row>
+ </thead>
+
+ <tbody>
+
+ <row>
+ <entry>
+ <para>
+ <emphasis>
+ <property moreinfo="none">JSFBlankWithLibs</property>
+ </emphasis>
+ </para>
+ </entry>
+
+ <entry>
+ <para>This template will create a standard Web
+ project structure with all JSF capabilities</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>
+ <emphasis>
+ <property moreinfo="none">JSFKickStartWithLibs</property>
+ </emphasis>
+ </para>
+ </entry>
+
+ <entry>
+ <para>This template will create a standard Web
+ project structure but will also include a sample
+ application that is ready to run</para>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>
+ <emphasis>
+ <property moreinfo="none">JSFKickStartWithoutLibs</property>
+ </emphasis>
+ </para>
+ </entry>
+
+ <entry>
+ <para>Some servers already provide jsf libs and
+ you take risk of getting conflicting libraries
+ while deploying your project. To avoid such
+ conflicts, use a template without libs if you have
+ a server with its own jsf libraries</para>
+ </entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
+
+
+ <!-- <para>You can of course create your own custom templates. More information
+ on templates creation could be found in <link
+ linkend="CreatingCustomJSPTemplates">Chapter 5</link>.</para>
+ -->
+
+ <para>On the next screen select what <emphasis>
+ <property moreinfo="none">Servlet version</property>
+ </emphasis> to use and whether to register this application with JBoss AS
+ (or other server) for running and testing your application.</para>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Context Path</property>
+ </emphasis> is the name under which the application will be deployed.</para>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Runtime</property>
+ </emphasis> value tells Eclipse where to find Web libraries in order to
+ build (compile) the project. It is not possible to finish project creation
+ without selecting Runtime. If you don't have any values, select <emphasis>
+ <property moreinfo="none">New...</property>
+ </emphasis> to add new Runtime.</para>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Target Server</property>
+ </emphasis> allows you specifying whether to deploy the application. The
+ Target Server corresponds to the Runtime value selected above. If you
+ don't want to deploy the application, uncheck this value.</para>
+ <figure float="0">
+ <title>Registering the Project on Server</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_14.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>When you are all done, you should have the project that has been appeared in
+ the Package Explorer view:</para>
+ <figure float="0">
+ <title>A New Project in the Package Explorer</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_15.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>At this point you can open <emphasis>
+ <property moreinfo="none">faces-config.xml</property>
+ </emphasis> and start working on your application. There are a lot of
+ features to develop JSF applications. We will describe the features
+ further.</para>
+ </section>
+
+ <section id="ImportingExsJSFProjWithAnyStr74447">
+
+ <title>Importing Existing JSF Projects with Any Structure</title>
+
+ <para>For detailed information on migration of JSF projects into a workspace see
+ <ulink url="../../Exadel-migration/html_single/index.html#jsf_struts">Migration
+ Guide</ulink>.</para>
+
+ </section>
+ <section id="add_jsf_capability">
+
+ <title>Adding JSF Capability to Any Existing Eclipse Project</title>
+
+ <para>It's also possible to add <property moreinfo="none">JSF capability</property> (JSF
+ libraries, tag libraries) to any existing Eclipse project in your workspace.
+ After that you'll be able to make use of such editors as JSF
+ configuration editor, JBoss Tools JSP editor and any others.</para>
+ <para>Right click the project and select <emphasis>
+ <property moreinfo="none">JBoss Tools > Add JSF Capabilities</property>. </emphasis>
+ This will start the process of adding all necessary libraries, files to make
+ this a Web JSF project.</para>
+ <figure float="0">
+ <title>Adding JSF Capabilities</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_16.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The wizard will first ask you to show the <emphasis>
+ <property moreinfo="none">web.xml</property>
+ </emphasis> file location and the project name.</para>
+ <figure float="0">
+ <title>Project Location</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_17.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>On the last form you can set the different folders for your project as well as
+ register this application with a servlet container.</para>
+
+ <para>Make sure to select <emphasis>
+ <property moreinfo="none">Add Libraries</property>
+ </emphasis> to add all required JSF related libraries to this
+ project.</para>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Context Path</property>
+ </emphasis> is the name under which the application will be deployed.</para>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Runtime</property>
+ </emphasis> value tells Eclipse where to find Web libraries in order to
+ build (compile) the project. It is not possible to finish project import
+ without selecting Runtime. If you don't have any values, select <emphasis>
+ <property moreinfo="none">New...</property>
+ </emphasis> to add new Runtime.</para>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Target Server</property>
+ </emphasis> allows you to specify whether to deploy the application. The
+ Target Server corresponds to the Runtime value selected above. If you
+ don't want to deploy the application, uncheck this value.</para>
+ <figure float="0">
+ <title>Project Folders</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_18.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Once your project is imported you can see that JSF related libraries have been
+ added to your project: <emphasis>
+ <property moreinfo="none">jsf-api.jar</property>
+ </emphasis> and <emphasis>
+ <property moreinfo="none">jsf-impl.jar</property>
+ </emphasis>.</para>
+ <note>
+ <title>Note:</title>
+ <para>Some application servers provide their own jsf implementation
+ libraries. Thus, to avoid conflicts you should not add jsf libraries
+ while adding jsf capabilities.</para>
+ </note>
+ <para>You are now ready to work with JSF by creating a new JSF configuration
+ file:</para>
+
+
+ <figure float="0">
+ <title>Creating a New JSF Configuration File</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_19.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Once the file has been created, it should be opened in a special <link linkend="jsf_config_file">Faces Config Editor</link>.</para>
+ </section>
+ <section id="AddingYourOwnProjectTemplates853">
+
+ <title>Adding Your Own Project Templates</title>
+ <para>Template is a set of files that is served as a basis to facilitate the
+ creation of a new project. Project templates provide content and structure
+ for a project.</para>
+ <para>There is a powerful templating capability for creating new and importing
+ existing Struts and JSF projects. This templating facility has a variety of
+ aspects to consider. But, let's start with the most straightforward
+ case and consider the process of creating a template from your existing JSF
+ project.</para>
+
+ <para>Let's say you have a project that you want to use as the basis for a
+ new <property moreinfo="none">template</property>. Follow these steps to make a template out
+ of it:</para>
+ <itemizedlist>
+ <listitem>
+ <para>In the Web Projects view, right-click the project and select <emphasis>
+ <property moreinfo="none">JBoss Tools JSF > Save As
+ Template</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Saving Your Project as Template</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_20.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>In the first dialog box, you can choose a name for the
+ template (defaults to the project name) and confirm what
+ run-time implementation of the project technology will be
+ used</para>
+ </listitem>
+
+ </itemizedlist>
+ <figure float="0">
+ <title>Define Template Properties</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_20_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+
+ <itemizedlist>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis> and you will be sent to a dialog box with your
+ project structure displayed with check boxes. Here you can
+ check only those parts and files in your project directory
+ that should be part of the template</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Define Template Properties</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_20_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>At this point, unless you want to designate some extra files
+ as having Velocity template coding inside them, you should
+ click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis>.</para>
+ </listitem>
+ </itemizedlist>
+ <para>That's it. Now, you can use this template with any new or imported
+ project that uses the same run-time implementation as the project you turned
+ into a template.</para>
+ <para>At this point, you have a fully configured project and now you can bring some
+ new logic to it starting from JSF configuration file.</para>
+ </section>
+ <section>
+ <title>Relevant Resources Links</title>
+
+ <para>You can find more in-depth explanation on how to work with special wizards, editors and views that can
+ be used in various scenarios while developing JSF applications in our <ulink url="../../jsf/html_single/index.html">Visual Web Tools guide</ulink>.</para>
+ </section>
+</chapter>
+
+
+<chapter id="webxml_editor" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_ref_guide/en/modules/webxml_editor.xml" xreflabel="webxml_editor">
+ <?dbhtml filename="webxml_editor.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>JSF Tools</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Web.xml Editor</title>
+
+ <para>The <emphasis>
+ <property moreinfo="none">web.xml</property></emphasis> file inside the <emphasis>
+ <property moreinfo="none">WEB-INF</property></emphasis> folder is a deployment descriptor file for a Web Application. It
+ describes the servlets and other components and deployment properties that make up your application.</para>
+
+ <para><property moreinfo="none">JBoss Tools</property> add the <emphasis>
+ <property moreinfo="none">web.xml</property></emphasis> file to created JSF project automatically and provides a special editor for its editing.
+ See the Visual Web Tools guide that gives a descriptive information on the <ulink url="../../jsf/html_single/index.html#GraphicalWebApplicationFileEditor">web.xml editor</ulink>.</para>
+</chapter>
+
+<chapter id="jsf_config_file" role="updated" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_ref_guide/en/modules/jsf_config_file.xml">
+ <?dbhtml filename="jsf_config_file.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>JSF Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>JSF Configuration File Editor</title>
+
+ <para>First, we should mention that JSF configuration file (<emphasis>
+ <property moreinfo="none">faces-config.xml</property>
+ </emphasis>) is intended for registering JSF application resources such as Converters,
+ Validators, Managed Beans and page-to-page navigation rules.</para>
+ <para>Now, let's look at how you can easily configure this file by means of a special
+ graphical editor for JSF configuration file. The editor has three main views:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Diagram</para>
+ </listitem>
+ <listitem>
+ <para>Tree</para>
+ </listitem>
+ <listitem>
+ <para>Source</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>They can be selected via the tabs at the bottom of the editor.</para>
+
+ <section id="Diagram9553">
+
+ <title>Diagram view</title>
+
+ <para>Here, we will show you how to work with JSF configuration file through the Diagram
+ view of the editor.</para>
+ <para>As you can see on the figure below, the Diagram view displays the navigation rules in
+ the faces-config.xml:</para>
+ <figure float="0">
+ <title>Diagram View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_21.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>If your diagram is large, make use of the Outline view. Within it you can switch to a <emphasis>
+ <property moreinfo="none">Diagram Navigator</property>
+ </emphasis> mode by selecting the middle icon at the top of the view window. It allows
+ you to easily move around the diagram. Just move the blue area in any direction, and the
+ diagram on the left will also move:</para>
+ <figure float="0">
+ <title>Outline View for Diagram</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_32.png" scale="50"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>To create a new page here, you should click the page icon (View Template) on the
+ toolbar from the left and then click anywhere on the diagram. A New Page Wizard will
+ appear.</para>
+
+ <para>To create a transition for connecting pages:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Select the transition icon from the toolbar (New Connection).</para>
+ </listitem>
+ <listitem>
+ <para>Click the source page.</para>
+ </listitem>
+ <listitem>
+ <para>Click the target page.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>A transition will appear between the two pages:</para>
+ <figure float="0">
+ <title>Transition between JSP Pages</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_22.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>It is also possible to create a new page with context menu by right-clicking anywhere
+ on the diagram and selecting <emphasis>
+ <property moreinfo="none">New View</property>. </emphasis></para>
+ <figure float="0">
+ <title>Creating a New View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_23.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>To edit an existing transition, first select the transition line. Then, place the
+ mouse cursor over the last black dot (on the target page). The mouse cursor will change
+ to a big +. At this point, drag the line to a new target page:</para>
+ <figure float="0">
+ <title>Editing Transition between Views</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_24.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="TreeView11123" role="updated">
+
+ <title>Tree View</title>
+
+ <para>You can find it more convenient to edit your JSF Configuration file in the Tree view of
+ the <property moreinfo="none">VPE</property>.</para>
+
+ <para>The view displays all JSF application artifacts referenced in the configuration file
+ in a tree format. By selecting any node on the left, you can see and edit its properties
+ which will appear in the right-hand area. Let's look at the structure of this
+ tree more closely.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Under the <emphasis>
+ <property moreinfo="none">Application</property>
+ </emphasis> node you can adjust JSF application specific settings such as
+ internationalization, possibility to set extensions, add property and variable
+ resolvers, etc.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>JSF Application Specific Settings</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_24a.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>The <emphasis>
+ <property moreinfo="none">Components</property>
+ </emphasis> node is for registering custom JSF components. Right-click and
+ choose <emphasis>
+ <property moreinfo="none">New > Component</property>
+ </emphasis> or just press the <emphasis>
+ <property moreinfo="none">Add</property>
+ </emphasis> button in the right-hand area to add a new component to the JSF
+ Configuration file.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Registering a New JSF Component</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_24b.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>In the <property moreinfo="none">Add Component wizard</property> you should set a component
+ type and point to a component class by using the <emphasis>
+ <property moreinfo="none">Browse</property>
+ </emphasis> button or create a new class for this component by using the <emphasis>
+ <property moreinfo="none">Component-Class</property>
+ </emphasis> link.</para>
+
+ <figure float="0">
+ <title>Adding a New JSF Component to the JSF Configuration File</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_24c.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>Use the <emphasis>
+ <property moreinfo="none">Render Kit</property>
+ </emphasis> node to create and register a set of related renderers for custom
+ JSF components.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Adding a New JSF Component to the JSF Configuration File</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_24d.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>Under the <emphasis>
+ <property moreinfo="none">Converters</property>
+ </emphasis> node you can create a converter class for your JSF application
+ either with id or for a proper class. How to do that see the <link linkend="CreateAndRegisterACustomConverter94230">Create and Register a
+ Custom Converter</link> section.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Creating a New Custom Converter</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_59.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>The <emphasis>
+ <property moreinfo="none">Managed Bean</property>
+ </emphasis> node is meant for creating and registering Bean classes in your JSF
+ application. Read more on the topic in the <link linkend="managed_beans">Managed
+ Beans</link> chapter.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Managed Beans</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_26.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>Use the <emphasis>
+ <property moreinfo="none">Navigation Rules</property>
+ </emphasis> node to configure a navigation between the pages in your
+ application: create a new navigation rule and adjust necessary properties for it
+ in the right-hand area.</para>
+ </listitem>
+ </itemizedlist>
+ <tip>
+ <title>Tip:</title>
+ <para>The same you can do in the <link linkend="Diagram9553">Diagram view</link> of the
+ JSF Configuration file editor.</para>
+ </tip>
+
+ <figure float="0">
+ <title>Configuring Navigation Rules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_26a.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>Under the <emphasis>
+ <property moreinfo="none">Referenced Beans</property>
+ </emphasis> node you can add a new Referenced Bean and configure various
+ properties for it. To learn more on this refer to the <link linkend="referenced_beans">Create and Register Referenced Beans</link>
+ section.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Referenced Beans</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_26b.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>The <emphasis>
+ <property moreinfo="none">Validators</property>
+ </emphasis> node is needed to create validator classes for organizing the
+ validation of your application data. You can read more on the topic in the <link linkend="CreateAndRegisterACustomValidator5632">Create and Register a Custom
+ Validator</link> section.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Validators</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_26c.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>The <emphasis>
+ <property moreinfo="none">Extensions</property>
+ </emphasis> node is for setting extensions for your <emphasis>
+ <property moreinfo="none">faces-config.xml</property>.</emphasis></para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Adding Extensions</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_26d.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>In the <property moreinfo="none">Tree view</property> you can also edit the properties of the selected
+ element with the help of the <property moreinfo="none">Properties view</property> as shown below:</para>
+
+ <figure float="0">
+ <title>Properties View </title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_33.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </section>
+ <section id="SourceView4643">
+
+ <title>Source View</title>
+
+ <para>Here, we'll discuss how you can configure your faces-config.xml with the help
+ of Source View.</para>
+ <para>The Source view for the editor displays a text content of the JSF configuration file.
+ It is always synchronized with other two views, so any changes made in one of the views
+ will immediately appear in the other:</para>
+ <figure float="0">
+ <title>Source View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_27.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+
+ <para>You can also work in the Source view with the help of the <emphasis>
+ <property moreinfo="none">Outline view</property>.</emphasis> The Outline view shows a tree
+ structure of the JSF configuration file. Simply select any element in the Outline view,
+ and it will jump to the same place in the Source editor, so you can navigate through the
+ source code with Outline view.</para>
+ <figure float="0">
+ <title>Outline View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_31.png" scale="50"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </section>
+
+ <section id="jsf_editor_features">
+ <title>Editor Features</title>
+ <para>Here we'll discuss a very important features that JSF configuration file
+ editor provides for work with JSF resources.</para>
+
+ <section id="jsf_openOn">
+ <title>Open On</title>
+ <para>The JSF configuration file editor comes with a very useful OpenOn navigating
+ feature. More fully you can read about it in our <ulink url="../../jsf/html_single/index.html#OpenOnSelection4Hyperlinknavigation">Visual Web Tools
+ Guide</ulink>.</para>
+ </section>
+
+ <section id="ContentAssist976">
+
+ <title>Code Assist</title>
+ <para>Code Assist provides pop-up tip to help you complete your code statements. It
+ allows you to write your code faster and with more accuracy.</para>
+ <para>Code assist is always available in the Source mode:</para>
+ <figure float="0">
+ <title>Code Assist in Source View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_28.png" scale="65"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </section>
+
+ <section id="ErrorReporting3324">
+
+ <title>Error Reporting</title>
+ <para>When you are developing your project, error checking is constantly provided. This
+ greatly reduces your development time as it allows you to catch many of the errors
+ during development.</para>
+ <para>Errors will be reported by <link linkend="jsf_project_verification">
+ verification</link> facility:</para>
+ <figure float="0">
+ <title>Error Reporting in Source View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_29.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Other errors are also reported.</para>
+ <figure float="0">
+ <title>Other Errors Reporting</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_30.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </section>
+ </section>
+
+</chapter>
+
+
+<chapter id="managed_beans" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_ref_guide/en/modules/managed_beans.xml">
+ <?dbhtml filename="managed_beans.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>JSF Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Managed Beans</title>
+
+ <para>There is lots of power to work with <property moreinfo="none">managed beans</property>.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Add and generate code for new managed beans</para>
+ <itemizedlist>
+ <listitem>
+ <para>Generate code for attributes and getter/setter methods</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem>
+ <para>Add existing managed beans to JSF configuration file</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Thus, in this section we will guides you through all this possibilities.</para>
+
+ <section id="CodeGenerationForManagedBeans421">
+
+ <title>Code Generation for Managed Beans</title>
+
+ <para>To start, create a new managed bean in JSF configuration file editor, in the Tree
+ view.</para>
+ <figure float="0">
+ <title>Creation of New Managed Bean</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_34.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <note>
+ <title>Note:</title>
+ <para>When you define a new managed bean, make sure that <emphasis>
+ <property moreinfo="none">Generate Source Code</property>
+ </emphasis> is checked as shown in the figure below.</para>
+ </note>
+ <figure float="0">
+ <title>New Managed Bean</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_35.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>After the <emphasis role="italic">
+ <property moreinfo="none">"Java"</property>
+ </emphasis> class has been generated you can open it for additional editing. There are
+ two ways to open the <emphasis role="italic">
+ <property moreinfo="none">"Java"</property>
+ </emphasis> class:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>click on <emphasis>
+ <property moreinfo="none">Managed-Bean-Class</property>
+ </emphasis> link in the editor</para>
+ </listitem>
+ </itemizedlist>
+ <para>or</para>
+ <itemizedlist>
+ <listitem>
+ <para>right click the <emphasis>
+ <property moreinfo="none">managed bean</property>
+ </emphasis> and select <emphasis>
+ <property moreinfo="none">Open Source</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Opening of Created Managed Bean</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_36.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The generated Java source should look as follows:</para>
+
+ <figure float="0">
+ <title>Java Source Code</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_37.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>You can also generate source code for properties, also includes <emphasis role="italic">
+ <property moreinfo="none">"getter"</property>
+ </emphasis> and <emphasis role="italic">
+ <property moreinfo="none">"setter"</property>
+ </emphasis> methods. Right click on the bean and select <emphasis>
+ <property moreinfo="none">New > Property</property>
+ </emphasis>. You will see <property moreinfo="none">Add Property</property> dialog.</para>
+ <figure float="0">
+ <title>Generation of Source Code for Properties</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_38.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>When the form is open make sure that all the check boxes are selected:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Add Java property</para>
+ </listitem>
+ <listitem>
+ <para>Generate Getter</para>
+ </listitem>
+ <listitem>
+ <para>Generate Setter</para>
+ </listitem>
+ </itemizedlist>
+ <para></para>
+ <figure float="0">
+ <title>"Add Property" Form</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_39.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Once the generation is complete, you can open the file and see the added property with
+ <emphasis role="italic">
+ <property moreinfo="none">"get"</property>
+ </emphasis> and <emphasis role="italic">
+ <property moreinfo="none">"set"</property>
+ </emphasis> methods:</para>
+ <figure float="0">
+ <title>Generated Java Source Code for Property</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_40.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Thus, we've discussed everything which comes to creating a new Managed Bean.
+ The next section will show you how to add an existing Bean into a JSF configuration
+ file.</para>
+ </section>
+ <section id="AddExistingJavaBeansToAJSFConfigurationFile74332">
+
+ <title>Add Existing Java Beans to a JSF Configuration File</title>
+ <para>If you already have a Java bean you can easily add it to a <property moreinfo="none">JSF configuration
+ file</property>.</para>
+ <para>You should start the same way you create a new managed bean. Use the <emphasis>
+ <property moreinfo="none">Browse...</property>
+ </emphasis> button to add your existing Java class.</para>
+ <figure float="0">
+ <title>New Managed Bean Form</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_42.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Once the class is set, its <emphasis>
+ <property moreinfo="none">Name</property>
+ </emphasis> will be set as well. But you can easily substitute it for the other one.
+ Notice that <emphasis>
+ <property moreinfo="none">Generate Source Code</property>
+ </emphasis> option is not available as the <emphasis role="italic">
+ <property moreinfo="none">"Java"</property>
+ </emphasis> class already exists. </para>
+ <para>After adding your class <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis> button will be activated. Pressing it you'll get <emphasis>
+ <property moreinfo="none">Managed Properties</property>
+ </emphasis> dialog where all corresponding properties are displayed. Check the necessary
+ ones to add them into your <property moreinfo="none">JSF Configuration File</property>.</para>
+
+ <figure float="0">
+ <title>Selection of Bean's Properties.</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_43.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>If you don't want to add any, just click <emphasis>
+ <property moreinfo="none">Finish</property>. </emphasis></para>
+ <para>Above-listed steps have demonstrated how you can specify an existing Bean in the JSF
+ configuration file, i.e. <emphasis>
+ <property moreinfo="none">faces-config.xml</property>. </emphasis> In the next chapter
+ you'll know how to organize and register another kind of artifacts.</para>
+ </section>
+</chapter>
+
+
+<chapter id="creation_and_registration" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_ref_guide/en/modules/creation_and_registration.xml">
+ <?dbhtml filename="creation_and_registration.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>JSF Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+ <title>Creation and Registration</title>
+
+ <section id="CreateAndRegisterACustomConverter94230">
+
+ <title>Create and Register a Custom Converter</title>
+
+ <para>It's also possible to create a
+ custom Converter in order to specify your own converting rules. Let's look at how you can do this.</para>
+
+ <para>To create and register a custom converter it's necessary to
+ go through the following steps:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>In the Project Explorer view open <emphasis>
+ <property moreinfo="none">faces-config.xml</property>
+ </emphasis> and select <emphasis>
+ <property moreinfo="none">Tree</property>
+ </emphasis> tab.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Converters</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_44.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">Converters</property>
+ </emphasis> and click on<emphasis>
+ <property moreinfo="none"> Add</property>
+ </emphasis> button.</para>
+ </listitem>
+ <listitem>
+ <para>On the form type the name of your converter in the <emphasis>
+ <property moreinfo="none">Converter-id</property>
+ </emphasis> field and name of the class for
+ converters. After clicking <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button your custom converter is
+ registered under the entered name.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Add Converter Form</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_45.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Now you can create <emphasis role="italic">
+ <property moreinfo="none">"converter"</property>
+ </emphasis> class. In the Converter section you
+ should see your <emphasis>
+ <property moreinfo="none">Converter-id</property>
+ </emphasis> and
+ <emphasis><property moreinfo="none">Converter-class</property>.</emphasis>
+ Click on <emphasis>
+ <property moreinfo="none">Converter-class</property>
+ </emphasis> to generate the source code.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Generation of Source Code for Converter Class</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_46.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>A usual wizard for creating a Java class will appear.
+ All needed fields here will be adjusted
+ automatically. Just leave everything without changes
+ and click <emphasis>
+ <property moreinfo="none">Finish</property>.
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>New Java Class Form</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_47.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>To open a converter class click again on <emphasis>
+ <property moreinfo="none">Converter-class</property>
+ </emphasis> link in the Converter section.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Converter Class</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_48.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Now you
+ are able to add a business logic of converter in the
+ Java editor.</para>
+ </section>
+
+ <section id="CreateAndRegisterACustomValidator5632">
+
+ <title>Create and Register a Custom Validator</title>
+
+ <para>It's also quite easy to develop your
+ own custom Validators. You should perform the actions similar to the
+ previous one. Go through the following steps:</para>
+ <itemizedlist>
+ <listitem>
+ <para>In the Project Explorer view open<emphasis>
+ <property moreinfo="none"> faces-config.xml</property>
+ </emphasis> and select <emphasis>
+ <property moreinfo="none">Tree </property>
+ </emphasis>tab.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Validator in Faces Config Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_49.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">Validators</property>
+ </emphasis> and click on <emphasis>
+ <property moreinfo="none">Add </property>
+ </emphasis>button.</para>
+ </listitem>
+ <listitem>
+ <para>Type the name of your validator in the <emphasis>
+ <property moreinfo="none">Validator-id</property>
+ </emphasis> field and name of the class for
+ validators. After clicking <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button your custom validator is
+ registered under the entered name.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Adding Validator</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_50.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Now you can create the "validator" class. </para>
+ <itemizedlist>
+ <listitem>
+ <para>In the Validator section you can see your <emphasis>
+ <property moreinfo="none">Validator-id</property>
+ </emphasis> and <emphasis>
+ <property moreinfo="none">Validator-class</property></emphasis>. To generate the source code click on <emphasis>
+ <property moreinfo="none">Validator-class</property>.
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Creating Validator Class</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_51.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Java class will be created automatically. Leave
+ everything without changes and click <emphasis>
+ <property moreinfo="none">Finish</property>.
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>New Java Class Form</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_52.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>To open validator class click again on <emphasis>
+ <property moreinfo="none">Validator-Class</property>
+ </emphasis> link in the Validator section. Now you
+ are able to write a business logic of validator in
+ the Java editor.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Converter Class Editing</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_53.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section id="referenced_beans">
+ <title>Create and Register Referenced Beans</title>
+
+ <para>Creation of Referenced Beans is similar to creation of Custom
+ Validator as well. To perform this, let's walk through the necessary steps.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>In the Project Explorer view open<emphasis>
+ <property moreinfo="none"> faces-config.xml</property>
+ </emphasis> and select <emphasis>
+ <property moreinfo="none">Tree </property>
+ </emphasis>tab.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Referenced Beans in Faces Config Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_54.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">Referenced Beans</property>
+ </emphasis> and click on <emphasis>
+ <property moreinfo="none">Add</property>
+ </emphasis> button.</para>
+ </listitem>
+ <listitem>
+ <para>Type in the name of your Referenced Bean and type in
+ or select <emphasis>
+ <property moreinfo="none">Referenced-Bean-Class</property>
+ </emphasis> by using <emphasis>
+ <property moreinfo="none">Browse</property>
+ </emphasis> button.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Add Referenced Bean</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_55.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>In the Referenced Bean section you should see your <emphasis>
+ <property moreinfo="none">Referenced-Bean-Name</property>
+ </emphasis> and
+ <emphasis><property moreinfo="none">Referenced-Bean-Class</property>.</emphasis>
+ Click on the link to open the Java creation
+ wizard.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Create Referenced Bean Class</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_56.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Java class will be created automatically. Leave
+ everything without changes and click <emphasis>
+ <property moreinfo="none">Finish</property>.
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>New Java Class Form</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_57.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>To open Referenced Bean class click again on <emphasis>
+ <property moreinfo="none">Referenced-Bean-Class</property>
+ </emphasis> in the Referenced Bean section. Now you
+ are able to write business logic of Referenced Bean
+ in the Java editor.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Referenced Bean Class Editing</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_support/jsf_support_58.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+</chapter>
+
+<chapter id="jsf_project_verification" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_ref_guide/en/modules/jsf_project_verification.xml">
+ <?dbhtml filename="struts_project_verification.html"?>
+
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>JSF Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>JSF Project Verification</title>
+
+ <para>In this chapter we'll discuss a possible verification that you can take advantage
+ of.</para>
+ <!-- JBoss Developer Studio checks for many different rules for a JSF project -->
+ <para>Many different rules are checked for a JSF project that can be configured by selecting <emphasis>
+ <property moreinfo="none">Window > Preferences</property>
+ </emphasis> from the menu bar, selecting <emphasis>
+ <property moreinfo="none">JBoss Tools > Web > Verification</property>
+ </emphasis> from the Preferences dialog box and then expanding the JSF Rules node.</para>
+ <figure float="0">
+ <title>JSF Rules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Suppose you are working in the Source viewer for a JSF configuration file as shown below:</para>
+ <figure float="0">
+ <title>Faces-config.xml File</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>While typing a class name, you might make a minor typo (like <emphasis role="italic">
+ <property moreinfo="none">"jsfHello.PersonBean9"</property>
+ </emphasis> instead of <emphasis role="italic">
+ <property moreinfo="none">"jsfHello.PersonBean"</property>
+ </emphasis>). After saving the file, verification checks to make sure everything is correct
+ and finds the error below:</para>
+ <figure float="0">
+ <title>Error in Source View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_3.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Notice that the Package Explorer View shows a marked folder and a marked file where the
+ error is.</para>
+ <para>You can place the cursor over the line with an error message and get a detailed error
+ message:</para>
+ <figure float="0">
+ <title>Error Message</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Verification also checks navigation rules:</para>
+ <figure float="0">
+ <title>Checking Navigation Rules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>If you provide a page name that does not exist, verification will let you know about that:</para>
+ <figure float="0">
+ <title>Page Name Verification</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_6.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>You can always call up verification explicitly by right-clicking any element in the tree
+ and selecting Verify from the context menu. This works from both the Tree and Diagram
+ viewers for the JSF configuration file editor. You can also invoke verification from the Web
+ Projects view. Below we are checking all of the elements in the configuration file.</para>
+ <figure float="0">
+ <title>Verify Command</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_7.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>In summary, this document highlights all the JSF-specific features of <property moreinfo="none">JBoss Tools</property>
+ meant for enhancing the development of rich Web applications based on JSF technology. The
+ reference introduces you to wizards for creating and importing JSF projects, JSF
+ Configuration File editor features, functionality for enabling JSF capabilities and etc.</para>
+
+ <para>If you have questions or good suggestions, please refer to <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss
+ Tools Forum</ulink>.</para>
+</chapter>
+
+</book>
15 years, 1 month
JBoss Tools SVN: r19326 - branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:10:24 -0500 (Wed, 16 Dec 2009)
New Revision: 19326
Modified:
branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en/master.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating the plugin version;
Modified: branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en/master.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en/master.xml 2009-12-16 15:09:36 UTC (rev 19325)
+++ branches/jbosstools-3.1.0.RC1/jsf/docs/jsf_tools_ref_guide/en/master.xml 2009-12-16 15:10:24 UTC (rev 19326)
@@ -51,7 +51,7 @@
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 3.1.0.M2
+ Version: 3.1.0.CR1
</releaseinfo>
<abstract>
15 years, 1 month
JBoss Tools SVN: r19325 - branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:09:36 -0500 (Wed, 16 Dec 2009)
New Revision: 19325
Modified:
branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en/master_output.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating master_output.xml;
Modified: branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en/master_output.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en/master_output.xml 2009-12-16 15:09:00 UTC (rev 19324)
+++ branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en/master_output.xml 2009-12-16 15:09:36 UTC (rev 19325)
@@ -23,576 +23,592 @@
<!ENTITY strutstutoriallink "../../struts_tools_tutorial/html_single/index.html">
-]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
-
- <bookinfo>
- <title>JMX Tools Reference Guide</title>
-
- <corpauthor diffmk:change="added">
- <inlinemediaobject diffmk:change="added">
- <imageobject diffmk:change="added" role="fo">
- <imagedata diffmk:change="added" fileref="images/jbosstools_logo.png" format="PNG"></imagedata>
- </imageobject>
- <imageobject diffmk:change="added" role="html">
- <imagedata diffmk:change="added"></imagedata>
- </imageobject>
- </inlinemediaobject>
- </corpauthor>
-
- <pubdate>December 2008</pubdate>
- <copyright>
- <year>2007</year>
- <year>2009</year>
- <holder><diffmk:wrapper diffmk:change="changed">JBoss by Red Hat</diffmk:wrapper></holder>
- </copyright>
- <releaseinfo><diffmk:wrapper diffmk:change="changed">
- Version: 1.1.0.M2
- </diffmk:wrapper></releaseinfo>
-<abstract>
- <title></title>
- <para>
- <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jmx_ref_guide/pdf/JM...">PDF version</ulink>
- </para>
-</abstract>
-
- </bookinfo>
-
-
- <toc></toc>
-
-<chapter id="intruduction" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jmx/docs/reference/en/modules/introduction.xml" xreflabel="introduction">
- <?dbhtml filename="introduction.html"?>
-
- <title>Introduction</title>
-
- <para><property moreinfo="none">JMX Tools</property> allows to setup multiple JMX connections and provides view
- for exploring the JMX tree and execute operations directly from Eclipse.</para>
-
- <para>This chapter covers the basics of working with <property moreinfo="none">JMX plugin</property>, which is
- used to manage Java applications through JMX and its RMI Connector.</para>
-
- <figure float="0">
- <title>JMX Tools</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/eclipse-jmx_0.2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <section>
- <title> Requirements </title>
- <para>Requirements to use <property moreinfo="none">JMX Tools</property> are the following:</para>
-
- <itemizedlist>
- <listitem>
- <para><property moreinfo="none">JMX Tools</property> is developed on Eclipse 3.4.x milestones</para>
- </listitem>
- <listitem>
- <para><property moreinfo="none">JMX Tools</property> requires that Eclipse is run on a JDK 1.5.0 or above
- (due to dependencies on JMX packages which were introduced in Java 1.5.0)</para>
- </listitem>
- </itemizedlist>
- </section>
-
- <section>
- <title>History</title>
- <para><property moreinfo="none">JBoss Tools</property>' JMX project is a fork of <ulink url="http://code.google.com/p/eclipse-jmx/">eclipse-jmx</ulink>, a project by Jeff Mesnil.
- It was forked with permission. </para>
- </section>
-
- <section><title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Key Features of JMX Tools</diffmk:wrapper></title>
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">For a start, we propose you to look through the table of main features of JMX Tools:</diffmk:wrapper></para>
- <table diffmk:change="added">
-
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Key Functionality for JMX Tools</diffmk:wrapper></title>
- <tgroup cols="3" diffmk:change="added">
-
- <colspec align="left" colnum="1" colwidth="2*" diffmk:change="added"></colspec>
- <colspec colnum="2" colwidth="4*" diffmk:change="added"></colspec>
- <colspec align="left" colnum="3" colwidth="2*" diffmk:change="added"></colspec>
-
- <thead diffmk:change="added">
- <row diffmk:change="added">
- <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Feature</diffmk:wrapper></entry>
- <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Benefit</diffmk:wrapper></entry>
- <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Chapter</diffmk:wrapper></entry>
- </row>
- </thead>
-
- <tbody diffmk:change="added">
-
- <row diffmk:change="added">
- <entry diffmk:change="added"><para diffmk:change="added"><diffmk:wrapper diffmk:change="added">MBean Explorer</diffmk:wrapper></para></entry>
- <entry diffmk:change="added"><para diffmk:change="added"><diffmk:wrapper diffmk:change="added">MBean Explorer is a useful view with a text filter that displays domains, mbeans, attributes, and operations inside a connection.</diffmk:wrapper></para></entry>
- <entry diffmk:change="added">
- <link diffmk:change="added" linkend="mbean_explorer"><diffmk:wrapper diffmk:change="added">MBean Explorer</diffmk:wrapper></link>
- </entry>
- </row>
-
- <row diffmk:change="added">
- <entry diffmk:change="added"><para diffmk:change="added"><diffmk:wrapper diffmk:change="added">MBean Editor</diffmk:wrapper></para></entry>
- <entry diffmk:change="added"><para diffmk:change="added"><diffmk:wrapper diffmk:change="added">MBean Editor is a multi-page editor to manage MBeans.</diffmk:wrapper></para></entry>
- <entry diffmk:change="added">
- <link diffmk:change="added" linkend="mbean_editor"><diffmk:wrapper diffmk:change="added">MBean Editor</diffmk:wrapper></link>
- </entry>
- </row>
-
-
- </tbody>
-
- </tgroup>
- </table>
-
-
-
-
- </section>
-
-
-
- <section diffmk:change="added">
- <title>Installation</title>
- <para>Here, we are going to explain how to install the <property moreinfo="none">JMX plugin</property> into
- Eclipse.</para>
-
- <para><property moreinfo="none">JMX Tools</property> is one module of the <property moreinfo="none">JBoss Tools</property>
- project. <property moreinfo="none">JMX Tools</property> has no dependency on any other part of <property moreinfo="none">JBoss
- Tools</property>, and can be downloaded standalone. Even though the <property moreinfo="none">JMX
- Tools</property> have no dependencies, other plugins, such as <property moreinfo="none">AS Tools</property>,
- do depend on the JMX Tooling and even extend it. </para>
-
- <para>You can find the <property moreinfo="none">JBoss Tools</property> plugins over at the <ulink url="http://labs.jboss.com/tools/download.html">download pages</ulink>. The only
- package you'll need to get is the JMX Tooling, however the <property moreinfo="none">AS
- Tools</property> would give you a more full experience when using JMX with JBoss Servers.
- You can find further download and installation instructions on the JBoss Wiki in the <ulink url="http://labs.jboss.com/wiki/InstallingJBossTools">InstallingJBossTools</ulink>
- section.</para>
- </section>
-
-
- <section>
- <title>Quick Start</title>
-
- <para>To start using the <property moreinfo="none">JMX Tools</property>, it's necessary to open
- <property moreinfo="none">MBean Explorer</property>. Go to <emphasis><property moreinfo="none">Window > Show View > Other</property></emphasis> and then select
- <property moreinfo="none">MBean Explorer</property> and click <emphasis><property moreinfo="none">OK</property>.</emphasis></para>
-
- <para>The <property moreinfo="none">MBean Explorer</property> lists all of the domains, mbeans, attributes, and operations inside a
- connection. When you double-click on a MBean in the <emphasis><property moreinfo="none">MBean Explorer</property>,</emphasis> it opens a multi-page
- editor to manage the MBean. The <property moreinfo="none">MBean Editor</property> is composed of these pages:</para>
-
- <itemizedlist>
- <listitem>
- <para><emphasis><property moreinfo="none">Attributes page</property>,</emphasis> to get/set the attributes of the MBean</para>
- </listitem>
- <listitem>
- <para><emphasis><property moreinfo="none">Operations page</property>,</emphasis> to invoke operations on the MBean</para>
- </listitem>
- <listitem>
- <para><emphasis><property moreinfo="none">Notifications page</property>,</emphasis> to receive notifications from the MBean</para>
- </listitem>
- <listitem>
- <para><emphasis><property moreinfo="none">Info page</property>,</emphasis> which displays general information about the MBean </para>
- </listitem>
- </itemizedlist>
-
- </section>
-
-</chapter>
-
-
-<chapter id="mbean_explorer" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jmx/docs/reference/en/modules/mbean_explorer.xml" xreflabel="mbean_explorer">
- <?dbhtml filename="mbean_explorer.html"?>
-
- <title>MBean Explorer</title>
- <para>The <property moreinfo="none">MBean Explorer</property> displays the MBean features (both attributes and operations) in its
- hierarchy. Double-clicking on a feature will open a <property moreinfo="none">MBean Editor</property>, display the page
- corresponding to the feature type and select the feature.</para>
-
- <figure float="0">
- <title>MBean Explorer Features</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/mbean-explorer-features.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Since it's possible to have many MBean Editors opened at the same time, the <property moreinfo="none">MBean Explorer</property>
- has the Link With Editor button
-
- <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/link-with-editor_0.2.0.png"></imagedata>
- </imageobject>
- </inlinemediaobject>
-
- to synchronize selections between the active <property moreinfo="none">MBean Editor</property> and
- the <property moreinfo="none">MBean Explorer</property> (and vice versa).</para>
-
- <para>The <property moreinfo="none">MBean Explorer</property> has also a filter text that can be used to filter among all the MBeans
- the few ones, which interest you.</para>
-
- <para>For example, if you are only interested by MBeans related to memory, typing memo will show
- any node (domain, mbean, attribute, or operation) that matches that text, as well as
- that node's parents and children. So if an MBean matches, all attributes and operations from
- that bean will show. If, however, an attribute or operation name (a leaf node) matches,
- only that node and its parents in the tree will show.</para>
-
- <figure float="0">
- <title>Query Filter</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/mbean-explorer-query.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
-
- <para>The <emphasis>
- <property moreinfo="none">Collapse All</property></emphasis> button
-
- <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/collaps_all.png"></imagedata>
- </imageobject>
- </inlinemediaobject>
-
- on the <property moreinfo="none">MBean Explorer</property> toolbar is used to collapse all the MBeans and
- display only the domains. It is also possible to double click on a node to expand/collapse it. </para>
-
-</chapter>
-
-
-<chapter id="mbean_editor" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jmx/docs/reference/en/modules/mbean_editor.xml" xreflabel="mbean_editor">
- <?dbhtml filename="mbean_editor.html"?>
-
- <title>MBean Editor</title>
-
- <figure float="0">
- <title>MBean Editor Pages</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/mbean-editor_0.2.0.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The <property moreinfo="none">MBean Editor</property> is composed of several pages:</para>
-
- <itemizedlist>
- <listitem>
- <para>the <emphasis>
- <property moreinfo="none">Attributes</property></emphasis> page</para>
- </listitem>
- <listitem>
- <para>the <emphasis>
- <property moreinfo="none">Operations</property></emphasis> page</para>
- </listitem>
- <listitem>
- <para>the <emphasis>
- <property moreinfo="none">Notifications</property></emphasis> page </para>
- </listitem>
- <listitem>
- <para>the <emphasis>
- <property moreinfo="none">Info</property></emphasis> page </para>
- </listitem>
- </itemizedlist>
-
- <para> The <emphasis>
- <property moreinfo="none">Attributes</property>
- </emphasis> and <emphasis>
- <property moreinfo="none">Operations</property>
- </emphasis> pages display a list for either the MBean attributes or operations as well as
- details for the selection.</para>
-
- <para> It is possible to toggle the layout between the list and the details either vertically
- (by default) or horizontally with the help of the special icons
-
- <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/mbean-editor-layout-buttons_0.2.0.png"></imagedata>
- </imageobject>
- </inlinemediaobject>
-
- in the right top corner of the editor.</para>
-
- <figure float="0">
- <title>MBean Editor Horizontal Layout</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/mbean-editor-horizontal-layout_0.2.0.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <section>
- <title>Notifications Page</title>
- <para>One more page in the <property moreinfo="none">MBean Editor</property> is the <emphasis>
- <property moreinfo="none">Notifications</property></emphasis> page, which gives the possibility to
- subscribe (resp. unsubscribe) to a MBean to receive its notifications by checking (resp.
- unchecking) the <emphasis>
- <property moreinfo="none">Subscribe</property></emphasis> button in the right top corner. </para>
- <para>The list of notifications is refreshed every time a new notification is
- received:</para>
-
- <figure float="0">
- <title>MBean Editor Notifications Page</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/notifications.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <note>
- <title>Note</title>
- <para>It is only possible to subscribe to MBean, which emits notifications (they must be
- NotificationBroadcaster).</para>
- </note>
-
- </section>
-
-</chapter>
-
-
-<chapter id="connection" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jmx/docs/reference/en/modules/connection.xml" xreflabel="connection">
- <?dbhtml filename="connection.html"?>
-
- <title>Connections</title>
-
- <para>The <property moreinfo="none">MBean Explorer</property> supports several different types of connections.
- The tooling itself comes only with a default connection type, however other
- adopters can provide additional connection types that may require additional
- or non-spec behavior. Connections can be in either the connected state or
- the disconnected state. Some connection types (such as the default connection type)
- allow you to control the current state. Other connection types may not. </para>
-
- <para>Similarly, some connection types may be able to be created, and others may not.
- The default connection type, for example, can be created and deleted by you
- at will. The AS Tools connection type, which represents a JBoss server, does not
- allow you this level of control. A JBoss JMX connection is created when a JBoss server is created
- in the server's view, and deleted when said server is deleted. The JMX connection for
- this server is in the connected state only when the server is started. </para>
-
-
- <section><title>The Default Connection</title>
-
- <para> There are two ways to connect to an application with remote management enabled:</para>
-
- <para> The first step is the same for both - to connect to a MBean Server, click on the
- <emphasis>
- <property moreinfo="none">New Connection</property></emphasis> icon
-
- <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/new_connection_icon.png"></imagedata>
- </imageobject>
- </inlinemediaobject>
-
- in the <property moreinfo="none">MBean Explorer</property> menu bar.</para>
-
- <para>Then to follow the simple one you just need to specify host, port (and optionally user
- name and password) and click <emphasis>
- <property moreinfo="none">OK</property>.</emphasis></para>
-
- <para>The default JMX URL is <emphasis>
- <property moreinfo="none">service:jmx:rmi:///jndi/rmi://localhost:3000/jmxrmi</property>.</emphasis></para>
-
- <para>In case you need to connect to an application which has not used the "standard" JMX URL
- (e.g. Eclipse Equinox), you need chose more advance way, where it's necessary to specify
- explicitly a JMX URL in the Advanced tab of the JMX Connection window.</para>
-
- <note>
- <title>Note</title>
- <para>Only JMX URL based on RMI are supported.</para>
- </note>
- </section>
-</chapter>
-
-
-<chapter id="how_to" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jmx/docs/reference/en/modules/how_to.xml" xreflabel="how_to">
- <?dbhtml filename="how_to.html"?>
- <title>How to ...</title>
- <para>This chapter will give you answers on most popular questions asked by <property moreinfo="none">JMX
- plugin</property> users.</para>
-
- <section>
- <title>How to Manage Tomcat</title>
-
- <para>It's possible to manage Tomcat using <property moreinfo="none">JMX Tools</property>.</para>
-
- <para>Currently, JMX Tooling is able to connect to Tomcat without authentication or with
- password-based authentication.</para>
- <para>Using SSL for authentication is not supported: you need to make sure that the System
- property <emphasis>
- <property moreinfo="none">com.sun.management.jmxremote.ssl</property>
- </emphasis> is set to false. </para>
- <para>More information to manage Tomcat can be found in Tomcat management
- documentation.</para>
- <para>Instructions to manage remotely Tomcat are available in Tomcat's monitoring
- documentation.</para>
-
- </section>
-
- <section>
- <title>How to manage Eclipse Equinox</title>
-
- <para>You can manage Equinox through the Equinox monitoring framework.</para>
- <para>Once you have installed the Equinox monitoring framework and restarted Eclipse:</para>
-
- <itemizedlist>
- <listitem>
- <para>Go to <emphasis>
- <property moreinfo="none">Window > Open Perspective > Other</property>
- </emphasis> and select the <property moreinfo="none">JMX perspective</property></para>
- </listitem>
-
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">JMX Server > Open Connection</property>
- </emphasis> and click on <emphasis>
- <property moreinfo="none">OK</property>
- </emphasis></para>
- </listitem>
-
- <listitem>
- <para>Switch to the <property moreinfo="none">MBean Explorer</property> by going to <emphasis>
- <property moreinfo="none">Window > Show View > Other</property>
- </emphasis> and selecting the MBean Explorer</para>
- </listitem>
-
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">New Connection</property></emphasis> icon
-
- <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/new_connection_icon.png"></imagedata>
- </imageobject>
- </inlinemediaobject>
-
- in the <property moreinfo="none">MBean Explorer</property> menu
- bar </para>
- </listitem>
-
- <listitem>
- <para>Select the <emphasis>
- <property moreinfo="none">Advanced tab</property></emphasis> and set the JMX URL to <emphasis>
- <property moreinfo="none">service:jmx:rmi:///jndi/rmi://:8118/jmxserver</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
-
- <para>You now have access to the MBeans exposed by Equinox.</para>
- </section>
-
-
- <section>
- <title>Managing JBoss Instances</title>
-
- <para>Managing JBoss instances is not supported with the <property moreinfo="none">JMX Tools</property>
- alone. You must also download and install the <property moreinfo="none">AS Tools</property> portion of
- the <property moreinfo="none">JBoss Tools</property> distribution. Even after installing the proper
- tooling, you cannot create a JBoss JMX connection yourself or through the Connection
- Wizard. The first step is to create a JBoss Server. The full instructions for this can
- be found in the AS Tools section, however, the short summary is: </para>
- <itemizedlist>
- <listitem>
- <para>Open the <property moreinfo="none">JBoss Servers View</property> or the <property moreinfo="none">Servers
- View</property></para>
- </listitem>
-
- <listitem>
- <para>Right-click in the view and select <emphasis>
- <property moreinfo="none">New > Server</property>
- </emphasis></para>
- </listitem>
-
- <listitem>
- <para>In the <emphasis>
- <property moreinfo="none">JBoss Community</property>
- </emphasis> section, select a server version</para>
- </listitem>
-
- <listitem>
- <para>If a runtime has not yet been created, you'll be prompted for the
- server's home directory, JDK, and configuration</para>
- </listitem>
-
- <listitem>
- <para>Finish the wizard and note that you have a new entry in both the
- <property moreinfo="none">JBoss Server View</property> and the <property moreinfo="none">MBean
- Explorer</property></para>
- </listitem>
-
- <listitem>
- <para>Start the server by right-clicking it and selecting <emphasis>
- <property moreinfo="none">Start</property></emphasis></para>
- </listitem>
- <listitem>
- <para>Note that once the server is started, the JMX connection can be
- expanded</para>
- </listitem>
- </itemizedlist>
-
- <para>Now you can explore MBeans exposed by a JBoss instance.</para>
- </section>
-
-</chapter>
-
-
-<chapter id="extensions" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jmx/docs/reference/en/modules/extensions.xml" xreflabel="extensions">
- <?dbhtml filename="extensions"?>
- <title>Extension API</title>
- <para>This chapter will outline how to contribute your own Server type with some default
- behavior.</para>
-
- <section>
- <title>Why??</title>
-
- <para>You might be asking yourself why you'd need to extend this framework if JMX is
- a standard. Perhaps you want a connection to be automatically created after some specific
- action, or perhaps you want your connection wizard to do more than simply set a host and
- port. JBoss, for example, requires setting some credentials on the client machine, but
- using JBoss classes to do it. This requires that the connection have access to JBoss
- jars.</para>
- </section>
-
- <section>
- <title>Core Extensions</title>
-
- <para>To create your own JMX Connection type, you must use the
- org.jboss.tools.jmx.core.MBeanServerConnectionProvider extension point. This point takes
- one child, a connectionProvider with a class that implements
- org.jboss.tools.jmx.core.IConnectionProvider.</para>
-
- <para>An IConnectionProvider is responsible for creation and deletion of IConnectionWrapper
- objects. It must also keep a list of listeners that it is expected to inform when a
- connection is added or removed from its list. </para>
-
- <para>Each IConnectionWrapper is expected to handle running arbitrary JMX runnables or getting
- a "Root" object representing all JMX nodes. There are some utility methods the
- IConnectionWrapper can make use of.</para>
- </section>
-
-
- <section>
- <title>UI Extensions</title>
- <para>There are two extension points currently approved for use in the UI</para>
- <itemizedlist>
- <listitem>
- <para>org.jboss.tools.jmx.ui.providerUI - provide an icon, id, displayable name, and
- wizardPage class for creation of new connections</para>
- </listitem>
- <listitem>
- <para>org.jboss.tools.jmx.ui.attribute.controls - allows you to map class types to some
- Control to present them in the MBean Editor</para>
- <para>We hope, this guide helped you to get started with the JBoss JMX Tools. Besides, for additional information you are welcome on <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss forum</ulink>.</para>
- </listitem>
- </itemizedlist>
- </section>
-
-</chapter>
-
-</book>
+]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
+
+ <bookinfo>
+ <title>JMX Tools Reference Guide</title>
+
+ <corpauthor>
+ <inlinemediaobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/jbosstools_logo.png" format="PNG"></imagedata>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+ </corpauthor>
+
+ <pubdate>December 2008</pubdate>
+ <copyright>
+ <year>2007</year>
+ <year>2009</year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo><diffmk:wrapper diffmk:change="changed">
+ Version: 1.1.0.CR1
+ </diffmk:wrapper></releaseinfo>
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jmx_ref_guide/pdf/JM...">PDF version</ulink>
+ </para>
+</abstract>
+
+ </bookinfo>
+
+
+ <toc></toc>
+
+<chapter id="intruduction" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jmx/docs/reference/en/modules/introduction.xml" xreflabel="introduction">
+ <?dbhtml filename="introduction.html"?>
+
+ <title>Introduction</title>
+
+ <para><property moreinfo="none">JMX Tools</property> allows to setup multiple JMX connections and provides view
+ for exploring the JMX tree and execute operations directly from Eclipse.</para>
+
+ <para>This chapter covers the basics of working with <property moreinfo="none">JMX plugin</property>, which is
+ used to manage Java applications through JMX and its RMI Connector.</para>
+
+ <figure float="0">
+ <title>JMX Tools</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/eclipse-jmx_0.2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <section>
+ <title> Requirements </title>
+ <para>Requirements to use <property moreinfo="none">JMX Tools</property> are the following:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><property moreinfo="none">JMX Tools</property> is developed on Eclipse 3.4.x milestones</para>
+ </listitem>
+ <listitem>
+ <para><property moreinfo="none">JMX Tools</property> requires that Eclipse is run on a JDK 1.5.0 or above
+ (due to dependencies on JMX packages which were introduced in Java 1.5.0)</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+
+ <section>
+ <title>History</title>
+ <para><property moreinfo="none">JBoss Tools</property>' JMX project is a fork of <ulink url="http://code.google.com/p/eclipse-jmx/">eclipse-jmx</ulink>, a project by Jeff Mesnil.
+ It was forked with permission. </para>
+ </section>
+
+ <section><title>Key Features of JMX Tools</title>
+ <para>For a start, we propose you to look through the table of main features of JMX Tools:</para>
+ <table>
+
+ <title>Key Functionality for JMX Tools</title>
+ <tgroup cols="3">
+
+ <colspec align="left" colnum="1" colwidth="2*"></colspec>
+ <colspec colnum="2" colwidth="4*"></colspec>
+ <colspec align="left" colnum="3" colwidth="2*"></colspec>
+
+ <thead>
+ <row>
+ <entry>Feature</entry>
+ <entry>Benefit</entry>
+ <entry>Chapter</entry>
+ </row>
+ </thead>
+
+ <tbody>
+
+ <row>
+ <entry><para>MBean Explorer</para></entry>
+ <entry><para>MBean Explorer is a useful view with a text filter that displays domains, mbeans, attributes, and operations inside a connection.</para></entry>
+ <entry>
+ <link linkend="mbean_explorer">MBean Explorer</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry><para>MBean Editor</para></entry>
+ <entry><para>MBean Editor is a multi-page editor to manage MBeans.</para></entry>
+ <entry>
+ <link linkend="mbean_editor">MBean Editor</link>
+ </entry>
+ </row>
+
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+
+
+
+ </section>
+
+
+
+ <section>
+ <title>Installation</title>
+ <para>Here, we are going to explain how to install the <property moreinfo="none">JMX plugin</property> into
+ Eclipse.</para>
+
+ <para><property moreinfo="none">JMX Tools</property> is one module of the <property moreinfo="none">JBoss Tools</property>
+ project. <property moreinfo="none">JMX Tools</property> has no dependency on any other part of <property moreinfo="none">JBoss
+ Tools</property>, and can be downloaded standalone. Even though the <property moreinfo="none">JMX
+ Tools</property> have no dependencies, other plugins, such as <property moreinfo="none">AS Tools</property>,
+ do depend on the JMX Tooling and even extend it. </para>
+
+ <para>You can find the <property moreinfo="none">JBoss Tools</property> plugins over at the <ulink url="http://labs.jboss.com/tools/download.html">download pages</ulink>. The only
+ package you'll need to get is the JMX Tooling, however the <property moreinfo="none">AS
+ Tools</property> would give you a more full experience when using JMX with JBoss Servers.
+ You can find further download and installation instructions on the JBoss Wiki in the <ulink url="http://labs.jboss.com/wiki/InstallingJBossTools">InstallingJBossTools</ulink>
+ section.</para>
+ </section>
+
+
+ <section>
+ <title>Quick Start</title>
+
+ <para>To start using the <property moreinfo="none">JMX Tools</property>, it's necessary to open
+ <property moreinfo="none">MBean Explorer</property>. Go to <emphasis><property moreinfo="none">Window > Show View > Other</property></emphasis> and then select
+ <property moreinfo="none">MBean Explorer</property> and click <emphasis><property moreinfo="none">OK</property>.</emphasis></para>
+
+ <para>The <property moreinfo="none">MBean Explorer</property> lists all of the domains, mbeans, attributes, and operations inside a
+ connection. When you double-click on a MBean in the <emphasis><property moreinfo="none">MBean Explorer</property>,</emphasis> it opens a multi-page
+ editor to manage the MBean. The <property moreinfo="none">MBean Editor</property> is composed of these pages:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis><property moreinfo="none">Attributes page</property>,</emphasis> to get/set the attributes of the MBean</para>
+ </listitem>
+ <listitem>
+ <para><emphasis><property moreinfo="none">Operations page</property>,</emphasis> to invoke operations on the MBean</para>
+ </listitem>
+ <listitem>
+ <para><emphasis><property moreinfo="none">Notifications page</property>,</emphasis> to receive notifications from the MBean</para>
+ </listitem>
+ <listitem>
+ <para><emphasis><property moreinfo="none">Info page</property>,</emphasis> which displays general information about the MBean </para>
+ </listitem>
+ </itemizedlist>
+
+ </section>
+ <section>
+ <title>Other relevant resources on the topic</title>
+
+ <para>You can find a set of benefits and other extra information on:</para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://www.jboss.org/community/wiki/JBossMX">JBoss Wiki</ulink>
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+
+
+ </section>
+
+</chapter>
+
+
+<chapter id="mbean_explorer" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jmx/docs/reference/en/modules/mbean_explorer.xml" xreflabel="mbean_explorer">
+ <?dbhtml filename="mbean_explorer.html"?>
+
+ <title>MBean Explorer</title>
+ <para>The <property moreinfo="none">MBean Explorer</property> displays the MBean features (both attributes and operations) in its
+ hierarchy. Double-clicking on a feature will open a <property moreinfo="none">MBean Editor</property>, display the page
+ corresponding to the feature type and select the feature.</para>
+
+ <figure float="0">
+ <title>MBean Explorer Features</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/mbean-explorer-features.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Since it's possible to have many MBean Editors opened at the same time, the <property moreinfo="none">MBean Explorer</property>
+ has the Link With Editor button
+
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/link-with-editor_0.2.0.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+
+ to synchronize selections between the active <property moreinfo="none">MBean Editor</property> and
+ the <property moreinfo="none">MBean Explorer</property> (and vice versa).</para>
+
+ <para>The <property moreinfo="none">MBean Explorer</property> has also a filter text that can be used to filter among all the MBeans
+ the few ones, which interest you.</para>
+
+ <para>For example, if you are only interested by MBeans related to memory, typing memo will show
+ any node (domain, mbean, attribute, or operation) that matches that text, as well as
+ that node's parents and children. So if an MBean matches, all attributes and operations from
+ that bean will show. If, however, an attribute or operation name (a leaf node) matches,
+ only that node and its parents in the tree will show.</para>
+
+ <figure float="0">
+ <title>Query Filter</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/mbean-explorer-query.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+
+ <para>The <emphasis>
+ <property moreinfo="none">Collapse All</property></emphasis> button
+
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/collaps_all.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+
+ on the <property moreinfo="none">MBean Explorer</property> toolbar is used to collapse all the MBeans and
+ display only the domains. It is also possible to double click on a node to expand/collapse it. </para>
+
+</chapter>
+
+
+<chapter id="mbean_editor" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jmx/docs/reference/en/modules/mbean_editor.xml" xreflabel="mbean_editor">
+ <?dbhtml filename="mbean_editor.html"?>
+
+ <title>MBean Editor</title>
+
+ <figure float="0">
+ <title>MBean Editor Pages</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/mbean-editor_0.2.0.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The <property moreinfo="none">MBean Editor</property> is composed of several pages:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>the <emphasis>
+ <property moreinfo="none">Attributes</property></emphasis> page</para>
+ </listitem>
+ <listitem>
+ <para>the <emphasis>
+ <property moreinfo="none">Operations</property></emphasis> page</para>
+ </listitem>
+ <listitem>
+ <para>the <emphasis>
+ <property moreinfo="none">Notifications</property></emphasis> page </para>
+ </listitem>
+ <listitem>
+ <para>the <emphasis>
+ <property moreinfo="none">Info</property></emphasis> page </para>
+ </listitem>
+ </itemizedlist>
+
+ <para> The <emphasis>
+ <property moreinfo="none">Attributes</property>
+ </emphasis> and <emphasis>
+ <property moreinfo="none">Operations</property>
+ </emphasis> pages display a list for either the MBean attributes or operations as well as
+ details for the selection.</para>
+
+ <para> It is possible to toggle the layout between the list and the details either vertically
+ (by default) or horizontally with the help of the special icons
+
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/mbean-editor-layout-buttons_0.2.0.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+
+ in the right top corner of the editor.</para>
+
+ <figure float="0">
+ <title>MBean Editor Horizontal Layout</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/mbean-editor-horizontal-layout_0.2.0.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <section>
+ <title>Notifications Page</title>
+ <para>One more page in the <property moreinfo="none">MBean Editor</property> is the <emphasis>
+ <property moreinfo="none">Notifications</property></emphasis> page, which gives the possibility to
+ subscribe (resp. unsubscribe) to a MBean to receive its notifications by checking (resp.
+ unchecking) the <emphasis>
+ <property moreinfo="none">Subscribe</property></emphasis> button in the right top corner. </para>
+ <para>The list of notifications is refreshed every time a new notification is
+ received:</para>
+
+ <figure float="0">
+ <title>MBean Editor Notifications Page</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/notifications.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <note>
+ <title>Note</title>
+ <para>It is only possible to subscribe to MBean, which emits notifications (they must be
+ NotificationBroadcaster).</para>
+ </note>
+
+ </section>
+
+</chapter>
+
+
+<chapter id="connection" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jmx/docs/reference/en/modules/connection.xml" xreflabel="connection">
+ <?dbhtml filename="connection.html"?>
+
+ <title>Connections</title>
+
+ <para>The <property moreinfo="none">MBean Explorer</property> supports several different types of connections.
+ The tooling itself comes only with a default connection type, however other
+ adopters can provide additional connection types that may require additional
+ or non-spec behavior. Connections can be in either the connected state or
+ the disconnected state. Some connection types (such as the default connection type)
+ allow you to control the current state. Other connection types may not. </para>
+
+ <para>Similarly, some connection types may be able to be created, and others may not.
+ The default connection type, for example, can be created and deleted by you
+ at will. The AS Tools connection type, which represents a JBoss server, does not
+ allow you this level of control. A JBoss JMX connection is created when a JBoss server is created
+ in the server's view, and deleted when said server is deleted. The JMX connection for
+ this server is in the connected state only when the server is started. </para>
+
+
+ <section><title>The Default Connection</title>
+
+ <para> There are two ways to connect to an application with remote management enabled:</para>
+
+ <para> The first step is the same for both - to connect to a MBean Server, click on the
+ <emphasis>
+ <property moreinfo="none">New Connection</property></emphasis> icon
+
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/new_connection_icon.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+
+ in the <property moreinfo="none">MBean Explorer</property> menu bar.</para>
+
+ <para>Then to follow the simple one you just need to specify host, port (and optionally user
+ name and password) and click <emphasis>
+ <property moreinfo="none">OK</property>.</emphasis></para>
+
+ <para>The default JMX URL is <emphasis>
+ <property moreinfo="none">service:jmx:rmi:///jndi/rmi://localhost:3000/jmxrmi</property>.</emphasis></para>
+
+ <para>In case you need to connect to an application which has not used the "standard" JMX URL
+ (e.g. Eclipse Equinox), you need chose more advance way, where it's necessary to specify
+ explicitly a JMX URL in the Advanced tab of the JMX Connection window.</para>
+
+ <note>
+ <title>Note</title>
+ <para>Only JMX URL based on RMI are supported.</para>
+ </note>
+ </section>
+</chapter>
+
+
+<chapter id="how_to" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jmx/docs/reference/en/modules/how_to.xml" xreflabel="how_to">
+ <?dbhtml filename="how_to.html"?>
+ <title>How to ...</title>
+ <para>This chapter will give you answers on most popular questions asked by <property moreinfo="none">JMX
+ plugin</property> users.</para>
+
+ <section>
+ <title>How to Manage Tomcat</title>
+
+ <para>It's possible to manage Tomcat using <property moreinfo="none">JMX Tools</property>.</para>
+
+ <para>Currently, JMX Tooling is able to connect to Tomcat without authentication or with
+ password-based authentication.</para>
+ <para>Using SSL for authentication is not supported: you need to make sure that the System
+ property <emphasis>
+ <property moreinfo="none">com.sun.management.jmxremote.ssl</property>
+ </emphasis> is set to false. </para>
+ <para>More information to manage Tomcat can be found in Tomcat management
+ documentation.</para>
+ <para>Instructions to manage remotely Tomcat are available in Tomcat's monitoring
+ documentation.</para>
+
+ </section>
+
+ <section>
+ <title>How to manage Eclipse Equinox</title>
+
+ <para>You can manage Equinox through the Equinox monitoring framework.</para>
+ <para>Once you have installed the Equinox monitoring framework and restarted Eclipse:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Go to <emphasis>
+ <property moreinfo="none">Window > Open Perspective > Other</property>
+ </emphasis> and select the <property moreinfo="none">JMX perspective</property></para>
+ </listitem>
+
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">JMX Server > Open Connection</property>
+ </emphasis> and click on <emphasis>
+ <property moreinfo="none">OK</property>
+ </emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para>Switch to the <property moreinfo="none">MBean Explorer</property> by going to <emphasis>
+ <property moreinfo="none">Window > Show View > Other</property>
+ </emphasis> and selecting the MBean Explorer</para>
+ </listitem>
+
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">New Connection</property></emphasis> icon
+
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/new_connection_icon.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+
+ in the <property moreinfo="none">MBean Explorer</property> menu
+ bar </para>
+ </listitem>
+
+ <listitem>
+ <para>Select the <emphasis>
+ <property moreinfo="none">Advanced tab</property></emphasis> and set the JMX URL to <emphasis>
+ <property moreinfo="none">service:jmx:rmi:///jndi/rmi://:8118/jmxserver</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+
+ <para>You now have access to the MBeans exposed by Equinox.</para>
+ </section>
+
+
+ <section>
+ <title>Managing JBoss Instances</title>
+
+ <para>Managing JBoss instances is not supported with the <property moreinfo="none">JMX Tools</property>
+ alone. You must also download and install the <property moreinfo="none">AS Tools</property> portion of
+ the <property moreinfo="none">JBoss Tools</property> distribution. Even after installing the proper
+ tooling, you cannot create a JBoss JMX connection yourself or through the Connection
+ Wizard. The first step is to create a JBoss Server. The full instructions for this can
+ be found in the AS Tools section, however, the short summary is: </para>
+ <itemizedlist>
+ <listitem>
+ <para>Open the <property moreinfo="none">JBoss Servers View</property> or the <property moreinfo="none">Servers
+ View</property></para>
+ </listitem>
+
+ <listitem>
+ <para>Right-click in the view and select <emphasis>
+ <property moreinfo="none">New > Server</property>
+ </emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para>In the <emphasis>
+ <property moreinfo="none">JBoss Community</property>
+ </emphasis> section, select a server version</para>
+ </listitem>
+
+ <listitem>
+ <para>If a runtime has not yet been created, you'll be prompted for the
+ server's home directory, JDK, and configuration</para>
+ </listitem>
+
+ <listitem>
+ <para>Finish the wizard and note that you have a new entry in both the
+ <property moreinfo="none">JBoss Server View</property> and the <property moreinfo="none">MBean
+ Explorer</property></para>
+ </listitem>
+
+ <listitem>
+ <para>Start the server by right-clicking it and selecting <emphasis>
+ <property moreinfo="none">Start</property></emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Note that once the server is started, the JMX connection can be
+ expanded</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Now you can explore MBeans exposed by a JBoss instance.</para>
+ </section>
+
+</chapter>
+
+
+<chapter id="extensions" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jmx/docs/reference/en/modules/extensions.xml" xreflabel="extensions">
+ <?dbhtml filename="extensions"?>
+ <title>Extension API</title>
+ <para>This chapter will outline how to contribute your own Server type with some default
+ behavior.</para>
+
+ <section>
+ <title>Why??</title>
+
+ <para>You might be asking yourself why you'd need to extend this framework if JMX is
+ a standard. Perhaps you want a connection to be automatically created after some specific
+ action, or perhaps you want your connection wizard to do more than simply set a host and
+ port. JBoss, for example, requires setting some credentials on the client machine, but
+ using JBoss classes to do it. This requires that the connection have access to JBoss
+ jars.</para>
+ </section>
+
+ <section>
+ <title>Core Extensions</title>
+
+ <para>To create your own JMX Connection type, you must use the
+ org.jboss.tools.jmx.core.MBeanServerConnectionProvider extension point. This point takes
+ one child, a connectionProvider with a class that implements
+ org.jboss.tools.jmx.core.IConnectionProvider.</para>
+
+ <para>An IConnectionProvider is responsible for creation and deletion of IConnectionWrapper
+ objects. It must also keep a list of listeners that it is expected to inform when a
+ connection is added or removed from its list. </para>
+
+ <para>Each IConnectionWrapper is expected to handle running arbitrary JMX runnables or getting
+ a "Root" object representing all JMX nodes. There are some utility methods the
+ IConnectionWrapper can make use of.</para>
+ </section>
+
+
+ <section>
+ <title>UI Extensions</title>
+ <para>There are two extension points currently approved for use in the UI</para>
+ <itemizedlist>
+ <listitem>
+ <para>org.jboss.tools.jmx.ui.providerUI - provide an icon, id, displayable name, and
+ wizardPage class for creation of new connections</para>
+ </listitem>
+ <listitem>
+ <para>org.jboss.tools.jmx.ui.attribute.controls - allows you to map class types to some
+ Control to present them in the MBean Editor</para>
+ <para>We hope, this guide helped you to get started with the JBoss JMX Tools. Besides, for additional information you are welcome on <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss forum</ulink>.</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+
+</chapter>
+
+</book>
15 years, 1 month
JBoss Tools SVN: r19324 - branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:09:00 -0500 (Wed, 16 Dec 2009)
New Revision: 19324
Modified:
branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en/master.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating the plugin version;
Modified: branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en/master.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en/master.xml 2009-12-16 15:08:17 UTC (rev 19323)
+++ branches/jbosstools-3.1.0.RC1/jmx/docs/reference/en/master.xml 2009-12-16 15:09:00 UTC (rev 19324)
@@ -48,7 +48,7 @@
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 1.1.0.M2
+ Version: 1.1.0.CR1
</releaseinfo>
<abstract>
<title/>
15 years, 1 month
JBoss Tools SVN: r19323 - branches/jbosstools-3.1.0.RC1/jbpm/docs/reference/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-12-16 10:08:17 -0500 (Wed, 16 Dec 2009)
New Revision: 19323
Modified:
branches/jbosstools-3.1.0.RC1/jbpm/docs/reference/en/master_output.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-989 - updating master_output.xml;
Modified: branches/jbosstools-3.1.0.RC1/jbpm/docs/reference/en/master_output.xml
===================================================================
--- branches/jbosstools-3.1.0.RC1/jbpm/docs/reference/en/master_output.xml 2009-12-16 15:07:48 UTC (rev 19322)
+++ branches/jbosstools-3.1.0.RC1/jbpm/docs/reference/en/master_output.xml 2009-12-16 15:08:17 UTC (rev 19323)
@@ -23,1291 +23,1292 @@
<!ENTITY strutsreflink "../../struts_tools_ref_guide/html_single/index.html">
<!ENTITY strutstutoriallink "../../struts_tools_tutorial/html_single/index.html">
- ]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
- <bookinfo>
- <title>jBPM Tools Reference Guide</title>
- <corpauthor diffmk:change="added">
- <inlinemediaobject diffmk:change="added">
- <imageobject diffmk:change="added" role="fo">
- <imagedata diffmk:change="added" fileref="images/jbosstools_logo.png" format="PNG"></imagedata>
- </imageobject>
- <imageobject diffmk:change="added" role="html">
- <imagedata diffmk:change="added"></imagedata>
- </imageobject>
- </inlinemediaobject>
- </corpauthor>
-
- <author>
- <firstname>Anatoly</firstname>
- <surname>Fedosik</surname>
- </author>
- <author>
- <firstname>Koen</firstname>
- <surname>Aers</surname>
- <email>koen.aers(a)jboss.com</email>
- </author>
- <author>
- <firstname>Olga</firstname>
- <surname>Chikvina</surname>
- </author>
- <author>
- <firstname>Svetlana</firstname>
- <surname>Mukhina</surname>
- <email>smukhina(a)exadel.com</email>
- </author>
- <author>
- <firstname>Tom</firstname>
- <surname>Baeyens</surname>
- <email>tom.baeyens(a)jboss.com</email>
- </author>
-
-
- <pubdate>April 2008</pubdate>
- <copyright>
- <year>2007</year>
- <year>2009</year>
- <holder><diffmk:wrapper diffmk:change="changed">JBoss by Red Hat</diffmk:wrapper></holder>
- </copyright>
- <releaseinfo><diffmk:wrapper diffmk:change="changed"> Version: 4.0.0.M2</diffmk:wrapper></releaseinfo>
-
-<abstract>
- <title></title>
- <para>
- <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jbpm/pdf/JBPM_Refere...">PDF version</ulink>
- </para>
-</abstract>
-
- </bookinfo>
-
- <toc></toc>
-
-<chapter id="Introduction" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jbpm/docs/reference/en/modules/Introduction.xml" xreflabel="Introduction">
- <?dbhtml filename="TargetAudience.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>jBPM</keyword>
- <keyword>Target</keyword>
- <keyword>developers</keyword>
- <keyword>Audience</keyword>
- </keywordset>
- </chapterinfo>
- <title>Introduction</title>
- <para>All developers and process analysts who are beginning to use JBoss jBPM should read this
- Getting Started guide. It will give them a jumpstart showing how to create a process definition.</para>
- <section id="Preface">
- <?dbhtml filename="Preface.html"?>
- <title>Preface</title>
- <para>This document introduces the use of the JBoss jBPM Graphical Process Designer (GPD) to
- create workflow processes. It will help first time users with the following tasks :</para>
- <itemizedlist>
- <listitem>
- <para>Install the JBoss jBPM GPD Eclipse plugin available from the JBoss jBPM download
- area</para>
- </listitem>
- <listitem>
- <para>Set up a Java project in Eclipse and prepare it to do test driven process
- development</para>
- </listitem>
- <listitem>
- <para>Using the creation wizard to create an empty process definition</para>
- </listitem>
- <listitem>
- <para>Use the designer palette to draw the first processdefinition</para>
- </listitem>
- <listitem>
- <para>Show how the xml processdefinition can be inspected as an xml file</para>
- </listitem>
- <listitem>
- <para>Set up a Java project in Eclipse and prepare it to do test driven process
- development</para>
- </listitem>
- <listitem>
- <para>Write an example process test case</para>
- </listitem>
- </itemizedlist>
- <para>If you have questions, please feel free to contact <ulink url="mailto:koen.aers@jboss.com">Koen Aers</ulink> or <ulink url="mailto:tom.baeyens@jboss.com">Tom Baeyens</ulink> for more
- information.</para>
- </section>
-
- <section id="feature_list">
-
- <title>Feature list</title>
-
- <para> JBoss jBPM is a workflow that enables creating and automatization business processes. Look
- at the list of features below to understand its main functionality.</para>
- <table>
- <title>Key Functionality for JBoss jBPM</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Feature</entry>
- <entry>Benefit</entry>
- </row>
- </thead>
- <tbody>
-
- <row>
- <entry>
- <link linkend="minimal_process_definition">jBDL support</link>
- </entry>
- <entry>Enables managing workflow processes as well as human tasks and interactions between
- them. jBDL combines the best both Java and declarative process techniques.</entry>
- </row>
-
- <row>
- <entry>
- <link linkend="GuidedTourJBossjBPMGPD">Support of Graphical Process Designer (GPD)</link>
- </entry>
- <entry>Is used for simplifying declarative process development and visualizations of all
- actions.</entry>
- </row>
-
- <row>
- <entry>
- <link linkend="CreatingjBPMProject">Project Creation wizard</link>
- </entry>
- <entry>Allows to create a new jBPM template project that already includes all advanced
- artifacts and core jBPM libraries.</entry>
- </row>
-
- <row>
- <entry>
- <link linkend="minimal_process_definition">Rich palette of pre-build process nodes</link>
- </entry>
- <entry>Provides process-building functionality and gives opportunity even non-programmers to
- develop processes.</entry>
- </row>
-
- <row>
- <entry>
- <link diffmk:change="added" linkend="the_views"><diffmk:wrapper diffmk:change="added">A large range of special views, including:</diffmk:wrapper></link>
- </entry>
- <entry diffmk:change="added"></entry>
- </row>
-
- <row diffmk:change="added">
- <entry diffmk:change="added">
- <link linkend="source_mode">Support of XML code view</link>
- </entry>
- <entry>Shows the corresponding XML that's generated automatically in the Source view
- of the process definition editor when developing the process.</entry>
- </row>
-
- <row>
- <entry>
- <link linkend="the_properties_view">Properties view</link>
- </entry>
- <entry>Facilitates configuring and editing of all nodes properties.</entry>
- </row>
-
- <row>
- <entry>
- <link diffmk:change="added" linkend="jbpm_gpd_editor"><diffmk:wrapper diffmk:change="added">The jBPM Graphical Process Designer editor</diffmk:wrapper></link>
- </entry>
- <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">The plugin is used for designing the workflow.</diffmk:wrapper></entry>
- </row>
-
-
- <row diffmk:change="added">
- <entry diffmk:change="added">Interaction with all of the J2EE based integration technologies including Web Services,
- Java Messaging, J2EE Connectors, JBDC, EJBs.</entry>
- <entry>Enables implementation, provides better functionality and flexibility.</entry>
- </row>
-
- <row>
- <entry>Integration with jBoss Seam</entry>
- <entry>Allows to write applications with complex workflows and provides easier interactions
- between them.</entry>
- </row>
-
- </tbody>
- </tgroup>
- </table>
- </section>
-
- <section>
- <title>Other relevant resources on the topic</title>
- <para>All JBoss Developer Studio/JBoss Tools release documentation you can find at<ulink url="http://docs.jboss.org/tools/">http://docs.jboss.org/tools</ulink> in the corresponding release directory.</para>
- <para>The latest documentation builds are available at <ulink url="http://download.jboss.org/jbosstools/nightly-docs/">http://download.jboss.org/jbosstools/nightly-docs</ulink>.</para>
- </section>
-
-</chapter>
-
-
-<chapter id="jboss_jbpm_runtime_installation" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jbpm/docs/reference/en/modules/jboss_jbpm_runtime_installation.xml" xreflabel="jboss_jbpm_runtime_installation">
- <?dbhtml filename="jboss_jbpm_runtime_installation.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>jBPM</keyword>
- <keyword>designer</keyword>
- <keyword>process</keyword>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>jBPM runtime</keyword>
- </keywordset>
- </chapterinfo>
- <title>JBoss jBPM Runtime Installation</title>
- <para>The main purpose of this chapter is to let you know how to launch the <property moreinfo="none">JBoss
- jBPM</property> (business process management).</para>
- <para>The jBPM plugin (jBPM Designer) is already included in the <property moreinfo="none">JBoss Tools</property>.
- To make it work, you should only download the jBPM runtime (<ulink url="http://sourceforge.net/project/showfiles.php?group_id=70542&package_i...">jbpm-jpdl-3.2.3</ulink> currently) and specify the directory where you extracted the runtime
- either when you create a jBPM project or by using the jBPM preference pages.</para>
-
- <note>
- <title>Note:</title>
- <para>Try to avoid using spaces in the names of installation folders. It can provoke problems in
- some situations with Sun-based VMs.</para>
- </note>
-
- <para>Navigate to <emphasis>
- <property moreinfo="none">Window > Preferences > JBoss jBPM > Runtime Locations</property>.
- </emphasis> Here you can add, edit and remove JBoss jBPM installation locations. Click <emphasis>
- <property moreinfo="none">Add</property>
- </emphasis> button. In the dialog that appeared enter a name for a newly added jBPM runtime and
- point to the correct location of this package on your harddrive. Click <emphasis>
- <property moreinfo="none">OK</property>
- </emphasis> then click <emphasis>
- <property moreinfo="none">OK</property>
- </emphasis> again.</para>
-
- <figure float="0">
- <title>Adding jBPM Location</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/runtime_installation/runtime_installation_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Now, when you have a runtime installed, we are going to demonstrate some powerful features of
- the jBPM.</para>
-</chapter>
-
-
-<chapter id="GuidedTourJBossjBPMGPD" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jbpm/docs/reference/en/modules/guided_tour_jboss_jbpmgpd.xml" xreflabel="GuidedTourJBossjBPMGPD">
- <?dbhtml filename="GuidedTourJBossjBPMGPD.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>jBPM</keyword>
- <keyword>JBoss</keyword>
- <keyword>Process</keyword>
- <keyword>Definition</keyword>
- </keywordset>
- </chapterinfo>
- <title>A Guided Tour of JBoss jBPM GPD</title>
- <para>In this chapter we suggest a step-by-step walk-through of creating and configuring your
- own simple process. Let's try to organize a new jBPM project.</para>
- <para>A wizard for creating a jBPM project is included in the GPD plugin. We have opted to
- create a project based on a template already containing a number of advanced artifacts that
- we will ignore for this section. In the future we will elaborate this wizard and offer the
- possibility to create an empty jBPM project as well as projects based on templates taken
- from the jBPM tutorial.</para>
- <section id="CreatingjBPMProject">
- <?dbhtml filename="CreatingjBPMProject.html"?>
- <title>Creating a jBPM Project</title>
- <para>This section will show you how to use the Creation wizard for creating a new jBPM
- project with already included source folders.</para>
- <para>At first you should select <emphasis>
- <property moreinfo="none">File >New Project...</property>
- </emphasis> and then <emphasis>
- <property moreinfo="none">JBoss jBPM > Process Project</property>
- </emphasis> in the New Project dialog:</para>
- <figure float="0">
- <title>New Project Dialog</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para> Clicking <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis> brings us to the wizard page where it's necessary to specify the
- name and location for the project. We choose, for example, <emphasis>
- <property moreinfo="none">HellojBPM</property>
- </emphasis> as the name and accept the default location. </para>
- <figure float="0">
- <title>Process Name and Location</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Thus, our project will be created in the workspace root directory by default. If you
- want to change the directory for your future project, deselect <emphasis>
- <property moreinfo="none">Use default location</property>
- </emphasis> and click <emphasis>
- <property moreinfo="none">Browse...</property>
- </emphasis> button to set needed location or simply type it.</para>
- <para>On the next screen you'll be prompted to select the core jBPM location that
- we have defined in the previous chapter.</para>
- <figure float="0">
- <title>Core jBPM Location Specifying</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_9.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Clicking on <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> results in the project being generated. The wizard creates four source
- folders: one for the processes (<emphasis>
- <property moreinfo="none">src/main/jpdl</property>
- </emphasis>), one for the java sources (<emphasis>
- <property moreinfo="none">src/main/java</property>
- </emphasis>), one for the unit tests (<emphasis>
- <property moreinfo="none">src/test/java</property>
- </emphasis>) and one for the resources such as the jbpm.properties and the
- hibernate.properties files (<emphasis>
- <property moreinfo="none">src/main/config</property>
- </emphasis>). In addition a classpath container with all the core jBPM libraries is
- added to the project</para>
- <figure float="0">
- <title>Layout of the Process Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Looking inside the different source folders will reveal a number of other artifacts
- that were generated, but we will leave these untouched for the moment. Instead, we will
- look at another wizard that enables us to create an empty process definition.</para>
- </section>
- <section id="creating_an_empty_process_definition">
- <?dbhtml filename="creating_an_empty_process_definition.html"?>
- <title>Creating an Empty Process Definition</title>
- <para>Now when the project is set up, we can use a Creation wizard to create an empty
- process definition. Bring up the <emphasis>
- <property moreinfo="none">New</property>
- </emphasis> wizard by clicking the <emphasis>
- <property moreinfo="none">File > New > Other...</property>
- </emphasis> menu item. The wizard opens on the <emphasis>
- <property moreinfo="none">Select Wizard</property>
- </emphasis> page.</para>
- <figure float="0">
- <title>The Select Wizard Page</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Selecting the <emphasis>
- <property moreinfo="none">JBoss jBPM</property>
- </emphasis> category, then the <emphasis>
- <property moreinfo="none">Process Definition</property>
- </emphasis> item and clicking on the <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis> button brings us to the <emphasis>
- <property moreinfo="none">Create Process Definition</property>
- </emphasis> page.</para>
- <figure float="0">
- <title>The Create New Process Defining Page</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>We choose <emphasis>
- <property moreinfo="none">hello</property>
- </emphasis> as the name of the process archive file. Click on the <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button to end the wizard and open the process definition editor.</para>
- <figure float="0">
- <title>The Process Definition Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_6.png" scale="60"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
-
- <para>You can see in the Package Explorer that creating a process definition involves
- creating a folder with the name of the process definition and populating this folder
- with two .xml files : <emphasis>
- <property moreinfo="none">gpd.xml</property>
- </emphasis> and <emphasis>
- <property moreinfo="none">processdefinition.xml</property>. </emphasis></para>
- <para>The <emphasis>
- <property moreinfo="none">gpd.xml</property>
- </emphasis> contains the graphical information used by the process definition editor.
- The <emphasis>
- <property moreinfo="none">processdefinition.xml</property>
- </emphasis> file contains the actual process definition info without the graphical
- rendering info. At present, the GPD assumes that these two files are siblings. More
- sophisticated configuration will be supported later.</para>
-
- <section id="minimal_process_definition">
- <?dbhtml filename="minimal_process_definition.html"?>
- <title>A Minimal Process Definition</title>
- <para>Now we are ready to create a very simple process definition consisting of a begin
- state, an intermediate state and an end state.</para>
- <para>To make the configuration of actions much easier it's better to use the
- jPDL perspective. It provides the tabbed Properties Editor which allows to configure
- all the relevant properties of the current selected item. </para>
-
- <section id="adding_the_nodes">
- <?dbhtml filename="adding_the_nodes.html"?>
- <title>Adding the Nodes</title>
- <para>At first select respectively <emphasis>
- <property moreinfo="none">Start</property>, </emphasis>
- <emphasis>
- <property moreinfo="none">State</property>
- </emphasis> and <emphasis>
- <property moreinfo="none">End</property>
- </emphasis> on the tools palette and click on the canvas to add these nodes to
- the process definition. The result should look similar to this:</para>
- <figure float="0">
- <title>A Simple Process With Three Nodes</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_7.png" scale="60"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section id="adding_transitions">
- <?dbhtml filename="adding_transitions.html"?>
- <title>Adding Transitions</title>
- <para>Then, we will connect the nodes with transitions. To do that select the <emphasis>
- <property moreinfo="none">Transition</property>
- </emphasis> tool in the tools palette and click on the <emphasis>
- <property moreinfo="none">Start</property>
- </emphasis> node, then move to the <emphasis>
- <property moreinfo="none">State</property>
- </emphasis> node and click again to see the transition being drawn. Perform the
- same steps to create a transition from the <emphasis>
- <property moreinfo="none">State</property>
- </emphasis> node to the <emphasis>
- <property moreinfo="none">End</property>
- </emphasis> node. The result will look like:</para>
- <figure float="0">
- <title>A Simple Process With Transitions</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_8.png" scale="60"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Now, when you've got background knowledge of simple project creation,
- let's move to more advanced tools.</para>
- </section>
- </section>
- </section>
-
-</chapter>
-
-
-<chapter id="the_views" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jbpm/docs/reference/en/modules/the_views.xml" xreflabel="the_views">
- <?dbhtml filename="the_views.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>jBPM</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>The views</title>
-
- <para>Here, it will be explained how to work with views and editors provided by JBDS.</para>
- <para>The views are used for representation and navigation the resources you are working on at
- the moment. One of the advantages of all the views is that all modifications made in the
- current active file are immediately displayed in them. Let’s get acquainted more closely
- with those that the <property moreinfo="none">jPDL perspective</property> provides. </para>
-
- <figure float="0">
- <title>The jPDL Perspective Views and Editors</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_0.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>As you can see in the picture above, the <property moreinfo="none">jPDL perspective</property> contains a
- complete set of functionality that's necessary for working on the jBPM project.</para>
-
- <section id="the_outline_view">
- <?dbhtml filename="the_outline_view.html"?>
- <title>The Outline View</title>
- <para>To have a way to quickly see an outline of the process use the <emphasis>
- <property moreinfo="none">Outline view</property>
- </emphasis> that is presented as the classical tree. If it is not visible select <emphasis>
- <property moreinfo="none">Window > Show view > Outline</property>. </emphasis></para>
-
- <figure float="0">
- <title>The Overview View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-
- <section id="the_overview">
- <?dbhtml filename="the_outline_view.html"?>
- <title>The Overview</title>
- <para>The main advantage of this view is that it gives visual representation of the whole
- current developing process. Besides, the <emphasis>
- <property moreinfo="none">Overview</property>
- </emphasis> comes as a scrollable thumbnail which enables a better navigation of the
- process structure if it's too large.</para>
-
- <figure float="0">
- <title>The Overview</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-
- <section id="the_properties_view">
- <?dbhtml filename="the_properties_view.html"?>
- <title>The Properties View</title>
- <para> Here, we dwell on the JBDS <property moreinfo="none">Properties view</property>.</para>
- <para>Notice if it's not visible you can access it by navigating <emphasis>
- <property moreinfo="none">Window > Show view > Properties</property>. </emphasis></para>
- <para>The view shows the relevant properties of the selected item in the tabbed form. Every
- item has its own set of properties, which can be directly editable in the Properties
- view or by brining up the context menu.</para>
-
- <figure float="0">
- <title>The Properties View of selected Transition</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>For example, on the picture above the Properties view displays all the properties for
- a selected transition. Its name has been changed to <emphasis>
- <property moreinfo="none">to_auction</property>. </emphasis> We've done it directly in
- active General tab of the view. The same way let's change the name for the
- second transition to <emphasis>
- <property moreinfo="none">to_end</property>. </emphasis></para>
- <para>If no one item is selected, the view represents the properties of the whole process
- definition. </para>
-
- <figure float="0">
- <title>The Properties View of Process Definition</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>In this case, it contains six tabs. The first one is the <emphasis>
- <property moreinfo="none">General</property>.</emphasis> It allows to specify a process name and add
- necessary description. To illustrate let's change the process definition name
- to <emphasis>
- <property moreinfo="none">jbay</property>. </emphasis></para>
- </section>
-
- <section id="jbpm_gpd_editor">
- <?dbhtml filename="direct_editing.html"?>
- <title>The jBPM Graphical Process Designer editor.</title>
- <para>The <property moreinfo="none">jBPM GPD editor</property> includes four modes: Diagram, Deployment,
- Design and Source, which are available as switchable tabs at the bottom of the editor.
- Let's dwell on each of them.</para>
-
- <section id="the_diagram_mode">
- <title>The Diagram mode</title>
- <para> In this mode we define the process in the form of a diagram by means of tools
- provided on the left-hand side of the jBPM GPD. </para>
-
- <figure float="0">
- <title>The Diagram mode</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Besides, some properties can be directly edited in the <property moreinfo="none">Diagram
- mode</property> of the graphical editor. One example of this is the <emphasis>
- <property moreinfo="none">name</property>
- </emphasis> property of nodes. You can edit this directly by selecting the node of
- which you want to change the name and then click once inside this node. This enables
- an editor in the node. We change the name of the node to <emphasis>
- <property moreinfo="none">auction</property>. </emphasis></para>
- </section>
-
- <section id="source_mode">
- <?dbhtml filename="the_source_view.html"?>
- <title>The Source Mode</title>
- <para>Now, that we have defined a simple process definition, we can have a look at the
- XML that is being generated under the covers. To see this XML click on the Source
- tab of the graphical process designer editor.</para>
-
- <figure float="0">
- <title>The Source Mode</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>The <property moreinfo="none">Source mode</property> enables to easily manipulate our XML. That is
- manually inserting and editing necessary elements or attributes. In addition, here
- you can take advantage of content assist.</para>
- </section>
-
- <section id="design_mode">
- <?dbhtml filename="the_design_view.html"?>
- <title>The Design Mode</title>
- <para>One more way to edit your file is to use <property moreinfo="none">Design mode</property>. You can
- see it in the next picture:</para>
- <figure float="0">
- <title>The Design Mode</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_7.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>As you can see above, this mode looks like a table in the first column of which
- the process structure is performed. Here, you can also insert, remove and edit
- elements or attributes, moreover add comments and instructions. Their values can be
- directly edited in the second column of the Design mode table.</para>
- <para>For instance, let’s add a comment on the second transition. For that, you should
- bring up the context menu for it and choose <emphasis>
- <property moreinfo="none">Add Before > Comment</property>. </emphasis></para>
-
- <figure float="0">
- <title>Adding a Comment</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Then, we can put the text <emphasis>This transition leads to the end
- state</emphasis> in the right column as its value.</para>
-
- <figure float="0">
- <title>Comment is added</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_9.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- </section>
-
- <section id="deployment_mode">
- <?dbhtml filename="the_deployment_view.html"?>
- <title>The Deployment Mode</title>
- <para>Finally, to adjust the deployment settings of the project you should switch on to
- the tab that opens the <property moreinfo="none">Deployment mode</property>. On the picture below
- the <property moreinfo="none">Deployment mode</property> is performed with default settings. Here,
- you can easily modify them or, if the settings won't match your needs, to
- reset defaults. </para>
- <figure float="0">
- <title>The Deployment Mode</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/the_views/the_views_10.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The button <emphasis>
- <property moreinfo="none">Test Connections</property>
- </emphasis> is necessary to make sure whether all your settings are valid before
- deploying the process.</para>
- <para>Now that we've seen how to work with <property moreinfo="none">jPDL
- perspective</property>, let's pass on to the project testing.</para>
- </section>
- </section>
-</chapter>
-
-<chapter id="Test_Drive_Proc_Development" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jbpm/docs/reference/en/modules/Test_Drive_Proc.xml" xreflabel="Test_Drive_Proc_Development">
- <?dbhtml filename="Test_Drive_Proc_Development.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>jBPM</keyword>
- <keyword></keyword>
- <keyword></keyword>
- <keyword></keyword>
- <keyword></keyword>
- </keywordset>
- </chapterinfo>
- <title>Test Driven Process Development</title>
-
- <para> One of the most important advantages of JBoss jBPM's lightweight approach to BPM
- and workflow management is that developers can easily leverage their usual programming
- skills and techniques. One of these well-known techniques is Unit Testing and Test Driven
- Development. </para>
- <para>In this chapter we will show how developers, making use of the JBoss jBPM GPD, can use a
- technique we have baptized <property moreinfo="none">Test Driven Process Development</property> to create
- process definitions and test their correctness. </para>
-
- <para> When creating the <emphasis>
- <property moreinfo="none">HellojBPM</property>
- </emphasis> project the Project Creation wizard has already put in place all the library
- requirements we need to start writing the jBPM unit tests. They are contained in the jBPM
- Library container and the most important of them is the <emphasis>
- <property moreinfo="none">.jar</property>
- </emphasis> file containing the core jBPM classes. While working on the project you could
- find them all in the <property moreinfo="none">Package Explorer</property>.</para>
-
- <figure float="0">
- <title>The jBPM Libraries</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>It must be noted that it is possible to change the location of the core jBPM installation
- by changing the preference settings. More on this <link linkend="change_core_jbpm_inst">see
- later</link> in this book.</para>
-
- <para> With that extra knowledge on the project settings, you can create your first test. To do
- this, we create the <emphasis>
- <property moreinfo="none">com.jbay</property>
- </emphasis> package in the <emphasis>
- <property moreinfo="none">test/java</property>
- </emphasis> source folder. Then we bring up the context menu on this package and select <emphasis>
- <property moreinfo="none">New > Other...</property>
- </emphasis></para>
-
- <figure float="0">
- <title>Call the JUnit Test Case Creation wizard</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para> And then <emphasis>
- <property moreinfo="none">Java > JUnit > JUnit Test Case</property>
- </emphasis> to call the specialized JUnite Test case creation wizard.</para>
- <figure float="0">
- <title>Call the JUnit Test Case Creation wizard</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The wizard looks as follows:</para>
-
- <figure float="0">
- <title>Create Test Dialog</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>By default JUnite 3 version of testing framework is selected. Of course, you can choose
- new advanced JUnit 4 version. In this case you'll be prompted to add new JUnit
- Library to your build path. To add it automatically just click on the appropriate link. In
- the <emphasis>
- <property moreinfo="none">Class under test</property>
- </emphasis> section you can specify the class to test.</para>
-
- <figure float="0">
- <title>A First Test Scenario</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Then, we call the test class <emphasis>
- <property moreinfo="none">HelloTest</property>
- </emphasis> and press <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button to complete.</para>
-
- <para> Next, we should write a simple test scenario as shown on the next figure. Let's
- study the code of this test case. </para>
-
- <figure float="0" id="hello_test">
- <title>A First Test Scenario</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_6.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>In the first line of the method, a jBPM process archive object is created. We use a
- constructor accepting the filename of the archive. In our case it is the <emphasis>
- <property moreinfo="none">hello</property>
- </emphasis> file we created earlier and which lives in the <emphasis>
- <property moreinfo="none">src/main/jpdl</property>
- </emphasis> folder of our project. After asserting that this object is really created, we
- extract a process definition object from it. This object is fed to the constructor of a
- process instance object. We have a process instance object, but this process is not yet
- started, so we can safely assert that its root token still resides in the start node. After
- signalling the token will move to the next state and the process will be in the <emphasis>
- <property moreinfo="none">auction</property>
- </emphasis> state. Finally another signal will end the process. </para>
-
-
- <para> After writing this test we can check whether it works as expected by running it .</para>
-
- <figure float="0">
- <title>Running the Process Test</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_7.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>All went well as we have a green light:</para>
-
- <figure float="0">
- <title>Successful Test Run</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_8.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para> Of course, this simple scenario was not very interesting, but the purpose of it was to
- show how you can reuse your development skills in a very straightforward way when doing
- process development. To see how more interesting processes and process test
- scenario's can be developed, we suggest you to read the <ulink url="http://docs.jboss.com/jbpm/v3/userguide/">JBoss jBPM User Guide</ulink> and to
- study the API reference. You can find it in the jBPM download folder. (To get started we
- downloaded jbpm-jpdl-3.2.2 in <link linkend="jboss_jbpm_runtime_installation">the second
- chapter</link>. You should just remember where you extracted it.) All we've mentioned are in the 'javadoc- *' subfolders of the 'doc' folder.
- Moreover, some more examples will be given later in this book.</para>
-
-</chapter>
-
-
-<chapter id="The_JBoss_jBPM_Int_Mech" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jbpm/docs/reference/en/modules/The_JBoss_jBPM_Int_Mech.xml" xreflabel="The_JBoss_jBPM_Int_Mech">
- <?dbhtml filename="The_JBoss_jBPM_Int_Mech.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>jBPM</keyword>
- <keyword></keyword>
- <keyword></keyword>
- <keyword></keyword>
- <keyword></keyword>
- </keywordset>
- </chapterinfo>
- <title>Actions : The JBoss jBPM Integration Mechanism</title>
-
- <para> In this chapter we will show how to do software integration with <property moreinfo="none">JBoss
- jBPM</property>. The standard mechanism to implement this is to wrap the functionality you
- want to integrate in a class that implements the <emphasis>
- <property moreinfo="none">ActionHandler</property>
- </emphasis> interface. In order to demonstrate it let's specify Hello World action for our
- process.</para>
-
- <section>
- <title>Creating a Hello World Action</title>
-
- <para>Each Hello World process should integrate one or more Hello World actions, so this is
- what we will be doing. We can integrate custom code at different points in the process
- definition. To do this we have to specify an action handler, represented by an
- implementation of the <emphasis>
- <property moreinfo="none">ActionHandler</property>
- </emphasis> interface, and attach this piece of code to a particular event. These events
- are amongst others, going over a transition, leaving or entering nodes, after and before
- signalling. </para>
-
- <para> To make things a little bit more concrete, let's create a new class called <emphasis>
- <property moreinfo="none">HelloActionHandler</property>.
- </emphasis> For that firstly we'll create a new package <emphasis>
- <property moreinfo="none">com.jbay.action</property>
- </emphasis> in the <emphasis>
- <property moreinfo="none">src/java/main</property>
- </emphasis> folder of our project. Then, we should call New Class Creation wizard as
- usual by right-clicking and navigating <emphasis>
- <property moreinfo="none">New > Class</property>.
- </emphasis> </para>
-
- <figure float="0">
- <title>Creating HelloActionHendler Class</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Notice that two first gaps have been filled automatically. Here, instead of <emphasis>
- <property moreinfo="none">Package</property>
- </emphasis> option <emphasis>
- <property moreinfo="none">Enclose type</property>
- </emphasis> option can be selected where a type in which to enclose a new class should
- be specified.</para>
-
- <para>In our case, we leave everything as it is, just type <emphasis>
- <property moreinfo="none">HelloActionHandler</property>
- </emphasis> as a name of new class and add <emphasis>
- <property moreinfo="none">org.jbpm.graph.ActionHendler</property>
- </emphasis> interface as it's shown in the picture above.</para>
-
- <para>Thus, our <emphasis>
- <property moreinfo="none">HelloActionHandler</property>
- </emphasis> implements the <emphasis>
- <property moreinfo="none">ActionHandler</property>
- </emphasis> interface including the <emphasis>
- <property moreinfo="none">execute</property>
- </emphasis> method as shown in the next figure. Here, we add a variable named <emphasis>
- <property moreinfo="none">greeting</property>
- </emphasis> to the collection of process variables and put a message in it :
- <emphasis>"Hello from ActionHandler"</emphasis>. </para>
-
- <figure float="0">
- <title>A Simple Hello Action</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_2.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Now, as we have <emphasis>
- <property moreinfo="none">HelloActionHandler</property>
- </emphasis> class defined, let's explore how we can handle it.</para>
- </section>
-
- <section>
- <title>Integrating the Hello World Action</title>
-
- <para>The main purpose of this chapter is to provide you with the steps associating our
- Hello World action with a particular event and test the correctness of our actions as
- well.</para>
-
- <para> As good Testcity citizens we will first create a Unit Test that proves the behaviour
- we want to achieve by adding the <emphasis>
- <property moreinfo="none">ActionHandler</property>
- </emphasis> to the process. So we implement another test.</para>
-
- <para>At first, let's return to the
- code we already saw <link linkend="hello_test">in the previous chapter</link> and add new test method <emphasis>
- <property moreinfo="none">testActionHendler</property></emphasis> to it. </para>
-
- <figure float="0">
- <title>Create the Hello Action Test</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_3.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>We assert
- that no variable called <emphasis>
- <property moreinfo="none">greeting</property>
- </emphasis> exist. Then we give the process a signal to move it to the auction state. We
- want to associate the execution of the action with the event of going over the
- transition from the start state to the auction state. So after the signal, the process
- should be in the auction state as in the previous scenario. But moreover, the <emphasis>
- <property moreinfo="none">greeting</property>
- </emphasis> variable should exist and contain the string <emphasis>"Hello from
- ActionHandler"</emphasis>. That's what we assert in the last lines of the test
- method.</para>
-
-
-
- <para> Running the tests now results in a failure. The point is that we did not associate
- the action with any particular event in the process definition, so the process variable
- did not get set. </para>
-
- <figure float="0">
- <title>Test Results Before Integration</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_4.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para> Let's do something about it and add an action to the first transition of our
- sample process. To do this you can use the Actions tab in the Properties Editor that is
- under the graphical canvas. Bring up the popup menu of the action element container and
- chose New Action as it's shown on the figure below. The other way to add an action
- to the transition is simply to use the dropdown menu that is available under the action
- icon in the right upper corner of the Properties View.</para>
-
- <figure float="0">
- <title>Adding an Action to a Transition</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_5.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>After adding the action a tabbed view with three pages will appear.</para>
-
- <figure float="0">
- <title>Configuration Dialog for an Action</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_6.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The first of these three pages allows you to give the Action a name. The last page
- contains some advanced attributes such as whether the Action is asynchronous. The
- Details page is the most important. It allows to choose and configure the actual action
- handler implementation. </para>
-
- <figure float="0">
- <title>The Details page of an Action Configuration Dialog</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_7.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
-
- <para>Clicking on the <emphasis>
- <property moreinfo="none">Search...</property>
- </emphasis> button brings us to a Choose Class dialog.</para>
-
-
- <figure float="0">
- <title>The Choose Action Handler Dialog</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
-
- <para> We choose our previously created 'HelloActionHandler' class and
- push the <property moreinfo="none">OK</property> button. After the selection of the action handler for
- the action, we can run the test and observe it gives us a green light.</para>
-
- <figure float="0">
- <title>Test Results</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_9.png" scale="70"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>There we are. The above objective has been achieved.</para>
- </section>
-
- <section>
- <title> Integration Points</title>
-
- <para> The different integration points in a process definition are thoroughly documented in
- the <ulink url="http://docs.jboss.com/jbpm/v3/userguide/">JBoss jBPM User Guide</ulink>. Instance nodes can contain many action
- elements. Each of these will appear in the Action element list of the Actions tab. But
- each Action also has a properties view of itself. You can navigate to this view by
- selecting the added Action in the outline view. </para>
-
- </section>
-
-</chapter>
-
-
-<chapter id="Quick_Howto_Guide" xml:base="file:///home/ochikvina/WORK/for_compare/trunk/jbpm/docs/reference/en/modules/Quick_Howto_Guide.xml" xreflabel="Quick_Howto_Guide">
- <?dbhtml filename="Quick_Howto_Guide.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>jBPM</keyword>
- <keyword></keyword>
- <keyword></keyword>
- <keyword></keyword>
- <keyword></keyword>
- </keywordset>
- </chapterinfo>
- <title>Quick Howto Guide</title>
-
- <para>This chapter contains additional information related to the <property moreinfo="none">JBoss
- jBPM</property>.</para>
-
- <section id="change_core_jbpm_inst">
- <title>Change the Default Core jBPM Installation</title>
-
- <para> You can change the default <property moreinfo="none">jBPM</property> installation by means of the
- Eclipse preference mechanism. Open the Preferences dialog by selecting <emphasis>
- <property moreinfo="none">Window > Preferences</property>
- </emphasis> and select the <emphasis>
- <property moreinfo="none">JBoss jBPM > Runtime Location</property>
- </emphasis> category. Using this page you can add multiple <property moreinfo="none">jBPM</property>
- installation locations and change the default one. The default installation is used for
- the classpath settings when creating a new Process Project. Changing the preferences has
- no influence on already created projects. Getting rid of a <property moreinfo="none">jBPM</property>
- installation that's being referenced by a project however will cause the
- classpath to contain errors. </para>
-
-
- <figure float="0">
- <title>The jBPM Preferences Page</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-
- <section>
- <title>Configuring Task Nodes</title>
-
- <para>Here, we'll examine how you can configure the Task nodes in jBPM jPDL GPD.</para>
-
- <para> You can add Tasks to Task nodes and then configure them in a similar manner as the
- Action configuration mechanism. Let's consider the process definition similar
- to the previous one that contains three nodes: Start state, Task node and End state. The
- <property moreinfo="none">Properties view</property> for selected Task node includes several tabs. </para>
-
- <figure float="0">
- <title>The Properties View of the selected Task Node</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_2.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>We should choose the Task tab and then bring up the context menu or click the button
- in the top right corner of the view to add a Task to our Task node.</para>
-
- <figure float="0">
- <title>Adding a Task to the Task Node</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_3.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Every added Task has its own configuration possibilities. You can access them through
- the <property moreinfo="none">Properties view</property> as well.</para>
-
- <figure float="0">
- <title>The Task properties</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_4.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The <property moreinfo="none">General page</property> is a place where you can specify the name of a
- Task and its description. For instance, let it be <emphasis>
- <property moreinfo="none">approve oder</property>
- </emphasis> with appropriate description that you can see in the figure below.</para>
-
- <figure float="0">
- <title>The Task General Page</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_5.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Now, look at <property moreinfo="none">Details page</property>. First, you should specify the due date
- that is a mandatory property for the Task. The due date is the date on which the task
- should be accomplished. Here you can also set a Task priority as well as signalling,
- notifying or blocking. The <emphasis>
- <property moreinfo="none">Blocking</property>
- </emphasis> attribute indicates that the process will not be able to continue if this
- task is still unaccomplished. The <emphasis>
- <property moreinfo="none">Generate Form...</property>
- </emphasis> button is for creating a simple task form that can be rendered by the jBPM
- console.</para>
-
- <figure float="0">
- <title>The Task Details Page</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_6.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>For our example, we specify the due date as 2 business days, choose the high priority
- and also check the <emphasis>
- <property moreinfo="none">Signalling</property>
- </emphasis> and <emphasis>
- <property moreinfo="none">Notify</property>
- </emphasis> attributes. It means that the Task should be accomplished in 2 business days
- and the assignee will be notified by email when the task is assigned. To specify how the
- Task should be assigned switch on to the <property moreinfo="none">Assignment page</property>.</para>
-
- <figure float="0">
- <title>The Task Assignment Page</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_7.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On the <property moreinfo="none">Reminder page</property> you can specify whether the assignee will be reminded of the task
- that awaits him.</para>
-
- <figure float="0">
- <title>The Task Reminder Page</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_8.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>In our case, the assignee will be reminded by email after two business hours and
- continue to get reminding every business hour after that.</para>
- <para>In the next figure you can see our configuring generated into XML.</para>
- <figure float="0">
- <title>The Task Reminder Page</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_9.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>We hope, our guide will help you to get started with the jPDL process language and jBPM
- workflow on the whole. Besides, for additional information you are welcome on <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss forum</ulink>.</para>
- </section>
-</chapter>
-
-
- <!-- TODO: drools used in this section is not available for eclipse .3.3 &AddBusinessProcess; -->
-</book>
+ ]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
+ <bookinfo>
+ <title>jBPM Tools Reference Guide</title>
+ <corpauthor>
+ <inlinemediaobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/jbosstools_logo.png" format="PNG"></imagedata>
+ </imageobject>
+ <imageobject role="html">
+ <imagedata></imagedata>
+ </imageobject>
+ </inlinemediaobject>
+ </corpauthor>
+
+ <author>
+ <firstname>Anatoly</firstname>
+ <surname>Fedosik</surname>
+ </author>
+ <author>
+ <firstname>Koen</firstname>
+ <surname>Aers</surname>
+ <email>koen.aers(a)jboss.com</email>
+ </author>
+ <author>
+ <firstname>Olga</firstname>
+ <surname>Chikvina</surname>
+ </author>
+ <author>
+ <firstname>Svetlana</firstname>
+ <surname>Mukhina</surname>
+ <email>smukhina(a)exadel.com</email>
+ </author>
+ <author>
+ <firstname>Tom</firstname>
+ <surname>Baeyens</surname>
+ <email>tom.baeyens(a)jboss.com</email>
+ </author>
+
+
+ <pubdate>April 2008</pubdate>
+ <copyright>
+ <year>2007</year>
+ <year>2009</year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo><diffmk:wrapper diffmk:change="changed"> Version: 4.0.0.CR1</diffmk:wrapper></releaseinfo>
+
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jbpm/pdf/JBPM_Refere...">PDF version</ulink>
+ </para>
+</abstract>
+
+ </bookinfo>
+
+ <toc></toc>
+
+<chapter id="Introduction" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jbpm/docs/reference/en/modules/Introduction.xml" xreflabel="Introduction">
+ <?dbhtml filename="TargetAudience.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ <keyword>Target</keyword>
+ <keyword>developers</keyword>
+ <keyword>Audience</keyword>
+ </keywordset>
+ </chapterinfo>
+ <title>Introduction</title>
+ <para>All developers and process analysts who are beginning to use JBoss jBPM should read this
+ Getting Started guide. It will give them a jumpstart showing how to create a process definition.</para>
+ <section id="Preface">
+ <?dbhtml filename="Preface.html"?>
+ <title>Preface</title>
+ <para>This document introduces the use of the JBoss jBPM Graphical Process Designer (GPD) to
+ create workflow processes. It will help first time users with the following tasks :</para>
+ <itemizedlist>
+ <listitem>
+ <para>Install the JBoss jBPM GPD Eclipse plugin available from the JBoss jBPM download
+ area</para>
+ </listitem>
+ <listitem>
+ <para>Set up a Java project in Eclipse and prepare it to do test driven process
+ development</para>
+ </listitem>
+ <listitem>
+ <para>Using the creation wizard to create an empty process definition</para>
+ </listitem>
+ <listitem>
+ <para>Use the designer palette to draw the first processdefinition</para>
+ </listitem>
+ <listitem>
+ <para>Show how the xml processdefinition can be inspected as an xml file</para>
+ </listitem>
+ <listitem>
+ <para>Set up a Java project in Eclipse and prepare it to do test driven process
+ development</para>
+ </listitem>
+ <listitem>
+ <para>Write an example process test case</para>
+ </listitem>
+ </itemizedlist>
+ <para>If you have questions, please feel free to contact <ulink url="mailto:koen.aers@jboss.com">Koen Aers</ulink> or <ulink url="mailto:tom.baeyens@jboss.com">Tom Baeyens</ulink> for more
+ information.</para>
+ </section>
+
+ <section id="feature_list">
+
+ <title>Feature list</title>
+
+ <para> JBoss jBPM is a workflow that enables creating and automatization business processes. Look
+ at the list of features below to understand its main functionality.</para>
+ <table>
+ <title>Key Functionality for JBoss jBPM</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Feature</entry>
+ <entry>Benefit</entry>
+ </row>
+ </thead>
+ <tbody>
+
+ <row>
+ <entry>
+ <link linkend="minimal_process_definition">jBDL support</link>
+ </entry>
+ <entry>Enables managing workflow processes as well as human tasks and interactions between
+ them. jBDL combines the best both Java and declarative process techniques.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <link linkend="GuidedTourJBossjBPMGPD">Support of Graphical Process Designer (GPD)</link>
+ </entry>
+ <entry>Is used for simplifying declarative process development and visualizations of all
+ actions.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <link linkend="CreatingjBPMProject">Project Creation wizard</link>
+ </entry>
+ <entry>Allows to create a new jBPM template project that already includes all advanced
+ artifacts and core jBPM libraries.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <link linkend="minimal_process_definition">Rich palette of pre-build process nodes</link>
+ </entry>
+ <entry>Provides process-building functionality and gives opportunity even non-programmers to
+ develop processes.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <link linkend="the_views">A large range of special views, including:</link>
+ </entry>
+ <entry></entry>
+ </row>
+
+ <row>
+ <entry>
+ <link linkend="source_mode">Support of XML code view</link>
+ </entry>
+ <entry>Shows the corresponding XML that's generated automatically in the Source view
+ of the process definition editor when developing the process.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <link linkend="the_properties_view">Properties view</link>
+ </entry>
+ <entry>Facilitates configuring and editing of all nodes properties.</entry>
+ </row>
+
+ <row>
+ <entry>
+ <link linkend="jbpm_gpd_editor">The jBPM Graphical Process Designer editor</link>
+ </entry>
+ <entry>The plugin is used for designing the workflow.</entry>
+ </row>
+
+
+ <row>
+ <entry>Interaction with all of the J2EE based integration technologies including Web Services,
+ Java Messaging, J2EE Connectors, JBDC, EJBs.</entry>
+ <entry>Enables implementation, provides better functionality and flexibility.</entry>
+ </row>
+
+ <row>
+ <entry>Integration with jBoss Seam</entry>
+ <entry>Allows to write applications with complex workflows and provides easier interactions
+ between them.</entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+
+ <section>
+ <title>Other relevant resources on the topic</title>
+ <para>All JBoss Developer Studio/JBoss Tools release documentation you can find at<ulink url="http://docs.jboss.org/tools/">http://docs.jboss.org/tools</ulink> in the corresponding release directory.</para>
+ <para>There is some extra information on <ulink url="http://www.jboss.org/community/wiki/JBPMWiki">JBoss Wiki. </ulink></para>
+ <para>The latest documentation builds are available at <ulink url="http://download.jboss.org/jbosstools/nightly-docs/">http://download.jboss.org/jbosstools/nightly-docs</ulink>.</para>
+ </section>
+
+</chapter>
+
+
+<chapter id="jboss_jbpm_runtime_installation" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jbpm/docs/reference/en/modules/jboss_jbpm_runtime_installation.xml" xreflabel="jboss_jbpm_runtime_installation">
+ <?dbhtml filename="jboss_jbpm_runtime_installation.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ <keyword>designer</keyword>
+ <keyword>process</keyword>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>jBPM runtime</keyword>
+ </keywordset>
+ </chapterinfo>
+ <title>JBoss jBPM Runtime Installation</title>
+ <para>The main purpose of this chapter is to let you know how to launch the <property moreinfo="none">JBoss
+ jBPM</property> (business process management).</para>
+ <para>The jBPM plugin (jBPM Designer) is already included in the <property moreinfo="none">JBoss Tools</property>.
+ To make it work, you should only download the jBPM runtime (<ulink url="http://sourceforge.net/project/showfiles.php?group_id=70542&package_i...">jbpm-jpdl-3.2.3</ulink> currently) and specify the directory where you extracted the runtime
+ either when you create a jBPM project or by using the jBPM preference pages.</para>
+
+ <note>
+ <title>Note:</title>
+ <para>Try to avoid using spaces in the names of installation folders. It can provoke problems in
+ some situations with Sun-based VMs.</para>
+ </note>
+
+ <para>Navigate to <emphasis>
+ <property moreinfo="none">Window > Preferences > JBoss jBPM > Runtime Locations</property>.
+ </emphasis> Here you can add, edit and remove JBoss jBPM installation locations. Click <emphasis>
+ <property moreinfo="none">Add</property>
+ </emphasis> button. In the dialog that appeared enter a name for a newly added jBPM runtime and
+ point to the correct location of this package on your harddrive. Click <emphasis>
+ <property moreinfo="none">OK</property>
+ </emphasis> then click <emphasis>
+ <property moreinfo="none">OK</property>
+ </emphasis> again.</para>
+
+ <figure float="0">
+ <title>Adding jBPM Location</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/runtime_installation/runtime_installation_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Now, when you have a runtime installed, we are going to demonstrate some powerful features of
+ the jBPM.</para>
+</chapter>
+
+
+<chapter id="GuidedTourJBossjBPMGPD" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jbpm/docs/reference/en/modules/guided_tour_jboss_jbpmgpd.xml" xreflabel="GuidedTourJBossjBPMGPD">
+ <?dbhtml filename="GuidedTourJBossjBPMGPD.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ <keyword>JBoss</keyword>
+ <keyword>Process</keyword>
+ <keyword>Definition</keyword>
+ </keywordset>
+ </chapterinfo>
+ <title>A Guided Tour of JBoss jBPM GPD</title>
+ <para>In this chapter we suggest a step-by-step walk-through of creating and configuring your
+ own simple process. Let's try to organize a new jBPM project.</para>
+ <para>A wizard for creating a jBPM project is included in the GPD plugin. We have opted to
+ create a project based on a template already containing a number of advanced artifacts that
+ we will ignore for this section. In the future we will elaborate this wizard and offer the
+ possibility to create an empty jBPM project as well as projects based on templates taken
+ from the jBPM tutorial.</para>
+ <section id="CreatingjBPMProject">
+ <?dbhtml filename="CreatingjBPMProject.html"?>
+ <title>Creating a jBPM Project</title>
+ <para>This section will show you how to use the Creation wizard for creating a new jBPM
+ project with already included source folders.</para>
+ <para>At first you should select <emphasis>
+ <property moreinfo="none">File >New Project...</property>
+ </emphasis> and then <emphasis>
+ <property moreinfo="none">JBoss jBPM > Process Project</property>
+ </emphasis> in the New Project dialog:</para>
+ <figure float="0">
+ <title>New Project Dialog</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para> Clicking <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis> brings us to the wizard page where it's necessary to specify the
+ name and location for the project. We choose, for example, <emphasis>
+ <property moreinfo="none">HellojBPM</property>
+ </emphasis> as the name and accept the default location. </para>
+ <figure float="0">
+ <title>Process Name and Location</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Thus, our project will be created in the workspace root directory by default. If you
+ want to change the directory for your future project, deselect <emphasis>
+ <property moreinfo="none">Use default location</property>
+ </emphasis> and click <emphasis>
+ <property moreinfo="none">Browse...</property>
+ </emphasis> button to set needed location or simply type it.</para>
+ <para>On the next screen you'll be prompted to select the core jBPM location that
+ we have defined in the previous chapter.</para>
+ <figure float="0">
+ <title>Core jBPM Location Specifying</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_9.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Clicking on <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> results in the project being generated. The wizard creates four source
+ folders: one for the processes (<emphasis>
+ <property moreinfo="none">src/main/jpdl</property>
+ </emphasis>), one for the java sources (<emphasis>
+ <property moreinfo="none">src/main/java</property>
+ </emphasis>), one for the unit tests (<emphasis>
+ <property moreinfo="none">src/test/java</property>
+ </emphasis>) and one for the resources such as the jbpm.properties and the
+ hibernate.properties files (<emphasis>
+ <property moreinfo="none">src/main/config</property>
+ </emphasis>). In addition a classpath container with all the core jBPM libraries is
+ added to the project</para>
+ <figure float="0">
+ <title>Layout of the Process Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Looking inside the different source folders will reveal a number of other artifacts
+ that were generated, but we will leave these untouched for the moment. Instead, we will
+ look at another wizard that enables us to create an empty process definition.</para>
+ </section>
+ <section id="creating_an_empty_process_definition">
+ <?dbhtml filename="creating_an_empty_process_definition.html"?>
+ <title>Creating an Empty Process Definition</title>
+ <para>Now when the project is set up, we can use a Creation wizard to create an empty
+ process definition. Bring up the <emphasis>
+ <property moreinfo="none">New</property>
+ </emphasis> wizard by clicking the <emphasis>
+ <property moreinfo="none">File > New > Other...</property>
+ </emphasis> menu item. The wizard opens on the <emphasis>
+ <property moreinfo="none">Select Wizard</property>
+ </emphasis> page.</para>
+ <figure float="0">
+ <title>The Select Wizard Page</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Selecting the <emphasis>
+ <property moreinfo="none">JBoss jBPM</property>
+ </emphasis> category, then the <emphasis>
+ <property moreinfo="none">Process Definition</property>
+ </emphasis> item and clicking on the <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis> button brings us to the <emphasis>
+ <property moreinfo="none">Create Process Definition</property>
+ </emphasis> page.</para>
+ <figure float="0">
+ <title>The Create New Process Defining Page</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>We choose <emphasis>
+ <property moreinfo="none">hello</property>
+ </emphasis> as the name of the process archive file. Click on the <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button to end the wizard and open the process definition editor.</para>
+ <figure float="0">
+ <title>The Process Definition Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_6.png" scale="60"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+
+ <para>You can see in the Package Explorer that creating a process definition involves
+ creating a folder with the name of the process definition and populating this folder
+ with two .xml files : <emphasis>
+ <property moreinfo="none">gpd.xml</property>
+ </emphasis> and <emphasis>
+ <property moreinfo="none">processdefinition.xml</property>. </emphasis></para>
+ <para>The <emphasis>
+ <property moreinfo="none">gpd.xml</property>
+ </emphasis> contains the graphical information used by the process definition editor.
+ The <emphasis>
+ <property moreinfo="none">processdefinition.xml</property>
+ </emphasis> file contains the actual process definition info without the graphical
+ rendering info. At present, the GPD assumes that these two files are siblings. More
+ sophisticated configuration will be supported later.</para>
+
+ <section id="minimal_process_definition">
+ <?dbhtml filename="minimal_process_definition.html"?>
+ <title>A Minimal Process Definition</title>
+ <para>Now we are ready to create a very simple process definition consisting of a begin
+ state, an intermediate state and an end state.</para>
+ <para>To make the configuration of actions much easier it's better to use the
+ jPDL perspective. It provides the tabbed Properties Editor which allows to configure
+ all the relevant properties of the current selected item. </para>
+
+ <section id="adding_the_nodes">
+ <?dbhtml filename="adding_the_nodes.html"?>
+ <title>Adding the Nodes</title>
+ <para>At first select respectively <emphasis>
+ <property moreinfo="none">Start</property>, </emphasis>
+ <emphasis>
+ <property moreinfo="none">State</property>
+ </emphasis> and <emphasis>
+ <property moreinfo="none">End</property>
+ </emphasis> on the tools palette and click on the canvas to add these nodes to
+ the process definition. The result should look similar to this:</para>
+ <figure float="0">
+ <title>A Simple Process With Three Nodes</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_7.png" scale="60"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="adding_transitions">
+ <?dbhtml filename="adding_transitions.html"?>
+ <title>Adding Transitions</title>
+ <para>Then, we will connect the nodes with transitions. To do that select the <emphasis>
+ <property moreinfo="none">Transition</property>
+ </emphasis> tool in the tools palette and click on the <emphasis>
+ <property moreinfo="none">Start</property>
+ </emphasis> node, then move to the <emphasis>
+ <property moreinfo="none">State</property>
+ </emphasis> node and click again to see the transition being drawn. Perform the
+ same steps to create a transition from the <emphasis>
+ <property moreinfo="none">State</property>
+ </emphasis> node to the <emphasis>
+ <property moreinfo="none">End</property>
+ </emphasis> node. The result will look like:</para>
+ <figure float="0">
+ <title>A Simple Process With Transitions</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guided_tour_jboss_jbpmgpd/guided_tour_8.png" scale="60"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Now, when you've got background knowledge of simple project creation,
+ let's move to more advanced tools.</para>
+ </section>
+ </section>
+ </section>
+
+</chapter>
+
+
+<chapter id="the_views" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jbpm/docs/reference/en/modules/the_views.xml" xreflabel="the_views">
+ <?dbhtml filename="the_views.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>The views</title>
+
+ <para>Here, it will be explained how to work with views and editors provided by JBDS.</para>
+ <para>The views are used for representation and navigation the resources you are working on at
+ the moment. One of the advantages of all the views is that all modifications made in the
+ current active file are immediately displayed in them. Let’s get acquainted more closely
+ with those that the <property moreinfo="none">jPDL perspective</property> provides. </para>
+
+ <figure float="0">
+ <title>The jPDL Perspective Views and Editors</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_0.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>As you can see in the picture above, the <property moreinfo="none">jPDL perspective</property> contains a
+ complete set of functionality that's necessary for working on the jBPM project.</para>
+
+ <section id="the_outline_view">
+ <?dbhtml filename="the_outline_view.html"?>
+ <title>The Outline View</title>
+ <para>To have a way to quickly see an outline of the process use the <emphasis>
+ <property moreinfo="none">Outline view</property>
+ </emphasis> that is presented as the classical tree. If it is not visible select <emphasis>
+ <property moreinfo="none">Window > Show view > Outline</property>. </emphasis></para>
+
+ <figure float="0">
+ <title>The Overview View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section id="the_overview">
+ <?dbhtml filename="the_outline_view.html"?>
+ <title>The Overview</title>
+ <para>The main advantage of this view is that it gives visual representation of the whole
+ current developing process. Besides, the <emphasis>
+ <property moreinfo="none">Overview</property>
+ </emphasis> comes as a scrollable thumbnail which enables a better navigation of the
+ process structure if it's too large.</para>
+
+ <figure float="0">
+ <title>The Overview</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section id="the_properties_view">
+ <?dbhtml filename="the_properties_view.html"?>
+ <title>The Properties View</title>
+ <para> Here, we dwell on the JBDS <property moreinfo="none">Properties view</property>.</para>
+ <para>Notice if it's not visible you can access it by navigating <emphasis>
+ <property moreinfo="none">Window > Show view > Properties</property>. </emphasis></para>
+ <para>The view shows the relevant properties of the selected item in the tabbed form. Every
+ item has its own set of properties, which can be directly editable in the Properties
+ view or by brining up the context menu.</para>
+
+ <figure float="0">
+ <title>The Properties View of selected Transition</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>For example, on the picture above the Properties view displays all the properties for
+ a selected transition. Its name has been changed to <emphasis>
+ <property moreinfo="none">to_auction</property>. </emphasis> We've done it directly in
+ active General tab of the view. The same way let's change the name for the
+ second transition to <emphasis>
+ <property moreinfo="none">to_end</property>. </emphasis></para>
+ <para>If no one item is selected, the view represents the properties of the whole process
+ definition. </para>
+
+ <figure float="0">
+ <title>The Properties View of Process Definition</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>In this case, it contains six tabs. The first one is the <emphasis>
+ <property moreinfo="none">General</property>.</emphasis> It allows to specify a process name and add
+ necessary description. To illustrate let's change the process definition name
+ to <emphasis>
+ <property moreinfo="none">jbay</property>. </emphasis></para>
+ </section>
+
+ <section id="jbpm_gpd_editor">
+ <?dbhtml filename="direct_editing.html"?>
+ <title>The jBPM Graphical Process Designer editor.</title>
+ <para>The <property moreinfo="none">jBPM GPD editor</property> includes four modes: Diagram, Deployment,
+ Design and Source, which are available as switchable tabs at the bottom of the editor.
+ Let's dwell on each of them.</para>
+
+ <section id="the_diagram_mode">
+ <title>The Diagram mode</title>
+ <para> In this mode we define the process in the form of a diagram by means of tools
+ provided on the left-hand side of the jBPM GPD. </para>
+
+ <figure float="0">
+ <title>The Diagram mode</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Besides, some properties can be directly edited in the <property moreinfo="none">Diagram
+ mode</property> of the graphical editor. One example of this is the <emphasis>
+ <property moreinfo="none">name</property>
+ </emphasis> property of nodes. You can edit this directly by selecting the node of
+ which you want to change the name and then click once inside this node. This enables
+ an editor in the node. We change the name of the node to <emphasis>
+ <property moreinfo="none">auction</property>. </emphasis></para>
+ </section>
+
+ <section id="source_mode">
+ <?dbhtml filename="the_source_view.html"?>
+ <title>The Source Mode</title>
+ <para>Now, that we have defined a simple process definition, we can have a look at the
+ XML that is being generated under the covers. To see this XML click on the Source
+ tab of the graphical process designer editor.</para>
+
+ <figure float="0">
+ <title>The Source Mode</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The <property moreinfo="none">Source mode</property> enables to easily manipulate our XML. That is
+ manually inserting and editing necessary elements or attributes. In addition, here
+ you can take advantage of content assist.</para>
+ </section>
+
+ <section id="design_mode">
+ <?dbhtml filename="the_design_view.html"?>
+ <title>The Design Mode</title>
+ <para>One more way to edit your file is to use <property moreinfo="none">Design mode</property>. You can
+ see it in the next picture:</para>
+ <figure float="0">
+ <title>The Design Mode</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_7.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>As you can see above, this mode looks like a table in the first column of which
+ the process structure is performed. Here, you can also insert, remove and edit
+ elements or attributes, moreover add comments and instructions. Their values can be
+ directly edited in the second column of the Design mode table.</para>
+ <para>For instance, let’s add a comment on the second transition. For that, you should
+ bring up the context menu for it and choose <emphasis>
+ <property moreinfo="none">Add Before > Comment</property>. </emphasis></para>
+
+ <figure float="0">
+ <title>Adding a Comment</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Then, we can put the text <emphasis>This transition leads to the end
+ state</emphasis> in the right column as its value.</para>
+
+ <figure float="0">
+ <title>Comment is added</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_9.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </section>
+
+ <section id="deployment_mode">
+ <?dbhtml filename="the_deployment_view.html"?>
+ <title>The Deployment Mode</title>
+ <para>Finally, to adjust the deployment settings of the project you should switch on to
+ the tab that opens the <property moreinfo="none">Deployment mode</property>. On the picture below
+ the <property moreinfo="none">Deployment mode</property> is performed with default settings. Here,
+ you can easily modify them or, if the settings won't match your needs, to
+ reset defaults. </para>
+ <figure float="0">
+ <title>The Deployment Mode</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/the_views/the_views_10.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The button <emphasis>
+ <property moreinfo="none">Test Connections</property>
+ </emphasis> is necessary to make sure whether all your settings are valid before
+ deploying the process.</para>
+ <para>Now that we've seen how to work with <property moreinfo="none">jPDL
+ perspective</property>, let's pass on to the project testing.</para>
+ </section>
+ </section>
+</chapter>
+
+<chapter id="Test_Drive_Proc_Development" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jbpm/docs/reference/en/modules/Test_Drive_Proc.xml" xreflabel="Test_Drive_Proc_Development">
+ <?dbhtml filename="Test_Drive_Proc_Development.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ </keywordset>
+ </chapterinfo>
+ <title>Test Driven Process Development</title>
+
+ <para> One of the most important advantages of JBoss jBPM's lightweight approach to BPM
+ and workflow management is that developers can easily leverage their usual programming
+ skills and techniques. One of these well-known techniques is Unit Testing and Test Driven
+ Development. </para>
+ <para>In this chapter we will show how developers, making use of the JBoss jBPM GPD, can use a
+ technique we have baptized <property moreinfo="none">Test Driven Process Development</property> to create
+ process definitions and test their correctness. </para>
+
+ <para> When creating the <emphasis>
+ <property moreinfo="none">HellojBPM</property>
+ </emphasis> project the Project Creation wizard has already put in place all the library
+ requirements we need to start writing the jBPM unit tests. They are contained in the jBPM
+ Library container and the most important of them is the <emphasis>
+ <property moreinfo="none">.jar</property>
+ </emphasis> file containing the core jBPM classes. While working on the project you could
+ find them all in the <property moreinfo="none">Package Explorer</property>.</para>
+
+ <figure float="0">
+ <title>The jBPM Libraries</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>It must be noted that it is possible to change the location of the core jBPM installation
+ by changing the preference settings. More on this <link linkend="change_core_jbpm_inst">see
+ later</link> in this book.</para>
+
+ <para> With that extra knowledge on the project settings, you can create your first test. To do
+ this, we create the <emphasis>
+ <property moreinfo="none">com.jbay</property>
+ </emphasis> package in the <emphasis>
+ <property moreinfo="none">test/java</property>
+ </emphasis> source folder. Then we bring up the context menu on this package and select <emphasis>
+ <property moreinfo="none">New > Other...</property>
+ </emphasis></para>
+
+ <figure float="0">
+ <title>Call the JUnit Test Case Creation wizard</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para> And then <emphasis>
+ <property moreinfo="none">Java > JUnit > JUnit Test Case</property>
+ </emphasis> to call the specialized JUnite Test case creation wizard.</para>
+ <figure float="0">
+ <title>Call the JUnit Test Case Creation wizard</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The wizard looks as follows:</para>
+
+ <figure float="0">
+ <title>Create Test Dialog</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>By default JUnite 3 version of testing framework is selected. Of course, you can choose
+ new advanced JUnit 4 version. In this case you'll be prompted to add new JUnit
+ Library to your build path. To add it automatically just click on the appropriate link. In
+ the <emphasis>
+ <property moreinfo="none">Class under test</property>
+ </emphasis> section you can specify the class to test.</para>
+
+ <figure float="0">
+ <title>A First Test Scenario</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Then, we call the test class <emphasis>
+ <property moreinfo="none">HelloTest</property>
+ </emphasis> and press <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button to complete.</para>
+
+ <para> Next, we should write a simple test scenario as shown on the next figure. Let's
+ study the code of this test case. </para>
+
+ <figure float="0" id="hello_test">
+ <title>A First Test Scenario</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_6.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>In the first line of the method, a jBPM process archive object is created. We use a
+ constructor accepting the filename of the archive. In our case it is the <emphasis>
+ <property moreinfo="none">hello</property>
+ </emphasis> file we created earlier and which lives in the <emphasis>
+ <property moreinfo="none">src/main/jpdl</property>
+ </emphasis> folder of our project. After asserting that this object is really created, we
+ extract a process definition object from it. This object is fed to the constructor of a
+ process instance object. We have a process instance object, but this process is not yet
+ started, so we can safely assert that its root token still resides in the start node. After
+ signalling the token will move to the next state and the process will be in the <emphasis>
+ <property moreinfo="none">auction</property>
+ </emphasis> state. Finally another signal will end the process. </para>
+
+
+ <para> After writing this test we can check whether it works as expected by running it .</para>
+
+ <figure float="0">
+ <title>Running the Process Test</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_7.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>All went well as we have a green light:</para>
+
+ <figure float="0">
+ <title>Successful Test Run</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/test_driv_proc_8.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para> Of course, this simple scenario was not very interesting, but the purpose of it was to
+ show how you can reuse your development skills in a very straightforward way when doing
+ process development. To see how more interesting processes and process test
+ scenario's can be developed, we suggest you to read the <ulink url="http://docs.jboss.com/jbpm/v3/userguide/">JBoss jBPM User Guide</ulink> and to
+ study the API reference. You can find it in the jBPM download folder. (To get started we
+ downloaded jbpm-jpdl-3.2.2 in <link linkend="jboss_jbpm_runtime_installation">the second
+ chapter</link>. You should just remember where you extracted it.) All we've mentioned are in the 'javadoc- *' subfolders of the 'doc' folder.
+ Moreover, some more examples will be given later in this book.</para>
+
+</chapter>
+
+
+<chapter id="The_JBoss_jBPM_Int_Mech" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jbpm/docs/reference/en/modules/The_JBoss_jBPM_Int_Mech.xml" xreflabel="The_JBoss_jBPM_Int_Mech">
+ <?dbhtml filename="The_JBoss_jBPM_Int_Mech.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ </keywordset>
+ </chapterinfo>
+ <title>Actions : The JBoss jBPM Integration Mechanism</title>
+
+ <para> In this chapter we will show how to do software integration with <property moreinfo="none">JBoss
+ jBPM</property>. The standard mechanism to implement this is to wrap the functionality you
+ want to integrate in a class that implements the <emphasis>
+ <property moreinfo="none">ActionHandler</property>
+ </emphasis> interface. In order to demonstrate it let's specify Hello World action for our
+ process.</para>
+
+ <section>
+ <title>Creating a Hello World Action</title>
+
+ <para>Each Hello World process should integrate one or more Hello World actions, so this is
+ what we will be doing. We can integrate custom code at different points in the process
+ definition. To do this we have to specify an action handler, represented by an
+ implementation of the <emphasis>
+ <property moreinfo="none">ActionHandler</property>
+ </emphasis> interface, and attach this piece of code to a particular event. These events
+ are amongst others, going over a transition, leaving or entering nodes, after and before
+ signalling. </para>
+
+ <para> To make things a little bit more concrete, let's create a new class called <emphasis>
+ <property moreinfo="none">HelloActionHandler</property>.
+ </emphasis> For that firstly we'll create a new package <emphasis>
+ <property moreinfo="none">com.jbay.action</property>
+ </emphasis> in the <emphasis>
+ <property moreinfo="none">src/java/main</property>
+ </emphasis> folder of our project. Then, we should call New Class Creation wizard as
+ usual by right-clicking and navigating <emphasis>
+ <property moreinfo="none">New > Class</property>.
+ </emphasis> </para>
+
+ <figure float="0">
+ <title>Creating HelloActionHendler Class</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Notice that two first gaps have been filled automatically. Here, instead of <emphasis>
+ <property moreinfo="none">Package</property>
+ </emphasis> option <emphasis>
+ <property moreinfo="none">Enclose type</property>
+ </emphasis> option can be selected where a type in which to enclose a new class should
+ be specified.</para>
+
+ <para>In our case, we leave everything as it is, just type <emphasis>
+ <property moreinfo="none">HelloActionHandler</property>
+ </emphasis> as a name of new class and add <emphasis>
+ <property moreinfo="none">org.jbpm.graph.ActionHendler</property>
+ </emphasis> interface as it's shown in the picture above.</para>
+
+ <para>Thus, our <emphasis>
+ <property moreinfo="none">HelloActionHandler</property>
+ </emphasis> implements the <emphasis>
+ <property moreinfo="none">ActionHandler</property>
+ </emphasis> interface including the <emphasis>
+ <property moreinfo="none">execute</property>
+ </emphasis> method as shown in the next figure. Here, we add a variable named <emphasis>
+ <property moreinfo="none">greeting</property>
+ </emphasis> to the collection of process variables and put a message in it :
+ <emphasis>"Hello from ActionHandler"</emphasis>. </para>
+
+ <figure float="0">
+ <title>A Simple Hello Action</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_2.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Now, as we have <emphasis>
+ <property moreinfo="none">HelloActionHandler</property>
+ </emphasis> class defined, let's explore how we can handle it.</para>
+ </section>
+
+ <section>
+ <title>Integrating the Hello World Action</title>
+
+ <para>The main purpose of this chapter is to provide you with the steps associating our
+ Hello World action with a particular event and test the correctness of our actions as
+ well.</para>
+
+ <para> As good Testcity citizens we will first create a Unit Test that proves the behaviour
+ we want to achieve by adding the <emphasis>
+ <property moreinfo="none">ActionHandler</property>
+ </emphasis> to the process. So we implement another test.</para>
+
+ <para>At first, let's return to the
+ code we already saw <link linkend="hello_test">in the previous chapter</link> and add new test method <emphasis>
+ <property moreinfo="none">testActionHendler</property></emphasis> to it. </para>
+
+ <figure float="0">
+ <title>Create the Hello Action Test</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_3.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>We assert
+ that no variable called <emphasis>
+ <property moreinfo="none">greeting</property>
+ </emphasis> exist. Then we give the process a signal to move it to the auction state. We
+ want to associate the execution of the action with the event of going over the
+ transition from the start state to the auction state. So after the signal, the process
+ should be in the auction state as in the previous scenario. But moreover, the <emphasis>
+ <property moreinfo="none">greeting</property>
+ </emphasis> variable should exist and contain the string <emphasis>"Hello from
+ ActionHandler"</emphasis>. That's what we assert in the last lines of the test
+ method.</para>
+
+
+
+ <para> Running the tests now results in a failure. The point is that we did not associate
+ the action with any particular event in the process definition, so the process variable
+ did not get set. </para>
+
+ <figure float="0">
+ <title>Test Results Before Integration</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_4.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para> Let's do something about it and add an action to the first transition of our
+ sample process. To do this you can use the Actions tab in the Properties Editor that is
+ under the graphical canvas. Bring up the popup menu of the action element container and
+ chose New Action as it's shown on the figure below. The other way to add an action
+ to the transition is simply to use the dropdown menu that is available under the action
+ icon in the right upper corner of the Properties View.</para>
+
+ <figure float="0">
+ <title>Adding an Action to a Transition</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_5.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>After adding the action a tabbed view with three pages will appear.</para>
+
+ <figure float="0">
+ <title>Configuration Dialog for an Action</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_6.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The first of these three pages allows you to give the Action a name. The last page
+ contains some advanced attributes such as whether the Action is asynchronous. The
+ Details page is the most important. It allows to choose and configure the actual action
+ handler implementation. </para>
+
+ <figure float="0">
+ <title>The Details page of an Action Configuration Dialog</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_7.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+
+ <para>Clicking on the <emphasis>
+ <property moreinfo="none">Search...</property>
+ </emphasis> button brings us to a Choose Class dialog.</para>
+
+
+ <figure float="0">
+ <title>The Choose Action Handler Dialog</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+
+ <para> We choose our previously created 'HelloActionHandler' class and
+ push the <property moreinfo="none">OK</property> button. After the selection of the action handler for
+ the action, we can run the test and observe it gives us a green light.</para>
+
+ <figure float="0">
+ <title>Test Results</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/jboss_jbpm_int_mech_9.png" scale="70"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>There we are. The above objective has been achieved.</para>
+ </section>
+
+ <section>
+ <title> Integration Points</title>
+
+ <para> The different integration points in a process definition are thoroughly documented in
+ the <ulink url="http://docs.jboss.com/jbpm/v3/userguide/">JBoss jBPM User Guide</ulink>. Instance nodes can contain many action
+ elements. Each of these will appear in the Action element list of the Actions tab. But
+ each Action also has a properties view of itself. You can navigate to this view by
+ selecting the added Action in the outline view. </para>
+
+ </section>
+
+</chapter>
+
+
+<chapter id="Quick_Howto_Guide" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jbpm/docs/reference/en/modules/Quick_Howto_Guide.xml" xreflabel="Quick_Howto_Guide">
+ <?dbhtml filename="Quick_Howto_Guide.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ </keywordset>
+ </chapterinfo>
+ <title>Quick Howto Guide</title>
+
+ <para>This chapter contains additional information related to the <property moreinfo="none">JBoss
+ jBPM</property>.</para>
+
+ <section id="change_core_jbpm_inst">
+ <title>Change the Default Core jBPM Installation</title>
+
+ <para> You can change the default <property moreinfo="none">jBPM</property> installation by means of the
+ Eclipse preference mechanism. Open the Preferences dialog by selecting <emphasis>
+ <property moreinfo="none">Window > Preferences</property>
+ </emphasis> and select the <emphasis>
+ <property moreinfo="none">JBoss jBPM > Runtime Location</property>
+ </emphasis> category. Using this page you can add multiple <property moreinfo="none">jBPM</property>
+ installation locations and change the default one. The default installation is used for
+ the classpath settings when creating a new Process Project. Changing the preferences has
+ no influence on already created projects. Getting rid of a <property moreinfo="none">jBPM</property>
+ installation that's being referenced by a project however will cause the
+ classpath to contain errors. </para>
+
+
+ <figure float="0">
+ <title>The jBPM Preferences Page</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section>
+ <title>Configuring Task Nodes</title>
+
+ <para>Here, we'll examine how you can configure the Task nodes in jBPM jPDL GPD.</para>
+
+ <para> You can add Tasks to Task nodes and then configure them in a similar manner as the
+ Action configuration mechanism. Let's consider the process definition similar
+ to the previous one that contains three nodes: Start state, Task node and End state. The
+ <property moreinfo="none">Properties view</property> for selected Task node includes several tabs. </para>
+
+ <figure float="0">
+ <title>The Properties View of the selected Task Node</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_2.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>We should choose the Task tab and then bring up the context menu or click the button
+ in the top right corner of the view to add a Task to our Task node.</para>
+
+ <figure float="0">
+ <title>Adding a Task to the Task Node</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_3.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Every added Task has its own configuration possibilities. You can access them through
+ the <property moreinfo="none">Properties view</property> as well.</para>
+
+ <figure float="0">
+ <title>The Task properties</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_4.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The <property moreinfo="none">General page</property> is a place where you can specify the name of a
+ Task and its description. For instance, let it be <emphasis>
+ <property moreinfo="none">approve oder</property>
+ </emphasis> with appropriate description that you can see in the figure below.</para>
+
+ <figure float="0">
+ <title>The Task General Page</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_5.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Now, look at <property moreinfo="none">Details page</property>. First, you should specify the due date
+ that is a mandatory property for the Task. The due date is the date on which the task
+ should be accomplished. Here you can also set a Task priority as well as signalling,
+ notifying or blocking. The <emphasis>
+ <property moreinfo="none">Blocking</property>
+ </emphasis> attribute indicates that the process will not be able to continue if this
+ task is still unaccomplished. The <emphasis>
+ <property moreinfo="none">Generate Form...</property>
+ </emphasis> button is for creating a simple task form that can be rendered by the jBPM
+ console.</para>
+
+ <figure float="0">
+ <title>The Task Details Page</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_6.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>For our example, we specify the due date as 2 business days, choose the high priority
+ and also check the <emphasis>
+ <property moreinfo="none">Signalling</property>
+ </emphasis> and <emphasis>
+ <property moreinfo="none">Notify</property>
+ </emphasis> attributes. It means that the Task should be accomplished in 2 business days
+ and the assignee will be notified by email when the task is assigned. To specify how the
+ Task should be assigned switch on to the <property moreinfo="none">Assignment page</property>.</para>
+
+ <figure float="0">
+ <title>The Task Assignment Page</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_7.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On the <property moreinfo="none">Reminder page</property> you can specify whether the assignee will be reminded of the task
+ that awaits him.</para>
+
+ <figure float="0">
+ <title>The Task Reminder Page</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_8.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>In our case, the assignee will be reminded by email after two business hours and
+ continue to get reminding every business hour after that.</para>
+ <para>In the next figure you can see our configuring generated into XML.</para>
+ <figure float="0">
+ <title>The Task Reminder Page</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/quick_howto_guide_9.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>We hope, our guide will help you to get started with the jPDL process language and jBPM
+ workflow on the whole. Besides, for additional information you are welcome on <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss forum</ulink>.</para>
+ </section>
+</chapter>
+
+
+ <!-- TODO: drools used in this section is not available for eclipse .3.3 &AddBusinessProcess; -->
+</book>
15 years, 1 month