JBoss Tools SVN: r20342 - trunk/seam/features/org.jboss.tools.seam.feature.
by jbosstools-commits@lists.jboss.org
Author: nickboldt
Date: 2010-02-17 18:02:59 -0500 (Wed, 17 Feb 2010)
New Revision: 20342
Modified:
trunk/seam/features/org.jboss.tools.seam.feature/feature.xml
Log:
remove update site and add qualifier to seam.feature
Modified: trunk/seam/features/org.jboss.tools.seam.feature/feature.xml
===================================================================
--- trunk/seam/features/org.jboss.tools.seam.feature/feature.xml 2010-02-17 23:02:03 UTC (rev 20341)
+++ trunk/seam/features/org.jboss.tools.seam.feature/feature.xml 2010-02-17 23:02:59 UTC (rev 20342)
@@ -2,7 +2,8 @@
<feature
id="org.jboss.tools.seam.feature"
label="%featureName"
- version="1.0.0"
+ version="1.0.0.qualifier"
+
provider-name="%providerName"
plugin="org.jboss.tools.seam.core">
@@ -18,9 +19,11 @@
%license
</license>
+ <!--
<url>
<update label="%updateSiteName" url="http://download.jboss.org/jbosstools/updates/stable/galileo/"/>
</url>
+ -->
<requires>
<import feature="org.jboss.tools.richfaces.feature" version="2.0.0" match="greaterOrEqual"/>
14 years, 4 months
JBoss Tools SVN: r20341 - trunk/profiler/features/org.jboss.tools.profiler.feature.
by jbosstools-commits@lists.jboss.org
Author: nickboldt
Date: 2010-02-17 18:02:03 -0500 (Wed, 17 Feb 2010)
New Revision: 20341
Added:
trunk/profiler/features/org.jboss.tools.profiler.feature/feature.properties
Modified:
trunk/profiler/features/org.jboss.tools.profiler.feature/feature.xml
Log:
add missing license, description, copyright, etc. to profiler.feature
Added: trunk/profiler/features/org.jboss.tools.profiler.feature/feature.properties
===================================================================
--- trunk/profiler/features/org.jboss.tools.profiler.feature/feature.properties (rev 0)
+++ trunk/profiler/features/org.jboss.tools.profiler.feature/feature.properties 2010-02-17 23:02:03 UTC (rev 20341)
@@ -0,0 +1,48 @@
+###############################################################################
+# Copyright (c) 2009-2010 JBoss by Red Hat and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# JBoss by Red Hat - Initial implementation.
+##############################################################################
+# feature.properties
+# contains externalized strings for feature.xml
+# "%foo" in feature.xml corresponds to the key "foo" in this file
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# This file should be translated.
+
+# "featureName" property - name of the feature
+featureName=JBoss Profiler
+
+# "providerName" property - name of the company that provides the feature
+providerName=JBoss by Red Hat
+
+# "updateSiteName" property - label for the update site
+updateSiteName=JBossTools Update Site
+
+devUpdateSiteName=JBossTools Development Update Site
+
+# "description" property - description of the feature
+description=Provides profiling for JBoss
+
+copyright=Copyright (c) 2007-2009 Red Hat, Inc.\n\
+Distributed under license by Red Hat, Inc. All rights reserved.\n\
+This program is made available under the terms of the\n\
+Eclipse Public License v1.0 which accompanies this distribution,\n\
+and is available at http\://www.eclipse.org/legal/epl-v10.html\n\
+Contributors\:\n\
+Red Hat, Inc. - initial API and implementation
+
+licenseURL=license.html
+updateSiteName=JBossTools Update Site
+license=Red Hat, Inc. licenses these features and plugins to you under \
+certain open source licenses (or aggregations of such licenses), which \
+in a particular case may include the Eclipse Public License, the GNU \
+Lesser General Public License, and/or certain other open source \
+licenses. For precise licensing details, consult the corresponding \
+source code, or contact Red Hat Legal Affairs, 1801 Varsity Drive, \
+Raleigh NC 27606 USA.
+
Property changes on: trunk/profiler/features/org.jboss.tools.profiler.feature/feature.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/profiler/features/org.jboss.tools.profiler.feature/feature.xml
===================================================================
--- trunk/profiler/features/org.jboss.tools.profiler.feature/feature.xml 2010-02-17 20:35:12 UTC (rev 20340)
+++ trunk/profiler/features/org.jboss.tools.profiler.feature/feature.xml 2010-02-17 23:02:03 UTC (rev 20341)
@@ -1,30 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<feature
id="org.jboss.tools.profiler.feature"
- label="JBoss Profiler"
+ label="%featureName"
version="1.0.0.qualifier"
- provider-name="JBoss by Red Hat">
+ provider-name="%providerName">
- <description url="http://www.example.com/description">
- [Enter Feature Description here.]
+ <description url="http://www.jboss.org/tools">
+ %description
</description>
- <copyright url="http://www.example.com/copyright">
- [Enter Copyright Description here.]
+ <copyright>
+ %copyright
</copyright>
- <license url="license.html">
- Red Hat, Inc. licenses these features and plugins to you under
-certain open source licenses (or aggregations of such licenses),
-which
-in a particular case may include the Eclipse Public License,
-the GNU
-Lesser General Public License, and/or certain other open source
-licenses. For precise licensing details, consult the corresponding
-source code, or contact Red Hat Legal Affairs, 1801 Varsity Drive,
-Raleigh NC 27606 USA.
+ <license url="%licenseURL">
+ %license
</license>
+ <!--
+ <url>
+ <update label="%updateSiteName" url="http://download.jboss.org/jbosstools/updates/stable/galileo/"/>
+ </url>
+ -->
+
<requires>
<import plugin="org.eclipse.ui"/>
<import plugin="org.eclipse.core.runtime"/>
14 years, 4 months
JBoss Tools SVN: r20340 - in trunk/drools/docs: reference/en and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2010-02-17 15:35:12 -0500 (Wed, 17 Feb 2010)
New Revision: 20340
Modified:
trunk/drools/docs/guvnor_ref/en/master_output.xml
trunk/drools/docs/reference/en/master_output.xml
Log:
<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:9pt;font-family:Sans Serif">
<p>https://jira.jboss.org/jira/browse/JBDS-1104 - Updated versions,corrected master_output file</p>
</body></html>
Modified: trunk/drools/docs/guvnor_ref/en/master_output.xml
===================================================================
--- trunk/drools/docs/guvnor_ref/en/master_output.xml 2010-02-17 19:58:04 UTC (rev 20339)
+++ trunk/drools/docs/guvnor_ref/en/master_output.xml 2010-02-17 20:35:12 UTC (rev 20340)
@@ -19,1059 +19,1059 @@
<!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>Eclipse Guvnor 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>John</firstname><surname>Graham</surname><email>jgraham(a)redhat.com</email></author>
- <author><firstname>Olga</firstname><surname>Chikvina</surname></author>
-
- <pubdate>April 2008</pubdate>
- <copyright>
- <year>2009</year>
- <holder>JBoss by Red Hat</holder>
- </copyright>
- <releaseinfo>
- Version: 5.1.0.trunk
- </releaseinfo>
-<abstract>
- <title></title>
- <para>
- <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/guvnor_tools_ref_gui...">PDF version</ulink>
- </para>
- </abstract>
-
- </bookinfo>
-
-
- <toc></toc>
-
-
-<chapter id="introduction" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/drools/docs/guvnor_ref/en/modules/introduction.xml" xreflabel="introduction">
- <title>Introduction</title>
-
- <para>The purpose of this document is to describe briefly the functionality present in the
- <property moreinfo="none">Eclipse Guvnor Tools</property> (EGT) for Drools 5. While not intended as a
- comprehensive reference, there should be enough detail included for early adopters using
- these tools.</para>
-
- <para>The <property moreinfo="none">Guvnor repository</property> is not intended as a Source Code Management
- (SCM) solution, and the <property moreinfo="none">EGT</property> are not intended to be Eclipse “team
- provider” extensions or replacements. Rather, the Guvnor repository is a location where
- certain artifacts (such as rules and SOA policy definitions) are controlled (“governed”) by
- policies defined by the deployment environment. The purpose of the <property moreinfo="none">EGT</property>
- is then to enable access to resources held by the Guvnor repository, so
- they can be used in development. Thus, limited capabilities for reading, writing, adding,
- and removing Guvnor repository resources are provided in the
- <property moreinfo="none">EGT</property>.</para>
-
- <section id="drools_key_features">
- <title>Guvnor Tools Key Features</title>
-
- <para>The following table lists all valuable features of the <property moreinfo="none">Guvnor
- Tools</property>.</para>
- <table>
- <title>Key Functionality of Guvnor 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>Guvnor Repositories View</para>
- </entry>
- <entry>
- <para>The purpose of the view is to enable access to Guvnor repository
- resources in a standard tree format</para>
- </entry>
- <entry>
- <link linkend="guvnor_repositories_view">Guvnor Repositories View</link>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>Guvnor Connection Wizard</para>
- </entry>
- <entry>
- <para>The wizard helps to create a connection to a Guvnor
- repository.</para>
- </entry>
- <entry>
- <link linkend="connection_wizard">Guvnor Connection Wizard</link>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>Guvnor Resource History View</para>
- </entry>
- <entry>
- <para>This view shows revisions of specific resources available in the
- repository.</para>
- </entry>
- <entry>
- <link linkend="guvnor_history_view">Guvnor Resource History View</link>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>Resources from Guvnor Wizard</para>
- </entry>
- <entry>
- <para>The wizard helps to get local copies of Guvnor repository
- resources.</para>
- </entry>
- <entry>
- <link linkend="resources_from_guvnor">Importing Guvnor Repository
- Resources</link>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>A number of actions for working with files</para>
- </entry>
- <entry>
- <para>The Guvnor actions (available through the <emphasis>
- <property moreinfo="none">Guvnor</property>
- </emphasis> context menu on files) are provided for working with
- files, both those associated with Guvnor repository master copies
- and those not associated.</para>
- </entry>
- <entry>
- <link linkend="actions">Actions for Local Guvnor Resources</link>
- </entry>
- </row>
-
- </tbody>
- </tgroup>
- </table>
- </section>
-
- <section id="how_to_start">
- <title>How to start with Guvnor Tools</title>
-
- <para><property moreinfo="none">Guvnor Tools</property> is a part of the <property moreinfo="none">JBoss Tools</property>
- project. Thus to get started with <property moreinfo="none">Guvnor Tools</property>, you should have the following:</para>
-
- <itemizedlist>
- <listitem>
- <para>Eclipse 3.4.x with Jboss Tools bundle of Eclipse plugins installed. How to
- install JBoss Tools onto Eclipse you can find in the <ulink url="../../GettingStartedGuide/html_single/index.html#JBossToolsInstall">"JBoss Tools
- Installation"</ulink> section.</para>
- </listitem>
-
- <listitem>
- <para>JBoss Server 4.2 or higher with Guvnor repository deployed. Thus, you should
- download <ulink url="http://download.jboss.org/drools/release/5.0.0.25561.CR1/drools-5.0.0.CR1...">Guvnor CR1</ulink> and extract it to the deploy directory of the
- server.</para>
- </listitem>
- </itemizedlist>
-
- <para>Now refer to the <link linkend="functionality_overview">"Functionality
- Overview"</link> section to find out what you can do with Guvnor and
- Eclipse synchronisation tool.</para>
- </section>
-
- <section>
- <title>Other relevant resources on the topic</title>
-
- <itemizedlist>
- <listitem>
- <para>Guvnor <ulink url="http://www.jboss.org/community/wiki/Guvnor">wiki page</ulink></para>
- </listitem>
-
- <listitem>
- <para>Drools on <ulink url="http://www.jboss.org/drools/">JBoss.org</ulink></para>
- </listitem>
-
- <listitem>
- <para>
- <ulink url="http://www.jboss.org/tools/">JBoss Tools Home Page</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>
- <ulink url="http://docs.jboss.org/tools/">JBossTools/JBDS
- release documentation</ulink></para>
- </listitem>
- </itemizedlist>
-
- </section>
-</chapter>
-
-
-<chapter id="functionality_overview" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/drools/docs/guvnor_ref/en/modules/functionality_overview.xml" xreflabel="functionality_overview">
- <?dbhtml filename="functionality_overview.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Eclipse Guvnor Tools</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Functionality Overview</title>
-
- <para>This chapter will introduce you to the <property moreinfo="none">Guvnor Repository Exploring
- perspective</property> and give an overview on all functionality the <property moreinfo="none">Guvnor Tools</property> provides.</para>
-
- <section id="guvnor_perspective">
- <title>Guvnor Perspective</title>
-
- <para>The <property moreinfo="none">Guvnor Repository Exploring perspective</property> contains two views
- supplied by <property moreinfo="none">EGT</property> – <property moreinfo="none">Repository Explorer</property> and
- <property moreinfo="none">Version History</property>, that will be the center of most interaction
- with Guvnor, and Eclipse standard views such as <property moreinfo="none">Properties</property> and
- <property moreinfo="none">Resource Navigator</property> that are also useful.</para>
-
- <para>While each of these views can be opened and positioned independently within an Eclipse
- workbench, the <property moreinfo="none">Guvnor perspective</property> provides a convenient method of
- getting a suggested layout. In the Eclipse workbench menu, choose <emphasis>
- <property moreinfo="none">Window > Open Perspective > Other</property>
- </emphasis> to get the perspective list:</para>
-
- <figure float="0">
- <title>Enabling the Guvnor Repository Perspective</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/open_guvnor_perspectine.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>And then choose <emphasis>
- <property moreinfo="none">Guvnor Repository Exploring</property>.</emphasis> This opens the
- <property moreinfo="none">Guvnor perspective</property>.</para>
- </section>
-
- <section id="connection_wizard">
- <title>Guvnor Connection Wizard</title>
-
- <para>After opening the <property moreinfo="none">Guvnor perspective</property>, the first task is to make a
- connection to a Guvnor repository. This is handled by the <property moreinfo="none">Guvnor Connection
- wizard</property>. This wizard appears in a number of places within the
- <property moreinfo="none">EGT</property> (as detailed below), but in this section we will cover only
- the two most basic entry points.</para>
-
- <para>The <property moreinfo="none">Guvnor Connection wizard</property> can be started in the following
- ways:</para>
-
- <itemizedlist>
- <listitem>
- <para>using the Eclipse menu <emphasis>
- <property moreinfo="none">File > New > Other > Guvnor > Guvnor
- repository location</property>
- </emphasis></para>
-
- <figure float="0">
- <title>New Guvnor Repository Location</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/start_guvnor_connection1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
-
- <listitem>
- <para>in the <property moreinfo="none">Guvnor Repositories view</property> using the drop-down menu</para>
-
- <figure float="0">
- <title>Adding New Guvnor Connection</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/start_guvnor_connection2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
-
- <listitem>
- <para>using the menu button
- ( <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/guvnor_connection_button.png"></imagedata>
- </imageobject>
- </inlinemediaobject> )
- </para>
- </listitem>
- </itemizedlist>
-
- <para>Choosing either of these will start the <property moreinfo="none">Guvnor Connection
- wizard</property>.</para>
-
- <figure float="0" id="guvnor_connection_wizard">
- <title>Guvnor Connection Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/guvnor_connection_wizard.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Default values appear in the <emphasis>
- <property moreinfo="none">Location</property>,</emphasis>
- <emphasis>
- <property moreinfo="none">Port</property>,</emphasis> and <emphasis>
- <property moreinfo="none">Repository</property>
- </emphasis> fields (See the <link linkend="guvnor_preferences">“Guvnor Preferences”</link> section below for details about how to
- change these default values.) Of course, any of these fields can be edited by typing in
- the corresponding text box. Drag-and-drop or paste into the <emphasis>
- <property moreinfo="none">Location</property>
- </emphasis> field of a typical Guvnor repository URL such as:</para>
-
- <para>
- <emphasis>
- <property moreinfo="none">http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/webdav</property>
- </emphasis>
- </para>
-
- <para>Results in the URL being parsed into the respective fields as well. The authentication
- information (user name and password) can optionally be stored in the Eclipse
- workbench's key-ring file based on the selection of <emphasis>
- <property moreinfo="none">Save user name and password</property>.</emphasis></para>
-
- <note>
- <title>Note:</title>
- <para>If the authentication information is not stored in the key-ring, then the
- <property moreinfo="none">EGT</property> uses a session authentication, what means that the
- credentials supplied are used only for the lifetime of the Eclipse workbench
- instance.</para>
- </note>
-
- <para>If authentication information is not stored in the key-ring or the authentication
- information (key-ring or session) is not valid, the <property moreinfo="none">EGT</property> will prompt
- for authentication information when it has to access the Guvnor repository.</para>
-
- <para>If authentication fails, the <property moreinfo="none">EGT</property> will retry once and then issue
- an authentication failure error.</para>
-
- <tip>
- <title>Tip:</title>
- <para>If an authentication failure error occurs, you can retry the same operation and
- supply different authentication information.</para>
- </tip>
-
- <para>Note that the <property moreinfo="none">EGT</property> calls the Guvnor repository at various times,
- such as when determining if resource updates are available. Thus if you use session
- authentication, the authentication dialog will appear at different times during the
- Eclipse workbench session, depending on what actions you take. For ease of use, we
- recommend saving the authentication information in the Eclipse key-ring.</para>
-
- <note>
- <title>Note:</title>
- <para>The Eclipse key-ring file is distinct from key-ring files found in some platforms
- such as Mac OS X and many forms of Linux. Thus, sometimes if you access a Guvnor
- repository outside the <property moreinfo="none">EGT</property>, the key-ring files might become
- unsynchronized and you will be unexpectedly prompted for authentication in Eclipse.
- This is nuisance, but your usual credentials should apply in this case.</para>
- </note>
- </section>
-
- <section id="guvnor_repositories_view">
- <title>Guvnor Repositories View</title>
-
- <para>The <property moreinfo="none">Guvnor Repositories view</property> contains tree structures for Guvnor
- repository contents.</para>
-
- <figure float="0">
- <title>Guvnor Repositories View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/guvnor_repository.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>You can perform the following actions under the resources in the
- <property moreinfo="none">Guvnor Repositories view</property>:</para>
-
- <itemizedlist>
- <listitem>
- <para>create a new Guvnor repository connection. How to do this is describe above in the <link linkend="connection_wizard">"Guvnor Connection Wizard"</link> section.</para>
- </listitem>
-
- <listitem>
- <para>remove a Guvnor repository connection. Use the Delete button
- ( <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/delete_connection_button.png"></imagedata>
- </imageobject>
- </inlinemediaobject> ) in the tool-bar or the <emphasis>
- <property moreinfo="none">Delete</property></emphasis> option in the context menu to remove a repository connection.</para>
- </listitem>
-
- <listitem>
- <para>refresh Guvnor repository resorces. Use the <emphasis>
- <property moreinfo="none">Refresh</property></emphasis> context menu item to reload a tree content for the selected node.</para>
- </listitem>
-
- <listitem>
- <para>make use of "drill-into" functionality. It's represented by a number of tool-bar/context menu items such as <emphasis><property moreinfo="none">Go Home</property></emphasis>
- ( <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/go_home_button.png"></imagedata>
- </imageobject>
- </inlinemediaobject> ), <emphasis><property moreinfo="none">Go Back</property></emphasis>
- ( <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/go_back_button.png"></imagedata>
- </imageobject>
- </inlinemediaobject> ) and <emphasis>
- <property moreinfo="none">Go Into</property></emphasis>
- ( <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/go_into_button.png"></imagedata>
- </imageobject>
- </inlinemediaobject> ).</para>
- </listitem>
- </itemizedlist>
-
- <para>Drill-down is useful when working with deeply nested tree structures and when you wish to concentrate on only branch of the tree. For example, drilling into the <emphasis>
- <property moreinfo="none">"defaultPackage"</property></emphasis> node changes the tree view to:</para>
-
- <figure float="0">
- <title>Going Into the <emphasis>"defaultPackage"</emphasis></title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/go_into_defaultPackage.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Clicking on the Go Home button ( <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/go_home_button.png"></imagedata>
- </imageobject>
- </inlinemediaobject> ) or selecting <emphasis>
- <property moreinfo="none">Go Home</property></emphasis> in the context menu returns the tree to the top-level structure shown in the previous picture above.
- </para>
-
- <para>There are a number of operations that can be performed on Guvnor repository files. Selecting a file in
-the Guvnor repository causes the Eclipse <property moreinfo="none">Properties view</property> to update with details about that file:
-</para>
-
- <figure float="0">
- <title>Guvnor Repository Files Properties</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/repository_files_properties.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para></para>
- </section>
-
- <section id="local_copies">
- <title>Local Copies of Guvnor Files</title>
-
- <para>As mentioned in the <link linkend="introduction">"Introduction"</link>, the main purpose
- of the <property moreinfo="none">EGT</property> is to allow development using resources held in a Guvnor
- repository. There are two method of getting local copies of Guvnor repository
- resources:</para>
-
- <orderedlist continuation="restarts" inheritnum="ignore">
- <listitem>
- <para>Drag-and-drop from the <property moreinfo="none">Guvnor Repositories view</property></para>
- </listitem>
- <listitem>
- <para>Using the <link linkend="resources_from_guvnor">Import from Guvnor
- wizard</link>, as described further in this document</para>
- </listitem>
- </orderedlist>
-
- <para>When local copies of Guvnor repository files are created, the <property moreinfo="none">EGT</property>
- sets an association between the local copy and the master file in the repository. This
- information is kept in the (normally) hidden <emphasis>
- <property moreinfo="none">.guvnorinfo</property>
- </emphasis> folder in the local project and, like all metadata, should not be changed by
- end users.</para>
-
- <figure float="0">
- <title>.guvnorinfo metadata</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/guvnorinfo.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The association allows for operations such as update and commit in
- synchronization with the master copy held in the Guvnor repository.</para>
-
- <para>The <property moreinfo="none">EGT</property> decorates local resources associated with Guvnor
- repository master copies. This decoration appears in Eclipse views conforming to the
- Eclipse Common Navigator framework, such as the Eclipse <property moreinfo="none">Resource
- Navigator</property> and the Java <property moreinfo="none">Package Explorer</property>. On the image
- above you can see the <emphasis>
- <property moreinfo="none">Dummy rule.drl</property></emphasis> file with the decoration in the <property moreinfo="none">Resource Navigator</property>. The Guvnor icon decorator is on the top right of the file image, and the Guvnor
- revision details are appended to the file name. (The presence/location of these can be
- changed the <link linkend="resource_decoration_preferences">Guvnor
- Preferences</link>.)</para>
-
- <para>Here we see that, <emphasis><property moreinfo="none">Dummy role.drl</property></emphasis> is associated with a Guvnor repository
- resource and the local copy is based on revision 0, with a <code>02-10-2008, 4:21:53</code> date/time
- stamp. The file <emphasis><property moreinfo="none">Sample.drl</property>,</emphasis> however, is not associated with a Guvnor repository
- file. Further details about the association can be found in the standard Eclipse
- properties page, accessed via the <emphasis><property moreinfo="none">Properties</property></emphasis> option in the context menu:</para>
-
- <figure float="0">
- <title>Association Details</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/association_details.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The <property moreinfo="none">EGT</property> contributes a property page to the standard Eclipse
- properties dialog, the contents of which are shown above. It displays the specific Guvnor
- repository, the location within the repository, the version (date/time stamp) and
- the revision number.</para>
- </section>
-
- <section id="actions">
- <title>Actions for Local Guvnor Resources</title>
-
- <para>The <property moreinfo="none">EGT</property> provides a number of actions (available through the
- <emphasis><property moreinfo="none">Guvnor</property></emphasis> context menu on files) for working with files, both those associated with
- Guvnor repository master copies and those not associated. The actions are:</para>
-
- <itemizedlist>
- <listitem>
- <para>
- <link linkend="update_action">Update</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="add_action">Add</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="commit_action">Commit</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="show_history_action">Show History</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="compare_with_version">Compare with Version</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="switch_to_version">Switch to Version</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="delete_action">Delete</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="disconnect_action">Disconnect</link>
- </para>
- </listitem>
- </itemizedlist>
-
- <para>Each of these actions is described below.</para>
-
- <section id="update_action">
- <title>Update Action</title>
-
- <para>The <emphasis>
- <property moreinfo="none">Update</property>
- </emphasis> action is available for one or more Guvnor resources that are not in
- synchronization with the Guvnor repository master copies. These resources would not
- be in synchronization because either/both</para>
-
- <orderedlist continuation="restarts" inheritnum="ignore">
- <listitem><para>There are local changes to these
- resources</para></listitem>
- <listitem><para>The master copies have been changed in the Guvnor repository</para></listitem>
- </orderedlist>
-
- <para>Performing the <emphasis>
- <property moreinfo="none">Update</property>
- </emphasis> action replaces the local file contents with the current contents from
- the Guvnor repository master copies (equivalent to <emphasis>
- <link linkend="switch_to_version">Switch to version</link>
- </emphasis> for the latest version).</para>
- </section>
-
- <section id="add_action">
- <title>Add Action</title>
-
- <para>The <emphasis>
- <property moreinfo="none">Add</property>
- </emphasis> action is available for one or more local files that are not associated
- with a Guvnor repository master copy. Choosing the <emphasis>
- <property moreinfo="none">Add</property>
- </emphasis> action launches the <property moreinfo="none">Add to Guvnor wizard</property>:</para>
-
- <figure float="0">
- <title>Add to Guvnor Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/add_toGuvnor_wizard.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The first page of the wizard asks for the selection of the target Guvnor
- repository and gives the choice to create a new Guvnor repository connection (in
- which case the second page is the same as the <link linkend="guvnor_connection_wizard">Guvnor Connection wizard</link>). Once the target Guvnor repository is chosen,
- the wizard then asks for the folder location to add the selection files:</para>
-
- <figure float="0">
- <title>Selecting a Target Folder</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/select_target_folder.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Here the <emphasis>
- <property moreinfo="none">"defaultPackage"</property></emphasis> folder is selected as the destination
- location.</para>
-
- <note>
- <title>Note:</title>
- <para>Note that the <emphasis>
- <property moreinfo="none">"snapshot"</property></emphasis> folder in the Guvnor repository is read-only for
- <property moreinfo="none">EGT</property>, and hence not visible as a candidate location in
- this wizard. The Guvnor repository web administration tools must be used to add
- snapshot content.</para>
- </note>
-
- <para>Clicking on <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> adds the selected files to the Guvnor repository and creates an
- association between the local and Guvnor repository files.</para>
-
- <note>
- <title>Note:</title>
- <para>Note that the wizard will not allow for overwrite of existing Guvnor
- repository files. Another target location must be chosen.</para>
- </note>
- </section>
-
- <section id="commit_action">
- <title>Commit Action</title>
-
- <para>The <emphasis>
- <property moreinfo="none">Commit</property>
- </emphasis> action is enabled for one or more Guvnor repository associated files
- that have local changes. The <emphasis>
- <property moreinfo="none">Commit</property>
- </emphasis> action will write the local changes back to the associated Guvnor
- repository files and update the association for the new revision created.</para>
-
- <para>If a local change is based on an older revision of a file that is currently in the
- Guvnor repository (for example, someone else changed the same file), then the <emphasis>
- <property moreinfo="none">Commit</property>
- </emphasis> action will<figure float="0">
- <title>Add to Guvnor Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/add_toGuvnor_wizard.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure> ask whether you wish to overwrite the current version in the
- Guvnor repository with the local content. When such conflicts occur, however, you
- should use the Eclipse Guvnor version tools, along with Eclipse standard tools, to
- determine the differences and merge content based on the current version in the
- Guvnor repository.</para>
- </section>
-
- <section id="show_history_action">
- <title>Show History Action</title>
-
- <para>The <emphasis>
- <property moreinfo="none">Show History</property>
- </emphasis> action is enable for one Guvnor repository associated file and causes
- the <link linkend="guvnor_history_view">Guvnor Resource History view</link> to be
- populated with revision history for the selected file.</para>
- </section>
-
- <section id="compare_with_version">
- <title>Compare with Version Action</title>
-
- <para>The <emphasis>
- <property moreinfo="none">Compare with Version</property>
- </emphasis> action is enabled for one Guvnor repository associated file. This action
- first opens a wizard asking for the version for comparison (with the local file
- contents):</para>
-
- <figure float="0">
- <title>Compare with Version Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/compare_with_version.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Once the revision is selected, the action opens the Eclipse <property moreinfo="none">Compare
- editor</property> (read-only):</para>
- <figure float="0">
- <title>Eclipse Compare Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/compare_with_version2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>This editor uses Eclipse-standard comparison techniques to show the differences in
- the two versions. In cases where there are no differences, the editor will not open,
- rather a dialog saying that there are no differences will appear.</para>
- <figure float="0">
- <title>Alert Dialog</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/compare_with_version3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-
- <section id="switch_to_version">
- <title>Switch to Version Action</title>
-
- <para>The <emphasis>
- <property moreinfo="none">Switch to Version</property>
- </emphasis> action is enabled for one Guvnor repository associated file.</para>
- <para>First the <emphasis>
- <property moreinfo="none">Switch to Version</property>
- </emphasis> action prompts for selection of version:</para>
-
- <figure float="0">
- <title>Select Version Window</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/compare_with_version.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Once the version is selected, the <emphasis>
- <property moreinfo="none">Switch to Version</property>
- </emphasis> action replaces the local file contents with those from the revision
- selected.</para>
- </section>
-
- <section id="delete_action">
- <title>Delete Action</title>
-
- <para>The <emphasis>
- <property moreinfo="none">Delete</property>
- </emphasis> action is enabled for one or more Guvnor repository associated files.
- After confirmation via a dialog, the <emphasis>
- <property moreinfo="none">Delete</property>
- </emphasis> action removes the files in the Guvnor repository and deletes local
- metadata for the Guvnor repository association.</para>
-
- <figure float="0">
- <title>Comfirm Delete Dialog</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/confirm_delete.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-
- <section id="disconnect_action">
- <title>Disconnect Action</title>
-
- <para>The <emphasis>
- <property moreinfo="none">Disconnect</property>
- </emphasis> action is enabled for one or more Guvnor repository associated files,
- and removes local metadata for the Guvnor repository association.</para>
- </section>
- </section>
-
- <section id="guvnor_history_view">
- <title>Guvnor Resource History View</title>
-
- <para>The <property moreinfo="none">Guvnor Resource History view</property> should details about revision
- history for selected files, both local and those in Guvnor repositories. The initial
- state of this view is shown on the figure below.</para>
-
- <figure float="0">
- <title>Initial State of the Guvnor Resource History View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/resource_history_view.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The <property moreinfo="none">Guvnor Resource History view</property> is populated by <emphasis>
- <property moreinfo="none">Show History</property>
- </emphasis> actions in either the local <emphasis>
- <property moreinfo="none">Guvnor</property></emphasis> context menu or in the context menu for
- a Guvnor repository file in the <link linkend="guvnor_repositories_view">Guvnor
- Repositories view</link>. Once this action is performed, the <property moreinfo="none">Guvnor
- Resource History view</property> updates to show the revision history:</para>
-
- <figure float="0">
- <title>IGuvnor Resource History View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/resource_history_view2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Here we see that the file <emphasis>
- <property moreinfo="none">test.txt</property>
- </emphasis> has three revisions. Double clicking on a revision row (or the context menu <emphasis>
- <property moreinfo="none">Open (Read only)</property>)</emphasis> opens an Eclipse read-only editor
- with the revision contents.</para>
-
- <figure float="0">
- <title>Eclipse Read-only Editor with the Revision Contents</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/resource_history_view3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <note>
- <title>Note:</title>
- <para>You can also use the <emphasis>
- <property moreinfo="none">Save As...</property>
- </emphasis> option when a file is open in a read-only editor to save a local
- writable copy of the contents. Doing so, however, will not associate the file
- created with its Guvnor source.</para>
- </note>
-
- </section>
-
- <section id="resources_from_guvnor">
- <title>Importing Guvnor Repository Resources</title>
-
- <para>In addition to the single file drag-and-drop from the <property moreinfo="none">Guvnor Repositories
- view</property>, the <property moreinfo="none">EGT</property> also includes a wizard for copying one
- or more files from a Guvnor repository to the local workspace (and setting the
- association with the Guvnor repository). This wizard is available from the <emphasis>
- <property moreinfo="none">File > Import > Guvnor > Resource from
- Guvnor</property>
- </emphasis> and the <emphasis>
- <property moreinfo="none">File > New > Other > Guvnor > Resource from
- Guvnor</property>
- </emphasis> menu items.</para>
- <note>
- <title>Note:</title>
-
- <para>Note that the wizard is identical but appears in both locations to accommodate
- users who tend to view this functionality as being in either category.</para>
- </note>
-
- <para>The first page of the wizard asks for the selection of the source Guvnor repository
- and gives the choice to create a new Guvnor repository connection (in which case the
- second page is the same as the <link linkend="guvnor_connection_wizard">Guvnor Connection wizard</link>).</para>
-
- <figure float="0">
- <title>Resource from Guvnor Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/add_toGuvnor_wizard.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Once the source Guvnor repository is chosen, the wizard prompts for resource selection:</para>
-
- <figure float="0">
- <title>Resource Selection</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/resource_from_guvnor.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Finally, the target location in the local workspace should be chosen:</para>
- <figure float="0">
- <title>Choosing the Target Location</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/resource_from_guvnor2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On completion the wizard copies the selected files from the Guvnor repository to the local workspace.
- If a file with the same name already exists in the destination, the wizard uses the Eclipse standard
- "prompt for rename" dialog:</para>
-
- <figure float="0">
- <title>Prompt for Rename Dialog</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/functionality_overview/resource_from_guvnor3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-</chapter>
-
-
-<chapter id="guvnor_preferences" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/drools/docs/guvnor_ref/en/modules/guvnor_preferences.xml" xreflabel="guvnor_preferences">
- <?dbhtml filename="guvnor_preferences.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Eclipse Guvnor Tools</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Guvnor Preferences</title>
-
- <para>The <property moreinfo="none">EGT</property> provides a preference page in the <emphasis>
- <property moreinfo="none">Guvnor</property>
- </emphasis> category:</para>
-
- <figure float="0">
- <title>Resource Selection</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/guvnor_preferences/guvnor_preferences.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The preferences cover two categories:</para>
- <itemizedlist>
- <listitem><para>Guvnor repository connections</para></listitem>
-
- <listitem><para>Local Guvnor
- repository resource decorations.</para></listitem>
- </itemizedlist>
-
- <section id="repo_connection_preferences">
- <title>Guvnor Repository Connection Preferences</title>
- <para>There are two preferences that can be set for Guvnor repository connections, that are
- used when creating new connections:</para>
-
- <itemizedlist>
- <listitem>
- <para>The first is a default Guvnor repository URL template, which can make it
- easier to create multiple similar connections by simply changing part of the
- field, such as the host name.</para>
- </listitem>
- <listitem>
- <para>The second is whether saving of authentication information in the Eclipse
- platform key-ring should be enabled by default.</para>
- </listitem>
- </itemizedlist>
-
- <para>As with the Guvnor repository URL template, actually whether to save a specific
- instance of authentication information in the Eclipse platform key-ring can be
- determined when actually creating the connection. That is, both of these preferences are
- simply convenience values set to reasonable defaults.</para>
- </section>
-
- <section id="resource_decoration_preferences">
- <title>Local Guvnor Repository Resource Decoration Preferences</title>
-
- <para>The second category of preferences provided by the <property moreinfo="none">EGT</property> deals with how the decoration of
- local resources associated with Guvnor repository resources is presented. Since the
- Guvnor repository is not a substitute for a SCM, and since SCM tools in Eclipse tend to
- decorate local resources, it is useful to be able to control just how the <property moreinfo="none">EGT</property> decorate
- its local resources to avoid messy conflicts with SCM packages.</para>
-
- <para>In the <emphasis>
- <property moreinfo="none">File Decoration</property></emphasis>
- section of the preference page, you can choose the location (Top right, Top left, Bottom right,
- Bottom left) of the decoration icon, or you can choose not to display it. In
- the <emphasis>
- <property moreinfo="none">Text</property></emphasis> section, you can format the Guvnor metadata that is appended to the file
- names:</para>
- <itemizedlist>
- <listitem>
- <para>Whether to show an indicator (>) when the local file has changes not committed back to the
- Guvnor repository</para>
- </listitem>
- <listitem>
- <para>Whether to show the revision number</para>
- </listitem>
- <listitem>
- <para>Whether to show the date/time stamp</para>
- </listitem>
- </itemizedlist>
-
- <para>Any changes to these preferences take effect immediately upon clicking the <emphasis>
- <property moreinfo="none">Apply</property></emphasis> and then <emphasis>
- <property moreinfo="none">Ok</property></emphasis> buttons.</para>
- </section>
-</chapter>
-
-
-<chapter id="conclusion" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/drools/docs/guvnor_ref/en/modules/conclusion.xml" xreflabel="conclusion">
- <?dbhtml filename="conclusion.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Eclipse Guvnor Tools</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Conclusion</title>
-
- <para>As stated at the beginning of this document, the key goal of the <property moreinfo="none">EGT</property>
- is to provide a way of interacting with Guvnor repository resources in a local Eclipse
- workspace. While clearly there is a lot more that could be done, and no doubt there will be
- aspects of the current tooling that require revision going forward, we feel that the current
- state of the <property moreinfo="none">EGT</property> is sufficient for the major use cases.</para>
-
- <para>If you have some questions, comments or suggestions on the topic, please feel free to ask in the
- <ulink url="http://www.jboss.org/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>Eclipse Guvnor 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>John</firstname><surname>Graham</surname><email>jgraham(a)redhat.com</email></author>
+ <author><firstname>Olga</firstname><surname>Chikvina</surname></author>
+
+ <copyright>
+ <year>2009</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2010</diffmk:wrapper></year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo>
+ Version: 5.1.0.trunk
+ </releaseinfo>
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/guvnor_tools_ref_gui...">PDF version</ulink>
+ </para>
+ </abstract>
+
+ </bookinfo>
+
+
+ <toc></toc>
+
+
+<chapter id="introduction" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/drools/docs/guvnor_ref/en/modules/introduction.xml" xreflabel="introduction">
+ <title>Introduction</title>
+
+ <para>The purpose of this document is to describe briefly the functionality present in the
+ <property moreinfo="none">Eclipse Guvnor Tools</property> (EGT) for Drools 5. While not intended as a
+ comprehensive reference, there should be enough detail included for early adopters using
+ these tools.</para>
+
+ <para>The <property moreinfo="none">Guvnor repository</property> is not intended as a Source Code Management
+ (SCM) solution, and the <property moreinfo="none">EGT</property> are not intended to be Eclipse “team
+ provider” extensions or replacements. Rather, the Guvnor repository is a location where
+ certain artifacts (such as rules and SOA policy definitions) are controlled (“governed”) by
+ policies defined by the deployment environment. The purpose of the <property moreinfo="none">EGT</property>
+ is then to enable access to resources held by the Guvnor repository, so
+ they can be used in development. Thus, limited capabilities for reading, writing, adding,
+ and removing Guvnor repository resources are provided in the
+ <property moreinfo="none">EGT</property>.</para>
+
+ <section id="drools_key_features">
+ <title>Guvnor Tools Key Features</title>
+
+ <para>The following table lists all valuable features of the <property moreinfo="none">Guvnor
+ Tools</property>.</para>
+ <table>
+ <title>Key Functionality of Guvnor 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>Guvnor Repositories View</para>
+ </entry>
+ <entry>
+ <para>The purpose of the view is to enable access to Guvnor repository
+ resources in a standard tree format</para>
+ </entry>
+ <entry>
+ <link linkend="guvnor_repositories_view">Guvnor Repositories View</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>Guvnor Connection Wizard</para>
+ </entry>
+ <entry>
+ <para>The wizard helps to create a connection to a Guvnor
+ repository.</para>
+ </entry>
+ <entry>
+ <link linkend="connection_wizard">Guvnor Connection Wizard</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>Guvnor Resource History View</para>
+ </entry>
+ <entry>
+ <para>This view shows revisions of specific resources available in the
+ repository.</para>
+ </entry>
+ <entry>
+ <link linkend="guvnor_history_view">Guvnor Resource History View</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>Resources from Guvnor Wizard</para>
+ </entry>
+ <entry>
+ <para>The wizard helps to get local copies of Guvnor repository
+ resources.</para>
+ </entry>
+ <entry>
+ <link linkend="resources_from_guvnor">Importing Guvnor Repository
+ Resources</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>A number of actions for working with files</para>
+ </entry>
+ <entry>
+ <para>The Guvnor actions (available through the <emphasis>
+ <property moreinfo="none">Guvnor</property>
+ </emphasis> context menu on files) are provided for working with
+ files, both those associated with Guvnor repository master copies
+ and those not associated.</para>
+ </entry>
+ <entry>
+ <link linkend="actions">Actions for Local Guvnor Resources</link>
+ </entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+
+ <section id="how_to_start">
+ <title>How to start with Guvnor Tools</title>
+
+ <para><property moreinfo="none">Guvnor Tools</property> is a part of the <property moreinfo="none">JBoss Tools</property>
+ project. Thus to get started with <property moreinfo="none">Guvnor Tools</property>, you should have the following:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Eclipse 3.4.x with Jboss Tools bundle of Eclipse plugins installed. How to
+ install JBoss Tools onto Eclipse you can find in the <ulink url="../../GettingStartedGuide/html_single/index.html#JBossToolsInstall">"JBoss Tools
+ Installation"</ulink> section.</para>
+ </listitem>
+
+ <listitem>
+ <para>JBoss Server 4.2 or higher with Guvnor repository deployed. Thus, you should
+ download <ulink url="http://download.jboss.org/drools/release/5.0.0.25561.CR1/drools-5.0.0.CR1...">Guvnor CR1</ulink> and extract it to the deploy directory of the
+ server.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Now refer to the <link linkend="functionality_overview">"Functionality
+ Overview"</link> section to find out what you can do with Guvnor and
+ Eclipse synchronisation tool.</para>
+ </section>
+
+ <section>
+ <title>Other relevant resources on the topic</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>Guvnor <ulink url="http://www.jboss.org/community/wiki/Guvnor">wiki page</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>Drools on <ulink url="http://www.jboss.org/drools/">JBoss.org</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <ulink url="http://www.jboss.org/tools/">JBoss Tools Home Page</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>
+ <ulink url="http://docs.jboss.org/tools/">JBossTools/JBDS
+ release documentation</ulink></para>
+ </listitem>
+ </itemizedlist>
+
+ </section>
+</chapter>
+
+
+<chapter id="functionality_overview" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/drools/docs/guvnor_ref/en/modules/functionality_overview.xml" xreflabel="functionality_overview">
+ <?dbhtml filename="functionality_overview.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Eclipse Guvnor Tools</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Functionality Overview</title>
+
+ <para>This chapter will introduce you to the <property moreinfo="none">Guvnor Repository Exploring
+ perspective</property> and give an overview on all functionality the <property moreinfo="none">Guvnor Tools</property> provides.</para>
+
+ <section id="guvnor_perspective">
+ <title>Guvnor Perspective</title>
+
+ <para>The <property moreinfo="none">Guvnor Repository Exploring perspective</property> contains two views
+ supplied by <property moreinfo="none">EGT</property> – <property moreinfo="none">Repository Explorer</property> and
+ <property moreinfo="none">Version History</property>, that will be the center of most interaction
+ with Guvnor, and Eclipse standard views such as <property moreinfo="none">Properties</property> and
+ <property moreinfo="none">Resource Navigator</property> that are also useful.</para>
+
+ <para>While each of these views can be opened and positioned independently within an Eclipse
+ workbench, the <property moreinfo="none">Guvnor perspective</property> provides a convenient method of
+ getting a suggested layout. In the Eclipse workbench menu, choose <emphasis>
+ <property moreinfo="none">Window > Open Perspective > Other</property>
+ </emphasis> to get the perspective list:</para>
+
+ <figure float="0">
+ <title>Enabling the Guvnor Repository Perspective</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/open_guvnor_perspectine.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>And then choose <emphasis>
+ <property moreinfo="none">Guvnor Repository Exploring</property>.</emphasis> This opens the
+ <property moreinfo="none">Guvnor perspective</property>.</para>
+ </section>
+
+ <section id="connection_wizard">
+ <title>Guvnor Connection Wizard</title>
+
+ <para>After opening the <property moreinfo="none">Guvnor perspective</property>, the first task is to make a
+ connection to a Guvnor repository. This is handled by the <property moreinfo="none">Guvnor Connection
+ wizard</property>. This wizard appears in a number of places within the
+ <property moreinfo="none">EGT</property> (as detailed below), but in this section we will cover only
+ the two most basic entry points.</para>
+
+ <para>The <property moreinfo="none">Guvnor Connection wizard</property> can be started in the following
+ ways:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>using the Eclipse menu <emphasis>
+ <property moreinfo="none">File > New > Other > Guvnor > Guvnor
+ repository location</property>
+ </emphasis></para>
+
+ <figure float="0">
+ <title>New Guvnor Repository Location</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/start_guvnor_connection1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+
+ <listitem>
+ <para>in the <property moreinfo="none">Guvnor Repositories view</property> using the drop-down menu</para>
+
+ <figure float="0">
+ <title>Adding New Guvnor Connection</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/start_guvnor_connection2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+
+ <listitem>
+ <para>using the menu button
+ ( <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/guvnor_connection_button.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject> )
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Choosing either of these will start the <property moreinfo="none">Guvnor Connection
+ wizard</property>.</para>
+
+ <figure float="0" id="guvnor_connection_wizard">
+ <title>Guvnor Connection Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/guvnor_connection_wizard.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Default values appear in the <emphasis>
+ <property moreinfo="none">Location</property>,</emphasis>
+ <emphasis>
+ <property moreinfo="none">Port</property>,</emphasis> and <emphasis>
+ <property moreinfo="none">Repository</property>
+ </emphasis> fields (See the <link linkend="guvnor_preferences">“Guvnor Preferences”</link> section below for details about how to
+ change these default values.) Of course, any of these fields can be edited by typing in
+ the corresponding text box. Drag-and-drop or paste into the <emphasis>
+ <property moreinfo="none">Location</property>
+ </emphasis> field of a typical Guvnor repository URL such as:</para>
+
+ <para>
+ <emphasis>
+ <property moreinfo="none">http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/webdav</property>
+ </emphasis>
+ </para>
+
+ <para>Results in the URL being parsed into the respective fields as well. The authentication
+ information (user name and password) can optionally be stored in the Eclipse
+ workbench's key-ring file based on the selection of <emphasis>
+ <property moreinfo="none">Save user name and password</property>.</emphasis></para>
+
+ <note>
+ <title>Note:</title>
+ <para>If the authentication information is not stored in the key-ring, then the
+ <property moreinfo="none">EGT</property> uses a session authentication, what means that the
+ credentials supplied are used only for the lifetime of the Eclipse workbench
+ instance.</para>
+ </note>
+
+ <para>If authentication information is not stored in the key-ring or the authentication
+ information (key-ring or session) is not valid, the <property moreinfo="none">EGT</property> will prompt
+ for authentication information when it has to access the Guvnor repository.</para>
+
+ <para>If authentication fails, the <property moreinfo="none">EGT</property> will retry once and then issue
+ an authentication failure error.</para>
+
+ <tip>
+ <title>Tip:</title>
+ <para>If an authentication failure error occurs, you can retry the same operation and
+ supply different authentication information.</para>
+ </tip>
+
+ <para>Note that the <property moreinfo="none">EGT</property> calls the Guvnor repository at various times,
+ such as when determining if resource updates are available. Thus if you use session
+ authentication, the authentication dialog will appear at different times during the
+ Eclipse workbench session, depending on what actions you take. For ease of use, we
+ recommend saving the authentication information in the Eclipse key-ring.</para>
+
+ <note>
+ <title>Note:</title>
+ <para>The Eclipse key-ring file is distinct from key-ring files found in some platforms
+ such as Mac OS X and many forms of Linux. Thus, sometimes if you access a Guvnor
+ repository outside the <property moreinfo="none">EGT</property>, the key-ring files might become
+ unsynchronized and you will be unexpectedly prompted for authentication in Eclipse.
+ This is nuisance, but your usual credentials should apply in this case.</para>
+ </note>
+ </section>
+
+ <section id="guvnor_repositories_view">
+ <title>Guvnor Repositories View</title>
+
+ <para>The <property moreinfo="none">Guvnor Repositories view</property> contains tree structures for Guvnor
+ repository contents.</para>
+
+ <figure float="0">
+ <title>Guvnor Repositories View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/guvnor_repository.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>You can perform the following actions under the resources in the
+ <property moreinfo="none">Guvnor Repositories view</property>:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>create a new Guvnor repository connection. How to do this is describe above in the <link linkend="connection_wizard">"Guvnor Connection Wizard"</link> section.</para>
+ </listitem>
+
+ <listitem>
+ <para>remove a Guvnor repository connection. Use the Delete button
+ ( <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/delete_connection_button.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject> ) in the tool-bar or the <emphasis>
+ <property moreinfo="none">Delete</property></emphasis> option in the context menu to remove a repository connection.</para>
+ </listitem>
+
+ <listitem>
+ <para>refresh Guvnor repository resorces. Use the <emphasis>
+ <property moreinfo="none">Refresh</property></emphasis> context menu item to reload a tree content for the selected node.</para>
+ </listitem>
+
+ <listitem>
+ <para>make use of "drill-into" functionality. It's represented by a number of tool-bar/context menu items such as <emphasis><property moreinfo="none">Go Home</property></emphasis>
+ ( <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/go_home_button.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject> ), <emphasis><property moreinfo="none">Go Back</property></emphasis>
+ ( <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/go_back_button.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject> ) and <emphasis>
+ <property moreinfo="none">Go Into</property></emphasis>
+ ( <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/go_into_button.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject> ).</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Drill-down is useful when working with deeply nested tree structures and when you wish to concentrate on only branch of the tree. For example, drilling into the <emphasis>
+ <property moreinfo="none">"defaultPackage"</property></emphasis> node changes the tree view to:</para>
+
+ <figure float="0">
+ <title>Going Into the <emphasis>"defaultPackage"</emphasis></title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/go_into_defaultPackage.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Clicking on the Go Home button ( <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/go_home_button.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject> ) or selecting <emphasis>
+ <property moreinfo="none">Go Home</property></emphasis> in the context menu returns the tree to the top-level structure shown in the previous picture above.
+ </para>
+
+ <para>There are a number of operations that can be performed on Guvnor repository files. Selecting a file in
+the Guvnor repository causes the Eclipse <property moreinfo="none">Properties view</property> to update with details about that file:
+</para>
+
+ <figure float="0">
+ <title>Guvnor Repository Files Properties</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/repository_files_properties.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para></para>
+ </section>
+
+ <section id="local_copies">
+ <title>Local Copies of Guvnor Files</title>
+
+ <para>As mentioned in the <link linkend="introduction">"Introduction"</link>, the main purpose
+ of the <property moreinfo="none">EGT</property> is to allow development using resources held in a Guvnor
+ repository. There are two method of getting local copies of Guvnor repository
+ resources:</para>
+
+ <orderedlist continuation="restarts" inheritnum="ignore">
+ <listitem>
+ <para>Drag-and-drop from the <property moreinfo="none">Guvnor Repositories view</property></para>
+ </listitem>
+ <listitem>
+ <para>Using the <link linkend="resources_from_guvnor">Import from Guvnor
+ wizard</link>, as described further in this document</para>
+ </listitem>
+ </orderedlist>
+
+ <para>When local copies of Guvnor repository files are created, the <property moreinfo="none">EGT</property>
+ sets an association between the local copy and the master file in the repository. This
+ information is kept in the (normally) hidden <emphasis>
+ <property moreinfo="none">.guvnorinfo</property>
+ </emphasis> folder in the local project and, like all metadata, should not be changed by
+ end users.</para>
+
+ <figure float="0">
+ <title>.guvnorinfo metadata</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/guvnorinfo.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The association allows for operations such as update and commit in
+ synchronization with the master copy held in the Guvnor repository.</para>
+
+ <para>The <property moreinfo="none">EGT</property> decorates local resources associated with Guvnor
+ repository master copies. This decoration appears in Eclipse views conforming to the
+ Eclipse Common Navigator framework, such as the Eclipse <property moreinfo="none">Resource
+ Navigator</property> and the Java <property moreinfo="none">Package Explorer</property>. On the image
+ above you can see the <emphasis>
+ <property moreinfo="none">Dummy rule.drl</property></emphasis> file with the decoration in the <property moreinfo="none">Resource Navigator</property>. The Guvnor icon decorator is on the top right of the file image, and the Guvnor
+ revision details are appended to the file name. (The presence/location of these can be
+ changed the <link linkend="resource_decoration_preferences">Guvnor
+ Preferences</link>.)</para>
+
+ <para>Here we see that, <emphasis><property moreinfo="none">Dummy role.drl</property></emphasis> is associated with a Guvnor repository
+ resource and the local copy is based on revision 0, with a <code>02-10-2008, 4:21:53</code> date/time
+ stamp. The file <emphasis><property moreinfo="none">Sample.drl</property>,</emphasis> however, is not associated with a Guvnor repository
+ file. Further details about the association can be found in the standard Eclipse
+ properties page, accessed via the <emphasis><property moreinfo="none">Properties</property></emphasis> option in the context menu:</para>
+
+ <figure float="0">
+ <title>Association Details</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/association_details.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The <property moreinfo="none">EGT</property> contributes a property page to the standard Eclipse
+ properties dialog, the contents of which are shown above. It displays the specific Guvnor
+ repository, the location within the repository, the version (date/time stamp) and
+ the revision number.</para>
+ </section>
+
+ <section id="actions">
+ <title>Actions for Local Guvnor Resources</title>
+
+ <para>The <property moreinfo="none">EGT</property> provides a number of actions (available through the
+ <emphasis><property moreinfo="none">Guvnor</property></emphasis> context menu on files) for working with files, both those associated with
+ Guvnor repository master copies and those not associated. The actions are:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <link linkend="update_action">Update</link>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="add_action">Add</link>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="commit_action">Commit</link>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="show_history_action">Show History</link>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="compare_with_version">Compare with Version</link>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="switch_to_version">Switch to Version</link>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="delete_action">Delete</link>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="disconnect_action">Disconnect</link>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Each of these actions is described below.</para>
+
+ <section id="update_action">
+ <title>Update Action</title>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Update</property>
+ </emphasis> action is available for one or more Guvnor resources that are not in
+ synchronization with the Guvnor repository master copies. These resources would not
+ be in synchronization because either/both</para>
+
+ <orderedlist continuation="restarts" inheritnum="ignore">
+ <listitem><para>There are local changes to these
+ resources</para></listitem>
+ <listitem><para>The master copies have been changed in the Guvnor repository</para></listitem>
+ </orderedlist>
+
+ <para>Performing the <emphasis>
+ <property moreinfo="none">Update</property>
+ </emphasis> action replaces the local file contents with the current contents from
+ the Guvnor repository master copies (equivalent to <emphasis>
+ <link linkend="switch_to_version">Switch to version</link>
+ </emphasis> for the latest version).</para>
+ </section>
+
+ <section id="add_action">
+ <title>Add Action</title>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Add</property>
+ </emphasis> action is available for one or more local files that are not associated
+ with a Guvnor repository master copy. Choosing the <emphasis>
+ <property moreinfo="none">Add</property>
+ </emphasis> action launches the <property moreinfo="none">Add to Guvnor wizard</property>:</para>
+
+ <figure float="0">
+ <title>Add to Guvnor Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/add_toGuvnor_wizard.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The first page of the wizard asks for the selection of the target Guvnor
+ repository and gives the choice to create a new Guvnor repository connection (in
+ which case the second page is the same as the <link linkend="guvnor_connection_wizard">Guvnor Connection wizard</link>). Once the target Guvnor repository is chosen,
+ the wizard then asks for the folder location to add the selection files:</para>
+
+ <figure float="0">
+ <title>Selecting a Target Folder</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/select_target_folder.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Here the <emphasis>
+ <property moreinfo="none">"defaultPackage"</property></emphasis> folder is selected as the destination
+ location.</para>
+
+ <note>
+ <title>Note:</title>
+ <para>Note that the <emphasis>
+ <property moreinfo="none">"snapshot"</property></emphasis> folder in the Guvnor repository is read-only for
+ <property moreinfo="none">EGT</property>, and hence not visible as a candidate location in
+ this wizard. The Guvnor repository web administration tools must be used to add
+ snapshot content.</para>
+ </note>
+
+ <para>Clicking on <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> adds the selected files to the Guvnor repository and creates an
+ association between the local and Guvnor repository files.</para>
+
+ <note>
+ <title>Note:</title>
+ <para>Note that the wizard will not allow for overwrite of existing Guvnor
+ repository files. Another target location must be chosen.</para>
+ </note>
+ </section>
+
+ <section id="commit_action">
+ <title>Commit Action</title>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Commit</property>
+ </emphasis> action is enabled for one or more Guvnor repository associated files
+ that have local changes. The <emphasis>
+ <property moreinfo="none">Commit</property>
+ </emphasis> action will write the local changes back to the associated Guvnor
+ repository files and update the association for the new revision created.</para>
+
+ <para>If a local change is based on an older revision of a file that is currently in the
+ Guvnor repository (for example, someone else changed the same file), then the <emphasis>
+ <property moreinfo="none">Commit</property>
+ </emphasis> action will<figure float="0">
+ <title>Add to Guvnor Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/add_toGuvnor_wizard.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure> ask whether you wish to overwrite the current version in the
+ Guvnor repository with the local content. When such conflicts occur, however, you
+ should use the Eclipse Guvnor version tools, along with Eclipse standard tools, to
+ determine the differences and merge content based on the current version in the
+ Guvnor repository.</para>
+ </section>
+
+ <section id="show_history_action">
+ <title>Show History Action</title>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Show History</property>
+ </emphasis> action is enable for one Guvnor repository associated file and causes
+ the <link linkend="guvnor_history_view">Guvnor Resource History view</link> to be
+ populated with revision history for the selected file.</para>
+ </section>
+
+ <section id="compare_with_version">
+ <title>Compare with Version Action</title>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Compare with Version</property>
+ </emphasis> action is enabled for one Guvnor repository associated file. This action
+ first opens a wizard asking for the version for comparison (with the local file
+ contents):</para>
+
+ <figure float="0">
+ <title>Compare with Version Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/compare_with_version.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Once the revision is selected, the action opens the Eclipse <property moreinfo="none">Compare
+ editor</property> (read-only):</para>
+ <figure float="0">
+ <title>Eclipse Compare Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/compare_with_version2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>This editor uses Eclipse-standard comparison techniques to show the differences in
+ the two versions. In cases where there are no differences, the editor will not open,
+ rather a dialog saying that there are no differences will appear.</para>
+ <figure float="0">
+ <title>Alert Dialog</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/compare_with_version3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section id="switch_to_version">
+ <title>Switch to Version Action</title>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Switch to Version</property>
+ </emphasis> action is enabled for one Guvnor repository associated file.</para>
+ <para>First the <emphasis>
+ <property moreinfo="none">Switch to Version</property>
+ </emphasis> action prompts for selection of version:</para>
+
+ <figure float="0">
+ <title>Select Version Window</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/compare_with_version.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Once the version is selected, the <emphasis>
+ <property moreinfo="none">Switch to Version</property>
+ </emphasis> action replaces the local file contents with those from the revision
+ selected.</para>
+ </section>
+
+ <section id="delete_action">
+ <title>Delete Action</title>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Delete</property>
+ </emphasis> action is enabled for one or more Guvnor repository associated files.
+ After confirmation via a dialog, the <emphasis>
+ <property moreinfo="none">Delete</property>
+ </emphasis> action removes the files in the Guvnor repository and deletes local
+ metadata for the Guvnor repository association.</para>
+
+ <figure float="0">
+ <title>Comfirm Delete Dialog</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/confirm_delete.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section id="disconnect_action">
+ <title>Disconnect Action</title>
+
+ <para>The <emphasis>
+ <property moreinfo="none">Disconnect</property>
+ </emphasis> action is enabled for one or more Guvnor repository associated files,
+ and removes local metadata for the Guvnor repository association.</para>
+ </section>
+ </section>
+
+ <section id="guvnor_history_view">
+ <title>Guvnor Resource History View</title>
+
+ <para>The <property moreinfo="none">Guvnor Resource History view</property> should details about revision
+ history for selected files, both local and those in Guvnor repositories. The initial
+ state of this view is shown on the figure below.</para>
+
+ <figure float="0">
+ <title>Initial State of the Guvnor Resource History View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/resource_history_view.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The <property moreinfo="none">Guvnor Resource History view</property> is populated by <emphasis>
+ <property moreinfo="none">Show History</property>
+ </emphasis> actions in either the local <emphasis>
+ <property moreinfo="none">Guvnor</property></emphasis> context menu or in the context menu for
+ a Guvnor repository file in the <link linkend="guvnor_repositories_view">Guvnor
+ Repositories view</link>. Once this action is performed, the <property moreinfo="none">Guvnor
+ Resource History view</property> updates to show the revision history:</para>
+
+ <figure float="0">
+ <title>IGuvnor Resource History View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/resource_history_view2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Here we see that the file <emphasis>
+ <property moreinfo="none">test.txt</property>
+ </emphasis> has three revisions. Double clicking on a revision row (or the context menu <emphasis>
+ <property moreinfo="none">Open (Read only)</property>)</emphasis> opens an Eclipse read-only editor
+ with the revision contents.</para>
+
+ <figure float="0">
+ <title>Eclipse Read-only Editor with the Revision Contents</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/resource_history_view3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <note>
+ <title>Note:</title>
+ <para>You can also use the <emphasis>
+ <property moreinfo="none">Save As...</property>
+ </emphasis> option when a file is open in a read-only editor to save a local
+ writable copy of the contents. Doing so, however, will not associate the file
+ created with its Guvnor source.</para>
+ </note>
+
+ </section>
+
+ <section id="resources_from_guvnor">
+ <title>Importing Guvnor Repository Resources</title>
+
+ <para>In addition to the single file drag-and-drop from the <property moreinfo="none">Guvnor Repositories
+ view</property>, the <property moreinfo="none">EGT</property> also includes a wizard for copying one
+ or more files from a Guvnor repository to the local workspace (and setting the
+ association with the Guvnor repository). This wizard is available from the <emphasis>
+ <property moreinfo="none">File > Import > Guvnor > Resource from
+ Guvnor</property>
+ </emphasis> and the <emphasis>
+ <property moreinfo="none">File > New > Other > Guvnor > Resource from
+ Guvnor</property>
+ </emphasis> menu items.</para>
+ <note>
+ <title>Note:</title>
+
+ <para>Note that the wizard is identical but appears in both locations to accommodate
+ users who tend to view this functionality as being in either category.</para>
+ </note>
+
+ <para>The first page of the wizard asks for the selection of the source Guvnor repository
+ and gives the choice to create a new Guvnor repository connection (in which case the
+ second page is the same as the <link linkend="guvnor_connection_wizard">Guvnor Connection wizard</link>).</para>
+
+ <figure float="0">
+ <title>Resource from Guvnor Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/add_toGuvnor_wizard.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Once the source Guvnor repository is chosen, the wizard prompts for resource selection:</para>
+
+ <figure float="0">
+ <title>Resource Selection</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/resource_from_guvnor.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Finally, the target location in the local workspace should be chosen:</para>
+ <figure float="0">
+ <title>Choosing the Target Location</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/resource_from_guvnor2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On completion the wizard copies the selected files from the Guvnor repository to the local workspace.
+ If a file with the same name already exists in the destination, the wizard uses the Eclipse standard
+ "prompt for rename" dialog:</para>
+
+ <figure float="0">
+ <title>Prompt for Rename Dialog</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/functionality_overview/resource_from_guvnor3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+</chapter>
+
+
+<chapter id="guvnor_preferences" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/drools/docs/guvnor_ref/en/modules/guvnor_preferences.xml" xreflabel="guvnor_preferences">
+ <?dbhtml filename="guvnor_preferences.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Eclipse Guvnor Tools</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Guvnor Preferences</title>
+
+ <para>The <property moreinfo="none">EGT</property> provides a preference page in the <emphasis>
+ <property moreinfo="none">Guvnor</property>
+ </emphasis> category:</para>
+
+ <figure float="0">
+ <title>Resource Selection</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/guvnor_preferences/guvnor_preferences.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The preferences cover two categories:</para>
+ <itemizedlist>
+ <listitem><para>Guvnor repository connections</para></listitem>
+
+ <listitem><para>Local Guvnor
+ repository resource decorations.</para></listitem>
+ </itemizedlist>
+
+ <section id="repo_connection_preferences">
+ <title>Guvnor Repository Connection Preferences</title>
+ <para>There are two preferences that can be set for Guvnor repository connections, that are
+ used when creating new connections:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>The first is a default Guvnor repository URL template, which can make it
+ easier to create multiple similar connections by simply changing part of the
+ field, such as the host name.</para>
+ </listitem>
+ <listitem>
+ <para>The second is whether saving of authentication information in the Eclipse
+ platform key-ring should be enabled by default.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>As with the Guvnor repository URL template, actually whether to save a specific
+ instance of authentication information in the Eclipse platform key-ring can be
+ determined when actually creating the connection. That is, both of these preferences are
+ simply convenience values set to reasonable defaults.</para>
+ </section>
+
+ <section id="resource_decoration_preferences">
+ <title>Local Guvnor Repository Resource Decoration Preferences</title>
+
+ <para>The second category of preferences provided by the <property moreinfo="none">EGT</property> deals with how the decoration of
+ local resources associated with Guvnor repository resources is presented. Since the
+ Guvnor repository is not a substitute for a SCM, and since SCM tools in Eclipse tend to
+ decorate local resources, it is useful to be able to control just how the <property moreinfo="none">EGT</property> decorate
+ its local resources to avoid messy conflicts with SCM packages.</para>
+
+ <para>In the <emphasis>
+ <property moreinfo="none">File Decoration</property></emphasis>
+ section of the preference page, you can choose the location (Top right, Top left, Bottom right,
+ Bottom left) of the decoration icon, or you can choose not to display it. In
+ the <emphasis>
+ <property moreinfo="none">Text</property></emphasis> section, you can format the Guvnor metadata that is appended to the file
+ names:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Whether to show an indicator (>) when the local file has changes not committed back to the
+ Guvnor repository</para>
+ </listitem>
+ <listitem>
+ <para>Whether to show the revision number</para>
+ </listitem>
+ <listitem>
+ <para>Whether to show the date/time stamp</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Any changes to these preferences take effect immediately upon clicking the <emphasis>
+ <property moreinfo="none">Apply</property></emphasis> and then <emphasis>
+ <property moreinfo="none">Ok</property></emphasis> buttons.</para>
+ </section>
+</chapter>
+
+
+<chapter id="conclusion" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/drools/docs/guvnor_ref/en/modules/conclusion.xml" xreflabel="conclusion">
+ <?dbhtml filename="conclusion.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Eclipse Guvnor Tools</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Conclusion</title>
+
+ <para>As stated at the beginning of this document, the key goal of the <property moreinfo="none">EGT</property>
+ is to provide a way of interacting with Guvnor repository resources in a local Eclipse
+ workspace. While clearly there is a lot more that could be done, and no doubt there will be
+ aspects of the current tooling that require revision going forward, we feel that the current
+ state of the <property moreinfo="none">EGT</property> is sufficient for the major use cases.</para>
+
+ <para>If you have some questions, comments or suggestions on the topic, please feel free to ask in the
+ <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">Jboss Tools Forum</ulink>.</para>
+</chapter>
+
+
+</book>
Modified: trunk/drools/docs/reference/en/master_output.xml
===================================================================
--- trunk/drools/docs/reference/en/master_output.xml 2010-02-17 19:58:04 UTC (rev 20339)
+++ trunk/drools/docs/reference/en/master_output.xml 2010-02-17 20:35:12 UTC (rev 20340)
@@ -21,761 +21,1107 @@
<!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>Drools 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>
-
- <pubdate>April 2008</pubdate>
- <copyright>
- <year>2007</year>
- <year>2009</year>
- <holder>JBoss by Red Hat</holder>
- </copyright>
- <releaseinfo>
- Version: 5.1.0.trunk
- </releaseinfo>
-<abstract>
- <title></title>
- <para>
- <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/as/pdf/AS_Reference_...">PDF version</ulink>
- </para>
-</abstract>
-
- </bookinfo>
-
-
- <toc></toc>
-
-<chapter id="introduction" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/drools/docs/reference/en/modules/introduction.xml" xreflabel="introduction">
- <title>Introduction</title>
-
- <section id="whatisDrools">
- <title>What is Drools?</title>
-
- <para><property moreinfo="none">Drools</property> is a business rule management system (BRMS) with a forward
- chaining inference based rules engine, more correctly known as a production rule system,
- using an enhanced implementation of the Rete algorithm.</para>
-
- <para> In this guide we are going to get you familiar with Drools Eclipse plugin which
- provides development tools for creating, executing and debugging Drools processes and
- rules from within Eclipse.</para>
-
- <note>
- <title>Note:</title>
- <para>It is assumed that you has some familiarity with rule engines and Drools in
- particular. If no, we suggest that you look carefully through the <ulink url="http://downloads.jboss.com/drools/docs/4.0.7.19894.GA/html_single/index.html">Drools Documentation</ulink>.</para>
- </note>
-
- <para><property moreinfo="none">Drools Tools</property> come bundled with <property moreinfo="none">JBoss Tools</property>
- set of Eclipse plugins. How to install <property moreinfo="none">JBoss Tools</property> you can find in
- the <ulink url="../../GettingStartedGuide/html_single/index.html#JBossToolsInstall">Getting Started Guide</ulink>.</para>
- </section>
-
- <section id="drools_key_features">
- <title>Drools Tools Key Features</title>
-
- <para>The following table lists all valuable features of the <property moreinfo="none">Drools
- Tools</property>.</para>
- <table>
- <title>Key Functionality of Drools 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>Wizard for creating a new Drools Project</para>
- </entry>
- <entry>
- <para>The wizard allows to create a sample project to easy get started
- with Drools</para>
- </entry>
- <entry>
- <link linkend="sample_drools_project">Creating a Sample Drools
- Project</link>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>Wizards for creation new Drools resources</para>
- </entry>
- <entry>
- <para>A set of wizards are provided with the Drools Eclipse tools to
- quickly create a new Rule resource, a new Domain Specific language,
- Decision Table and Business rule</para>
- </entry>
- <entry>
- <link linkend="creating_rule">Creating a New Rule</link>
- <!--link linkend="creating_dsl">Creating a New DSL</link>
- <link linkend="creating_decision_table">Creating a New Decision
- Table</link>
- <link linkend="creating_business_rule">Creating a New Business
- Rule</link-->
- </entry>
- </row>
-
- <row>
- <entry>
- <para>The Rule editor</para>
- </entry>
- <entry>
- <para>An editor that is aware of DRL syntax and provides content
- assistance and synchronizing with the Outline view</para>
- </entry>
- <entry>
- <link linkend="textual_rule_editor">The Rule Editor</link>
- </entry>
- </row>
-
- <row>
- <entry>
- <para>The Domain Specific Language editor</para>
- </entry>
- <entry>
- <para>The editor allows to create and manage mappings from users
- language to the rule language</para>
- </entry>
- <entry>
- <!--link linkend="dsl_editor">The Domain Specific Language Editor</link-->
- </entry>
- </row>
-
- <row>
- <entry>
- <para>The Guided editor</para>
- </entry>
- <entry>
- <para>This guided editor for rules allows you to build rules in a GUI
- driven fashion based on your object model</para>
- </entry>
- <entry>
- <!--link linkend="guided_editor">The Guided Editor</link-->
- </entry>
- </row>
-
- <row>
- <entry>
- <para>The Rule Flow graphical editor</para>
- </entry>
- <entry>
- <para>The editor is meant for editing visual graphs which represent a
- process (a rule flow)</para>
- </entry>
- <entry>
- <!--link linkend="ruleflow_editor">The Rule Flow Graphical Editor</link-->
- </entry>
- </row>
-
- </tbody>
- </tgroup>
- </table>
- </section>
-
- <section>
- <title>Other relevant resources on the topic</title>
-
- <itemizedlist>
- <listitem>
- <para>Drools on <ulink url="http://www.jboss.org/drools/">JBoss.org</ulink></para>
- </listitem>
-
- <listitem>
- <para>
- <ulink url="http://www.jboss.org/tools/">JBoss Tools Home Page</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>All <property moreinfo="none">JBoss Tools/JBDS</property> documentation you can find on the
- <ulink url="http://docs.jboss.org/tools/">documentation release
- page</ulink>.</para>
- </listitem>
- </itemizedlist>
-
- </section>
-</chapter>
-
-
-<chapter id="create_new_project" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/drools/docs/reference/en/modules/create_new_project.xml" xreflabel="create_new_project">
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Drools Tools</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Creating a New Drools Project</title>
-
- <para>In this chapter we are going to show you how to setup an executable sample Drools project
- to start using rules immediately.</para>
-
-
-
- <section id="sample_drools_project">
- <title>Creating a Sample Drools Project</title>
-
- <para>First, we suggest that you use <property moreinfo="none">Drools perspective</property> which is aimed
- at work with Drools specific resources.</para>
-
- <para>To create a new Drools project follow to <emphasis>
- <property moreinfo="none">File > New > Drools Project</property>. </emphasis> This will open
- <property moreinfo="none">New Drools Project wizard</property> like on the figure below.</para>
-
- <para>On the first page type the project name and click
- <emphasis><property moreinfo="none">Next</property>.</emphasis></para>
-
- <figure float="0">
- <title>Creating a New Drools Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Next you have a choice to add some default artifacts to it like sample rules, decision
- tables or ruleflows and Java classes for them. Let's select first two check
- boxes and press <emphasis>
- <property moreinfo="none">Next</property>. </emphasis></para>
-
- <figure float="0">
- <title>Selecting Drools Project Elements</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Next page asks you to specify a Drools runtime. If you have not yet set it up, you
- should do this now by clicking the <emphasis>
- <property moreinfo="none">Configure Workspace Settings</property>
- </emphasis> link.</para>
-
- <figure float="0">
- <title>Configuring Drools Runtime</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>You should see the <property moreinfo="none">Preferences window</property> where you can configure the
- workspace settings for Drools runtimes. To create a new runtime, press the <emphasis>
- <property moreinfo="none">Add</property>
- </emphasis> button. The appeared dialog prompts you to enter a
- name for a new runtime and a path to the Drools runtime on your file system.</para>
-
- <note>
- <title>Note:</title>
- <para>A Drools runtime is a collection of jars on your file system that represent one
- specific release of the Drools project jars. While creating a new runtime, you must
- either point to the release of your choice, or you can simply create a new runtime
- on your file system from the jars included in the Drools Eclipse plugin.</para>
- </note>
-
- <figure float="0">
- <title>Adding a New Drools Runtime</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Let's simply create a new Drools 5 runtime from the jars embedded in the
- Drools Eclipse plugin. Thus, you should press <emphasis>
- <property moreinfo="none">Create a new Drools 5 runtime</property>
- </emphasis> button and select the folder where you want this runtime to be created and
- hit <emphasis>
- <property moreinfo="none">OK</property>.</emphasis></para>
-
- <para>You will see the newly created runtime show up in your list of Drools runtimes. Check
- it and press <emphasis>
- <property moreinfo="none">OK</property>.</emphasis></para>
-
- <figure float="0">
- <title>Selecting a Drools Runtime</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Now press <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> to complete the project creation.</para>
-
- <figure float="0">
- <title>Completing the Drools Project Creation</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>This will setup a basic structure, classpath and sample rules and test case to get you
- started.</para>
- </section>
-
-
- <section id="structure_overview">
- <title>Drools Project Structure Overview</title>
-
- <para>Now let's look at the structure of the organized project. In the
- <property moreinfo="none">Package Explorer</property> you should see the following:</para>
-
- <figure float="0">
- <title>Drools Project in the Package Explorer</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project7.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The newly created project contains an example rule file <emphasis>
- <property moreinfo="none">Sample.drl</property>
- </emphasis> in the <emphasis>
- <property moreinfo="none">src/main/rules</property>
- </emphasis> directory and an example java file <emphasis>
- <property moreinfo="none">DroolsTest.java</property>
- </emphasis> that can be used to execute the rules in a Drools engine in the folder <emphasis>
- <property moreinfo="none">src/main/java</property>
- </emphasis>, in the <emphasis>
- <property moreinfo="none">com.sample</property>
- </emphasis> package. All the others jar's that are necessary during execution
- are also added to the classpath in a custom classpath container called <property moreinfo="none">Drools
- Library</property>.</para>
-
- <tip>
- <title>Tip:</title>
- <para>Rules do not have to be kept in Java projects at all, this is just a convenience
- for people who are already using eclipse as their Java IDE.</para>
- </tip>
-
- </section>
-
- <section id="creating_rule">
- <title>Creating a New Rule</title>
-
- <para>Now we are going to add a new Rule resource to the project.</para>
-
- <para>You can either create an empty text <emphasis>
- <property moreinfo="none">.drl</property>
- </emphasis> file or make use of the special <property moreinfo="none">New Rule Resource
- wizard</property> to do it.</para>
-
- <para>To open the wizard follow to <emphasis>
- <property moreinfo="none">File > New > Rule Resource</property>
- </emphasis> or use the menu with the JBoss Drools icon on the toolbar.</para>
-
- <figure float="0">
- <title>Opening the New Rule Resource Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On the wizard page first select <emphasis>
- <property moreinfo="none">/rules</property>
- </emphasis> as a top level directory to store your rules and type the rule name. Next
- it's mandatory to specify the rule package name. It defines a namespace that
- groups rules together.</para>
-
- <figure float="0">
- <title>New Rule Resource Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project9.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>As a result the wizard generates a rule skeleton to get you started.</para>
-
- <figure float="0">
- <title>New Rule</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_new_project/create_new_project10.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- </section>
-
-</chapter>
-
-
-<chapter id="debugging_rules" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/drools/docs/reference/en/modules/debugging_rules.xml" xreflabel="debugging_rules">
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Drools Tools</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Debugging rules</title>
-
- <para>This chapter describes how to debug rules during the execution of your Drools application.</para>
-
- <section id="creating_breakpoints">
- <title>Creating Breakpoints</title>
-
- <para>At first, we'll focus on how to add
- breakpoints in the consequences of your rules.</para>
-
- <para>Whenever such a breakpoint is uncounted
- during the execution of the rules, the execution is halted. It's possible then inspect the
- variables known at that point and use any of the default debugging actions to decide what
- should happen next (step over, continue, etc). To inspect
- the content of the working memory and agenda the Debug views can be used.</para>
-
- <para>You can add/remove rule breakpoints in <emphasis>
- <property moreinfo="none">.drl</property>
- </emphasis> files in two ways, similar to adding breakpoints to Java files:</para>
-
- <itemizedlist>
- <listitem>
- <para>Double-click the ruler in the <property moreinfo="none">Rule editor</property> at the line
- where you want to add a breakpoint.</para>
- <tip>
- <title>Tip:</title>
- <para>Note that rule breakpoints can only be created in the consequence of a
- rule. Double-clicking on a line where no breakpoint is allowed will do
- nothing.</para>
- </tip>
- <para>A breakpoint can be removed by double-clicking the ruler once more. </para>
- </listitem>
-
- <listitem>
- <para>Right-click the ruler. Select <emphasis>
- <property moreinfo="none">Toggle Breakpoint</property>
- </emphasis> action in the appeared popup menu. Clicking the action will add a
- breakpoint at the selected line or remove it if there is one already.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Adding Breakpoints</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/debugging_rules/debugging_rules1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The <property moreinfo="none">Debug perspective</property> contains a <property moreinfo="none">Breakpoints
- view</property> which can be used to see all defined breakpoints, get their
- properties, enable/disable or remove them, etc. You can switch to it by navigating to <emphasis>
- <property moreinfo="none">Window > Perspective > Others > Debug</property>.</emphasis></para>
- </section>
-
- <section id="debugging">
- <title>Debugging</title>
-
- <para>Drools breakpoints are only enabled if you debug your application as a Drools
- Application. To do this you should perform one of the actions:</para>
-
- <itemizedlist>
- <listitem>
- <para>Select the main class of your application. Right click it and select <emphasis>
- <property moreinfo="none">Debug As > Drools Application</property>.</emphasis></para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Debugging Drools Application</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/debugging_rules/debugging_rules2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>Alternatively, you can also go to <emphasis>
- <property moreinfo="none">Debug As > Debug Configuration</property>
- </emphasis> to open a new dialog for creating, managing and running debug
- configurations.</para>
-
- <para>Select the <emphasis>
- <property moreinfo="none">Drools Application</property>
- </emphasis> item in the left tree and click the <emphasis>
- <property moreinfo="none">New launch configuration</property>
- </emphasis> button (leftmost icon in the toolbar above the tree). This will
- create a new configuration and already fill in some of the properties (like the
- Project and Main class) based on main class you selected in the beginning. All
- properties shown here are the same as any standard Java program.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>New Debug Configuration</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/debugging_rules/debugging_rules3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <tip>
- <title>Tip:</title>
- <para>Remember to change the name of your debug configuration to something meaningful.</para>
- </tip>
-
- <para>Next
- click the <emphasis>
- <property moreinfo="none">Debug</property>
- </emphasis> button on the bottom to start debugging your application. </para>
-
- <para>After enabling the debugging, the application starts executing and will halt if
- any breakpoint is encountered. This can be a Drools rule breakpoint, or any other
- standard Java breakpoint. Whenever a Drools rule breakpoint is encountered, the
- corresponding <emphasis>
- <property moreinfo="none">.drl</property></emphasis> file is opened and the active line is highlighted. The Variables view
- also contains all rule parameters and their value. You can then use the default Java
- debug actions to decide what to do next (resume, terminate, step over, etc.). The debug
- views can also be used to determine the contents of the working memory and agenda at
- that time as well (you don't have to select a working memory now, the current executing
- working memory is automatically shown).</para>
-
-
- </section>
-</chapter>
-
-
-<chapter id="editors" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/drools/docs/reference/en/modules/editors.xml" xreflabel="editors">
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Drools Tools</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Editors</title>
-
- <section id="textual_rule_editor">
- <title>The Rule Editor</title>
-
- <para>The <property moreinfo="none">Rule editor</property> works on files that have a <emphasis>
- <property moreinfo="none">.drl</property>
- </emphasis> (or <emphasis>
- <property moreinfo="none">.rule</property>
- </emphasis> in the case of spreading rules across multiple rule files) extension.</para>
-
- <figure float="0">
- <title>New Rule</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/editors/editors1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The editor follows the pattern of a normal text editor in eclipse, with all the normal
- features of a text editor:</para>
-
- <itemizedlist>
- <listitem>
- <para>
- <link linkend="rules_editor_content_assist">Content Assist</link>
- </para>
- </listitem>
-
- <listitem>
- <para>
- <link linkend="rules_editor_code_folding">Code Folding</link>
- </para>
- </listitem>
-
- <!-- <listitem>
- <para>
- <link linkend="rules_editor_error_reporting">Error Reporting</link>
- </para>
- </listitem>-->
-
- <listitem>
- <para>
- <link linkend="rules_editor_sync_with_outline">Synchronization with Outline
- View</link>
- </para>
- </listitem>
- </itemizedlist>
-
- <section id="rules_editor_content_assist">
- <title>Content Assist</title>
-
- <para>While working in the <property moreinfo="none">Rule editor</property> you can get a content
- assistance the usual way by pressing <emphasis>
- <property moreinfo="none">Ctrl + Space</property>.</emphasis></para>
-
- <para>Content Assist shows all possible keywords for the current cursor position.</para>
-
- <figure float="0">
- <title>Content Assist Demonstration</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/editors/editors2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Content Assist inside of the <emphasis>
- <property moreinfo="none">Message</property>
- </emphasis> suggests all available fields.</para>
-
- <figure float="0">
- <title>Content Assist Demonstration</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/editors/editors3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- </section>
-
- <section id="rules_editor_code_folding">
- <title>Code Folding</title>
-
- <para>Code folding is also available in the <property moreinfo="none">Rule editor</property>. To
- hide/show sections of the file use the icons with minus/plus on the left vertical
- line of the editor.</para>
-
- <figure float="0">
- <title>Code Folding</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/editors/editors4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- </section>
-
- <!--section id="rules_editor_error_reporting">
- <title>Error Reporting</title>
-
- </section-->
-
- <section id="rules_editor_sync_with_outline">
- <title>Synchronization with Outline View</title>
-
- <para>The <property moreinfo="none">Rule editor</property> works in synchronization with the
- <property moreinfo="none">Outline view</property> which shows the structure of the rules,
- imports in the file and also globals and functions if the file has them.</para>
-
- <figure float="0">
- <title>Synchronization with Outline View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/editors/editors5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The view is updated on save. It provides a quick way of navigating around rules by
- names in a file which may have hundreds of rules. The items are sorted
- alphabetically by default.</para>
- </section>
-
- <section id="rete_view">
- <title>The Rete Tree View</title>
-
- <para>The <property moreinfo="none">Rete Tree view</property> shows you the current Rete Network for
- your <emphasis>
- <property moreinfo="none">.drl</property>
- </emphasis> file. Just click on the <emphasis>
- <property moreinfo="none">Rete Tree tab</property>
- </emphasis> at the bottom of the <property moreinfo="none">Rule editor</property>.</para>
-
- <figure float="0">
- <title>Rete Tree</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/editors/editors6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Afterwards you can generate the current Rete Network visualization. You can push
- and pull the nodes to arrange your optimal network overview.</para>
- <para>If you got hundreds of nodes, select some of them with a frame. Then you can pull
- groups of them.</para>
-
- <figure float="0">
- <title>Selecting the nodes in the Rete Tree with Frame</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/editors/editors7.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>You can zoom in and out the Rete tree in case not all nodes are shown in the
- current view. For this use the combo box or "+" and "-" icons on the toolbar.</para>
-
- <figure float="0">
- <title>Rete Tree Zooming</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/editors/editors8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <note>
- <title>Note:</title>
-
- <para>The <property moreinfo="none">Rete Tree view</property> works only in Drools Rule Projects,
- where the Drools Builder is set in the project properties.</para>
- </note>
- <para>We hope, this guide helped you to get started with the JBoss BPMN Convert module. 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>
-
- </section>
-
-</chapter>
-
-
-
-</book>
+]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
+
+ <bookinfo>
+ <title>Drools 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>
+
+ <copyright>
+ <year>2007</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2008</diffmk:wrapper></year>
+ <year>2009</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2010</diffmk:wrapper></year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo>
+ Version: 5.1.0.trunk
+ </releaseinfo>
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/as/pdf/AS_Reference_...">PDF version</ulink>
+ </para>
+</abstract>
+
+ </bookinfo>
+
+
+ <toc></toc>
+
+<chapter id="introduction" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/drools/docs/reference/en/modules/introduction.xml" xreflabel="introduction">
+ <title>Introduction</title>
+
+ <section id="whatisDrools">
+ <title>What is Drools?</title>
+
+ <para><property moreinfo="none">Drools</property> is a business rule management system (BRMS) with a forward
+ chaining inference based rules engine, more correctly known as a production rule system,
+ using an enhanced implementation of the Rete algorithm.</para>
+
+ <para> In this guide we are going to get you familiar with Drools Eclipse plugin which
+ provides development tools for creating, executing and debugging Drools processes and
+ rules from within Eclipse.</para>
+
+ <note>
+ <title>Note:</title>
+ <para>It is assumed that you has some familiarity with rule engines and Drools in
+ particular. If no, we suggest that you look carefully through the <ulink url="http://downloads.jboss.com/drools/docs/4.0.7.19894.GA/html_single/index.html">Drools Documentation</ulink>.</para>
+ </note>
+
+ <para><property moreinfo="none">Drools Tools</property> come bundled with <property moreinfo="none">JBoss Tools</property>
+ set of Eclipse plugins. How to install <property moreinfo="none">JBoss Tools</property> you can find in
+ the <ulink url="../../GettingStartedGuide/html_single/index.html#JBossToolsInstall">Getting Started Guide</ulink>.</para>
+ </section>
+
+ <section id="drools_key_features">
+ <title>Drools Tools Key Features</title>
+
+ <para>The following table lists all valuable features of the <property moreinfo="none">Drools
+ Tools</property>.</para>
+ <table>
+ <title>Key Functionality of Drools 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>Wizard for creating a new Drools Project</para>
+ </entry>
+ <entry>
+ <para>The wizard allows to create a sample project to easy get started
+ with Drools</para>
+ </entry>
+ <entry>
+ <link linkend="sample_drools_project">Creating a Sample Drools
+ Project</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>Wizards for creation new Drools resources</para>
+ </entry>
+ <entry>
+ <para>A set of wizards are provided with the Drools Eclipse tools to
+ quickly create a new Rule resource, a new Domain Specific language,
+ Decision Table and Business rule</para>
+ </entry>
+ <entry>
+ <link linkend="creating_rule">Creating a New Rule</link>
+ <!--link linkend="creating_dsl">Creating a New DSL</link>
+ <link linkend="creating_decision_table">Creating a New Decision
+ Table</link>
+ <link linkend="creating_business_rule">Creating a New Business
+ Rule</link-->
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>The Rule editor</para>
+ </entry>
+ <entry>
+ <para>An editor that is aware of DRL syntax and provides content
+ assistance and synchronizing with the Outline view</para>
+ </entry>
+ <entry>
+ <link linkend="textual_rule_editor">The Rule Editor</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>The Domain Specific Language editor</para>
+ </entry>
+ <entry>
+ <para>The editor allows to create and manage mappings from users
+ language to the rule language</para>
+ </entry>
+ <entry>
+ <link diffmk:change="added" linkend="dsl_editor"><diffmk:wrapper diffmk:change="added">The Domain Specific Language Editor</diffmk:wrapper></link>
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>The Guided editor</para>
+ </entry>
+ <entry>
+ <para>This guided editor for rules allows you to build rules in a GUI
+ driven fashion based on your object model</para>
+ </entry>
+ <entry>
+ <!--link linkend="guided_editor">The Guided Editor</link-->
+ </entry>
+ </row>
+
+ <row>
+ <entry>
+ <para>The Rule Flow graphical editor</para>
+ </entry>
+ <entry>
+ <para>The editor is meant for editing visual graphs which represent a
+ process (a rule flow)</para>
+ </entry>
+ <entry>
+ <link diffmk:change="added" linkend="ruleflow_editor"><diffmk:wrapper diffmk:change="added">The Rule Flow Graphical Editor</diffmk:wrapper></link>
+ </entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+
+ <section>
+ <title>Other relevant resources on the topic</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>Drools on <ulink url="http://www.jboss.org/drools/">JBoss.org</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <ulink url="http://www.jboss.org/tools/">JBoss Tools Home Page</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>All <property moreinfo="none">JBoss Tools/JBDS</property> documentation you can find on the
+ <ulink url="http://docs.jboss.org/tools/">documentation release
+ page</ulink>.</para>
+ </listitem>
+ </itemizedlist>
+
+ </section>
+</chapter>
+
+
+<chapter id="create_new_project" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/drools/docs/reference/en/modules/create_new_project.xml" xreflabel="create_new_project">
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Drools Tools</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Creating a New Drools Project</title>
+
+ <para>In this chapter we are going to show you how to setup an executable sample Drools project
+ to start using rules immediately.</para>
+
+
+
+ <section id="sample_drools_project">
+ <title>Creating a Sample Drools Project</title>
+
+ <para>First, we suggest that you use <property moreinfo="none">Drools perspective</property> which is aimed
+ at work with Drools specific resources.</para>
+
+ <para>To create a new Drools project follow to <emphasis>
+ <property moreinfo="none">File > New > Drools Project</property>. </emphasis> This will open
+ <property moreinfo="none">New Drools Project wizard</property> like on the figure below.</para>
+
+ <para>On the first page type the project name and click
+ <emphasis><property moreinfo="none">Next</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>Creating a New Drools Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Next you have a choice to add some default artifacts to it like sample rules, decision
+ tables or ruleflows and Java classes for them. Let's select first two check
+ boxes and press <emphasis>
+ <property moreinfo="none">Next</property>. </emphasis></para>
+
+ <figure float="0">
+ <title>Selecting Drools Project Elements</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Next page asks you to specify a Drools runtime. If you have not yet set it up, you
+ should do this now by clicking the <emphasis>
+ <property moreinfo="none">Configure Workspace Settings</property>
+ </emphasis> link.</para>
+
+ <figure float="0">
+ <title>Configuring Drools Runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>You should see the <property moreinfo="none">Preferences window</property> where you can configure the
+ workspace settings for Drools runtimes. To create a new runtime, press the <emphasis>
+ <property moreinfo="none">Add</property>
+ </emphasis> button. The appeared dialog prompts you to enter a
+ name for a new runtime and a path to the Drools runtime on your file system.</para>
+
+ <note>
+ <title>Note:</title>
+ <para>A Drools runtime is a collection of jars on your file system that represent one
+ specific release of the Drools project jars. While creating a new runtime, you must
+ either point to the release of your choice, or you can simply create a new runtime
+ on your file system from the jars included in the Drools Eclipse plugin.</para>
+ </note>
+
+ <figure float="0">
+ <title>Adding a New Drools Runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Let's simply create a new Drools 5 runtime from the jars embedded in the
+ Drools Eclipse plugin. Thus, you should press <emphasis>
+ <property moreinfo="none">Create a new Drools 5 runtime</property>
+ </emphasis> button and select the folder where you want this runtime to be created and
+ hit <emphasis>
+ <property moreinfo="none">OK</property>.</emphasis></para>
+
+ <para>You will see the newly created runtime show up in your list of Drools runtimes. Check
+ it and press <emphasis>
+ <property moreinfo="none">OK</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>Selecting a Drools Runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Now press <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> to complete the project creation.</para>
+
+ <figure float="0">
+ <title>Completing the Drools Project Creation</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>This will setup a basic structure, classpath and sample rules and test case to get you
+ started.</para>
+ </section>
+
+
+ <section id="structure_overview">
+ <title>Drools Project Structure Overview</title>
+
+ <para>Now let's look at the structure of the organized project. In the
+ <property moreinfo="none">Package Explorer</property> you should see the following:</para>
+
+ <figure float="0">
+ <title>Drools Project in the Package Explorer</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project7.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The newly created project contains an example rule file <emphasis>
+ <property moreinfo="none">Sample.drl</property>
+ </emphasis> in the <emphasis>
+ <property moreinfo="none">src/main/rules</property>
+ </emphasis> directory and an example java file <emphasis>
+ <property moreinfo="none">DroolsTest.java</property>
+ </emphasis> that can be used to execute the rules in a Drools engine in the folder <emphasis>
+ <property moreinfo="none">src/main/java</property>
+ </emphasis>, in the <emphasis>
+ <property moreinfo="none">com.sample</property>
+ </emphasis> package. All the others jar's that are necessary during execution
+ are also added to the classpath in a custom classpath container called <property moreinfo="none">Drools
+ Library</property>.</para>
+
+ <tip>
+ <title>Tip:</title>
+ <para>Rules do not have to be kept in Java projects at all, this is just a convenience
+ for people who are already using eclipse as their Java IDE.</para>
+ </tip>
+
+ </section>
+
+ <section id="creating_rule">
+ <title>Creating a New Rule</title>
+
+ <para>Now we are going to add a new Rule resource to the project.</para>
+
+ <para>You can either create an empty text <emphasis>
+ <property moreinfo="none">.drl</property>
+ </emphasis> file or make use of the special <property moreinfo="none">New Rule Resource
+ wizard</property> to do it.</para>
+
+ <para>To open the wizard follow to <emphasis>
+ <property moreinfo="none">File > New > Rule Resource</property>
+ </emphasis> or use the menu with the JBoss Drools icon on the toolbar.</para>
+
+ <figure float="0">
+ <title>Opening the New Rule Resource Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On the wizard page first select <emphasis>
+ <property moreinfo="none">/rules</property>
+ </emphasis> as a top level directory to store your rules and type the rule name. Next
+ it's mandatory to specify the rule package name. It defines a namespace that
+ groups rules together.</para>
+
+ <figure float="0">
+ <title>New Rule Resource Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project9.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>As a result the wizard generates a rule skeleton to get you started.</para>
+
+ <figure float="0">
+ <title>New Rule</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_project/create_new_project10.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </section>
+
+</chapter>
+
+
+<chapter id="debugging_rules" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/drools/docs/reference/en/modules/debugging_rules.xml" xreflabel="debugging_rules">
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Drools Tools</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Debugging rules</title>
+
+ <para>This chapter describes how to debug rules during the execution of your Drools application.</para>
+
+ <section id="creating_breakpoints">
+ <title>Creating Breakpoints</title>
+
+ <para>At first, we'll focus on how to add
+ breakpoints in the consequences of your rules.</para>
+
+ <para>Whenever such a breakpoint is uncounted
+ during the execution of the rules, the execution is halted. It's possible then inspect the
+ variables known at that point and use any of the default debugging actions to decide what
+ should happen next (step over, continue, etc). To inspect
+ the content of the working memory and agenda the Debug views can be used.</para>
+
+ <para>You can add/remove rule breakpoints in <emphasis>
+ <property moreinfo="none">.drl</property>
+ </emphasis> files in two ways, similar to adding breakpoints to Java files:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Double-click the ruler in the <property moreinfo="none">Rule editor</property> at the line
+ where you want to add a breakpoint.</para>
+ <tip>
+ <title>Tip:</title>
+ <para>Note that rule breakpoints can only be created in the consequence of a
+ rule. Double-clicking on a line where no breakpoint is allowed will do
+ nothing.</para>
+ </tip>
+ <para>A breakpoint can be removed by double-clicking the ruler once more. </para>
+ </listitem>
+
+ <listitem>
+ <para>Right-click the ruler. Select <emphasis>
+ <property moreinfo="none">Toggle Breakpoint</property>
+ </emphasis> action in the appeared popup menu. Clicking the action will add a
+ breakpoint at the selected line or remove it if there is one already.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Adding Breakpoints</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/debugging_rules/debugging_rules1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The <property moreinfo="none">Debug perspective</property> contains a <property moreinfo="none">Breakpoints
+ view</property> which can be used to see all defined breakpoints, get their
+ properties, enable/disable or remove them, etc. You can switch to it by navigating to <emphasis>
+ <property moreinfo="none">Window > Perspective > Others > Debug</property>.</emphasis></para>
+ </section>
+
+ <section id="debugging">
+ <title>Debugging</title>
+
+ <para>Drools breakpoints are only enabled if you debug your application as a Drools
+ Application. To do this you should perform one of the actions:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Select the main class of your application. Right click it and select <emphasis>
+ <property moreinfo="none">Debug As > Drools Application</property>.</emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Debugging Drools Application</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/debugging_rules/debugging_rules2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>Alternatively, you can also go to <emphasis>
+ <property moreinfo="none">Debug As > Debug Configuration</property>
+ </emphasis> to open a new dialog for creating, managing and running debug
+ configurations.</para>
+
+ <para>Select the <emphasis>
+ <property moreinfo="none">Drools Application</property>
+ </emphasis> item in the left tree and click the <emphasis>
+ <property moreinfo="none">New launch configuration</property>
+ </emphasis> button (leftmost icon in the toolbar above the tree). This will
+ create a new configuration and already fill in some of the properties (like the
+ Project and Main class) based on main class you selected in the beginning. All
+ properties shown here are the same as any standard Java program.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>New Debug Configuration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/debugging_rules/debugging_rules3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <tip>
+ <title>Tip:</title>
+ <para>Remember to change the name of your debug configuration to something meaningful.</para>
+ </tip>
+
+ <para>Next
+ click the <emphasis>
+ <property moreinfo="none">Debug</property>
+ </emphasis> button on the bottom to start debugging your application. </para>
+
+ <para>After enabling the debugging, the application starts executing and will halt if
+ any breakpoint is encountered. This can be a Drools rule breakpoint, or any other
+ standard Java breakpoint. Whenever a Drools rule breakpoint is encountered, the
+ corresponding <emphasis>
+ <property moreinfo="none">.drl</property></emphasis> file is opened and the active line is highlighted. The Variables view
+ also contains all rule parameters and their value. You can then use the default Java
+ debug actions to decide what to do next (resume, terminate, step over, etc.). The debug
+ views can also be used to determine the contents of the working memory and agenda at
+ that time as well (you don't have to select a working memory now, the current executing
+ working memory is automatically shown).</para>
+
+
+ </section>
+</chapter>
+
+
+<chapter id="editors" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/drools/docs/reference/en/modules/editors.xml" xreflabel="editors">
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Drools Tools</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Editors</title>
+ <section diffmk:change="added" id="dsl_editor">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">DSL Editor</diffmk:wrapper></title>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">A domain-specific language is a set of custom rules,
+ that is created specifically to solve problems in a particular domain
+ and is not intended to be able to solve problems outside it.
+ A DSL's configuration is stored in plain text.
+ </diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">In Drools this configuration is presented by </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">.dsl</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">
+ files that can be created by </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">right click on the project->New->Other->Drools->Domain Specific Language</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">DSL Editor is a default editor for </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">.dsl</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> files:</diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">DSL Editor</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/editors1a.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">In the table below all the components of the DSL Editor page are described:</diffmk:wrapper></para>
+ <table diffmk:change="added">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">DSL Editor Components.</diffmk:wrapper></title>
+ <tgroup cols="2" diffmk:change="added">
+ <colspec align="left" colnum="1" colwidth="1*" diffmk:change="added"></colspec>
+ <colspec align="left" colnum="2" colwidth="3*" diffmk:change="added"></colspec>
+
+ <thead diffmk:change="added">
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Components</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Description</diffmk:wrapper></entry>
+ </row>
+ </thead>
+ <tbody diffmk:change="added">
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Description</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">User's comments on a certain language message mapping</diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Table of language message mappings</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">The table is divided into 4 rows:
+ </diffmk:wrapper><itemizedlist diffmk:change="added" id="rows">
+ <listitem diffmk:change="added"><para diffmk:change="added"><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Language Expression</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> :expression you want to use as a rule</diffmk:wrapper></para></listitem>
+ <listitem diffmk:change="added"><para diffmk:change="added"><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Rule Language Mapping</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> :the implementation of the rules.This means that to this language expression the rule will be compiled
+ by the rule engine compiler.</diffmk:wrapper></para></listitem>
+ <listitem diffmk:change="added"><para diffmk:change="added"><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Object</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> :name of the object</diffmk:wrapper></para></listitem>
+ <listitem diffmk:change="added"><para diffmk:change="added"><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Scope</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> :indicates where the expression is
+ targeted: is it for the "condition" part of the rule ,"consequence" part, etc.</diffmk:wrapper></para></listitem>
+ </itemizedlist><diffmk:wrapper diffmk:change="added">
+ By clicking on some row's header you can sort the lines in the table according to the clicked row.
+ By double clicking on the line </diffmk:wrapper><link diffmk:change="added" linkend="edit_wizard"><diffmk:wrapper diffmk:change="added">Edit language mapping Wizard</diffmk:wrapper></link><diffmk:wrapper diffmk:change="added"> will be open.
+ </diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Expression</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Shows the language expression of the selected table line(language message mapping).</diffmk:wrapper></entry>
+ </row>
+
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Mapping</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Shows the rule of language mapping for the selected table line(language message mapping).</diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Object</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Shows the object for the selected table line(language message mapping)</diffmk:wrapper></entry>
+ </row>
+
+ <row diffmk:change="added">
+ <entry diffmk:change="added" id="sort"><diffmk:wrapper diffmk:change="added">Sort By</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Using this option you can change the type of lines sorting
+ in the table of language message mappings.To do this select from the drop down lins the method
+ of sorting you want and click </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Sort</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> button.</diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Buttons</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><itemizedlist diffmk:change="added">
+ <listitem diffmk:change="added"><para diffmk:change="added"><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Edit</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> :by clicking the button users can edit
+ selected in the table of language message mappings lines.For more information look
+ </diffmk:wrapper><link diffmk:change="added" linkend="edit_wizard"><diffmk:wrapper diffmk:change="added">Edit language mapping Wizard</diffmk:wrapper></link><diffmk:wrapper diffmk:change="added">section.</diffmk:wrapper></para></listitem>
+ <listitem diffmk:change="added"><para diffmk:change="added"><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Remove</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> :if you click the button the selected mapping line will be deleted. </diffmk:wrapper></para></listitem>
+ <listitem diffmk:change="added"><para diffmk:change="added"><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Add</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> :with this button you can add new mapping lines to the table.For more information look
+ </diffmk:wrapper><link diffmk:change="added" linkend="add_wizard"><diffmk:wrapper diffmk:change="added">Add language mapping Wizard</diffmk:wrapper></link><diffmk:wrapper diffmk:change="added">section. </diffmk:wrapper></para></listitem>
+ <listitem diffmk:change="added"><para diffmk:change="added"><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Sort</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> : please, for more information go </diffmk:wrapper><link diffmk:change="added" linkend="sort"><diffmk:wrapper diffmk:change="added">here</diffmk:wrapper></link></para></listitem>
+ <listitem diffmk:change="added"><para diffmk:change="added"><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Copy</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> :with this button you can add new mapping lines to the table
+ in which all the information will be copied from the selected mapping line.</diffmk:wrapper></para></listitem>
+ </itemizedlist>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <section diffmk:change="added" id="edit_wizard">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Edit language mapping Wizard</diffmk:wrapper></title>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">This wizard can be opened by double clicking some line
+ in the table of language message mappings or by clicking the </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Edit</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added">button.</diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">On the picture below you can see all the options,Edit language mapping Wizard allow to change.</diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">Their names as well as the meaning of the options are correspond to the </diffmk:wrapper><link diffmk:change="added" linkend="rows"><diffmk:wrapper diffmk:change="added">rows</diffmk:wrapper></link><diffmk:wrapper diffmk:change="added"> of the table.</diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Edit language mapping Wizard</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/editors1c.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">To change the mapping a user should edit the otions he want and finally click </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Ok</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></para>
+ </section>
+ <section diffmk:change="added" id="add_wizard">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Add language mapping Wizard</diffmk:wrapper></title>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">This wizard is equal to </diffmk:wrapper><link diffmk:change="added" linkend="edit_wizard"><diffmk:wrapper diffmk:change="added">Edit language mapping Wizard</diffmk:wrapper></link><diffmk:wrapper diffmk:change="added">.
+ It can be opened by clicking the </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Add</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> button.
+ </diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">The only difference is that instead of editing the information you should enter new one.</diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Add language mapping Wizard</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/editors1b.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ </section>
+ <section diffmk:change="added" id="ruleflow_editor">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Flow Editor</diffmk:wrapper></title>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">Drools tools also provide some functionality to define the order in
+ which rules should be executed.Ruleflow file allows you to specify
+ the order in which rule sets should be evaluated using a flow chart.
+ So you can define which rule sets should be evaluated in sequence or in parallel as well as
+ specify conditions under which rule sets should be evaluated.</diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">Ruleflows can be set only by using the graphical flow editor which is part of the Drools plugin for Eclipse.
+ Once you have set up a Drools project,you can start adding ruleflows.
+ Add a ruleflow file(.rf) by clicking on the project and selecting "</diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">New -> Other...->Flow File</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added">":</diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">RuleFlow file creation</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/editors1f.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">By default these ruleflow files (.rf) are opened in the graphical Flow editor.
+ You can see it on the picture below.</diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Flow Editor</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/editors1g.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">The Flow editor consists of a </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">palette</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added">, a </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">canvas</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added">
+ and an </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">outline</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> view. To add new elements to the canvas, select the
+ element you would like to create in the palette and then add it to the canvas by clicking on the preferred location.
+ </diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Adding an element to the canvas</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/editors1e.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">Clicking on the Select option in the palette and
+ then on the element in your ruleflow allows you to
+ view and set the properties of that element in the properies view.</diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Properties view</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/editors1d.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">Outline View is useful for big complex schemata where not all nodes are seen at one time.
+ So using your Outline view you can easly navigate between parts of a schema. </diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Outline view usage</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/editors9.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <section diffmk:change="added">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Different types of control elements in Flow Palette</diffmk:wrapper></title>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">Flow editor supports three types of control elements.
+ They are:</diffmk:wrapper></para>
+ <table diffmk:change="added"> <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Flow Palette Components.Part 1</diffmk:wrapper></title>
+ <tgroup cols="3" diffmk:change="added">
+ <colspec align="left" colnum="1" colwidth="1*" diffmk:change="added"></colspec>
+ <colspec align="left" colnum="2" colwidth="1*" diffmk:change="added"></colspec>
+ <colspec align="left" colnum="3" colwidth="3*" diffmk:change="added"></colspec>
+
+ <thead diffmk:change="added">
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Component Picture</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Component Name</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Description</diffmk:wrapper></entry>
+ </row>
+ </thead>
+ <tbody diffmk:change="added">
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon7.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Select</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Select a node on the canvas</diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon8.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Marquee</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Is used for selecting a group of elements</diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon9.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Sequence Flow</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Use this element to join two elements on the canvas</diffmk:wrapper></entry>
+ </row>
+ </tbody>
+
+ </tgroup>
+ </table>
+ </section>
+
+ <section diffmk:change="added">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Different types of nodes in Flow Palette</diffmk:wrapper></title>
+
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">Currently, ruleflow supports seven types of nodes.
+ In the table below you can find information about them:</diffmk:wrapper></para>
+ <table diffmk:change="added"> <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Flow Palette Components.Part 2.</diffmk:wrapper></title>
+ <tgroup cols="3" diffmk:change="added">
+ <colspec align="left" colnum="1" colwidth="1*" diffmk:change="added"></colspec>
+ <colspec align="left" colnum="2" colwidth="1*" diffmk:change="added"></colspec>
+ <colspec align="left" colnum="3" colwidth="3*" diffmk:change="added"></colspec>
+
+ <thead diffmk:change="added">
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Component Picture</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Component Name</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Description</diffmk:wrapper></entry>
+ </row>
+
+ </thead>
+ <tbody diffmk:change="added">
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon1.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Start Event</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">The start of the ruleflow. A ruleflow should have exactly
+ one start node. The </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Start Event</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> can not have incoming
+ connections and should have one outgoing connection. Whenever the ruleflow process is started,
+ the executing is started here and is automatically proceeded to the first node
+ linked to this </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Start Event</diffmk:wrapper></property></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon2.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">End Event</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">A ruleflow file can have one or more </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">End Events</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">.
+ The </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">End Event</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> node should have one incoming connection
+ and can not have outgoing connections. When an end node is reached in the ruleflow,
+ the ruleflow is terminated (including other remaining active nodes when parallelism
+ is used).</diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon3.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Rule Task</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">represents a set of rules. A </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Rule Task</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> node should have one
+ incoming connection and one outgoing connection.
+ The </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">RuleFlowGroup</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> property which is used to specify the name of the
+ ruleflow-group that represents the set of rules of this </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Rule Task</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> node.
+ When a </diffmk:wrapper><emphasis diffmk:change="added"><diffmk:wrapper diffmk:change="added">Rule Task</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added"> node is reached in the ruleflow, the engine will start
+ executing rules that are a part of the corresponding ruleflow-group.
+ Execution automatically continues to the next node when there are no
+ more active rules in this ruleflow-group.
+ </diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon4.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Gateway[diverge]</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">allows you to create branches in your ruleflow.
+ A </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Gateway[diverge]</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> node should have one incoming connection and two or more
+ outgoing connections.</diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon4.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Gateway[converge]</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">allows you to synchronize multiple branches.
+ A </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Gateway[diverge]</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">node should have two or more incoming connections and one
+ outgoing connection.</diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon5.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Reusable Sup-Process</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">represents the invocation of another ruleflow from this ruleflow.
+ A subflow node should have one incoming connection and one outgoing connection.
+ It contains the property "processId" which specifies the id of the process that should be executed.
+ When a </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Reusable Sup-Process</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> node is reached in the ruleflow, the engine will start the process with the given id.
+ The subflow node will only continue if that subflow process has terminated its execution.
+ Note that the subflow process is started as an independent process,
+ which means that the subflow process will not be terminated if this process reaches an end node.</diffmk:wrapper></entry>
+ </row>
+ <row diffmk:change="added">
+ <entry diffmk:change="added"><inlinemediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/editors/icon6.png"></imagedata>
+ </imageobject></inlinemediaobject></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">Script Task</diffmk:wrapper></entry>
+ <entry diffmk:change="added"><diffmk:wrapper diffmk:change="added">represents an action that should be executed in this ruleflow.
+ An </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Script Task</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> node should have one incoming connection and one outgoing
+ connection. It contains the property "action" which specifies the action that should be executed.
+ When a </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Script Task</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> node is reached in the ruleflow, it will execute the action and
+ continue with the next node. An action should be specified as a piece of (valid)
+ MVEL code. </diffmk:wrapper></entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+ </section>
+
+ <section id="textual_rule_editor">
+ <title>The Rule Editor</title>
+
+ <para>The <property moreinfo="none">Rule editor</property> works on files that have a <emphasis>
+ <property moreinfo="none">.drl</property>
+ </emphasis> (or <emphasis>
+ <property moreinfo="none">.rule</property>
+ </emphasis> in the case of spreading rules across multiple rule files) extension.</para>
+
+ <figure float="0">
+ <title>New Rule</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/editors/editors1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The editor follows the pattern of a normal text editor in eclipse, with all the normal
+ features of a text editor:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <link linkend="rules_editor_content_assist">Content Assist</link>
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <link linkend="rules_editor_code_folding">Code Folding</link>
+ </para>
+ </listitem>
+
+ <!-- <listitem>
+ <para>
+ <link linkend="rules_editor_error_reporting">Error Reporting</link>
+ </para>
+ </listitem>-->
+
+ <listitem>
+ <para>
+ <link linkend="rules_editor_sync_with_outline">Synchronization with Outline
+ View</link>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ <section id="rules_editor_content_assist">
+ <title>Content Assist</title>
+
+ <para>While working in the <property moreinfo="none">Rule editor</property> you can get a content
+ assistance the usual way by pressing <emphasis>
+ <property moreinfo="none">Ctrl + Space</property>.</emphasis></para>
+
+ <para>Content Assist shows all possible keywords for the current cursor position.</para>
+
+ <figure float="0">
+ <title>Content Assist Demonstration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/editors/editors2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Content Assist inside of the <emphasis>
+ <property moreinfo="none">Message</property>
+ </emphasis> suggests all available fields.</para>
+
+ <figure float="0">
+ <title>Content Assist Demonstration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/editors/editors3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </section>
+
+ <section id="rules_editor_code_folding">
+ <title>Code Folding</title>
+
+ <para>Code folding is also available in the <property moreinfo="none">Rule editor</property>. To
+ hide/show sections of the file use the icons with minus/plus on the left vertical
+ line of the editor.</para>
+
+ <figure float="0">
+ <title>Code Folding</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/editors/editors4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </section>
+
+ <!--section id="rules_editor_error_reporting">
+ <title>Error Reporting</title>
+
+ </section-->
+
+ <section id="rules_editor_sync_with_outline">
+ <title>Synchronization with Outline View</title>
+
+ <para>The <property moreinfo="none">Rule editor</property> works in synchronization with the
+ <property moreinfo="none">Outline view</property> which shows the structure of the rules,
+ imports in the file and also globals and functions if the file has them.</para>
+
+ <figure float="0">
+ <title>Synchronization with Outline View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/editors/editors5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The view is updated on save. It provides a quick way of navigating around rules by
+ names in a file which may have hundreds of rules. The items are sorted
+ alphabetically by default.</para>
+ </section>
+
+ <section id="rete_view">
+ <title>The Rete Tree View</title>
+
+ <para>The <property moreinfo="none">Rete Tree view</property> shows you the current Rete Network for
+ your <emphasis>
+ <property moreinfo="none">.drl</property>
+ </emphasis> file. Just click on the <emphasis>
+ <property moreinfo="none">Rete Tree tab</property>
+ </emphasis> at the bottom of the <property moreinfo="none">Rule editor</property>.</para>
+
+ <figure float="0">
+ <title>Rete Tree</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/editors/editors6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Afterwards you can generate the current Rete Network visualization. You can push
+ and pull the nodes to arrange your optimal network overview.</para>
+ <para>If you got hundreds of nodes, select some of them with a frame. Then you can pull
+ groups of them.</para>
+
+ <figure float="0">
+ <title>Selecting the nodes in the Rete Tree with Frame</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/editors/editors7.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>You can zoom in and out the Rete tree in case not all nodes are shown in the
+ current view. For this use the combo box or "+" and "-" icons on the toolbar.</para>
+
+ <figure float="0">
+ <title>Rete Tree Zooming</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/editors/editors8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <note>
+ <title>Note:</title>
+
+ <para>The <property moreinfo="none">Rete Tree view</property> works only in Drools Rule Projects,
+ where the Drools Builder is set in the project properties.</para>
+ </note>
+ <para>We hope, this guide helped you to get started with the JBoss BPMN Convert module.
+ 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>
+
+ </section>
+
+</chapter>
+
+
+
+</book>
14 years, 4 months
JBoss Tools SVN: r20339 - trunk/ws/docs/reference/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2010-02-17 14:58:04 -0500 (Wed, 17 Feb 2010)
New Revision: 20339
Modified:
trunk/ws/docs/reference/en/master.xml
trunk/ws/docs/reference/en/master_output.xml
Log:
<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:9pt;font-family:Sans Serif">
<p>https://jira.jboss.org/jira/browse/JBDS-1104 - Updated versions,corrected master_output file</p>
</body></html>
Modified: trunk/ws/docs/reference/en/master.xml
===================================================================
--- trunk/ws/docs/reference/en/master.xml 2010-02-17 19:56:55 UTC (rev 20338)
+++ trunk/ws/docs/reference/en/master.xml 2010-02-17 19:58:04 UTC (rev 20339)
@@ -29,12 +29,12 @@
<copyright>
<year>2008</year>
- <year>2009</year>
+ <year>2009</year>
<year>2010</year>
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 1.1.0.CR1
+ Version: 1.1.0.CR2
</releaseinfo>
<abstract>
<title/>
Modified: trunk/ws/docs/reference/en/master_output.xml
===================================================================
--- trunk/ws/docs/reference/en/master_output.xml 2010-02-17 19:56:55 UTC (rev 20338)
+++ trunk/ws/docs/reference/en/master_output.xml 2010-02-17 19:58:04 UTC (rev 20339)
@@ -7,698 +7,700 @@
<!ENTITY preference SYSTEM "modules/preference.xml">
<!ENTITY webproject SYSTEM "modules/webproject.xml">
<!ENTITY client SYSTEM "modules/client.xml">
-]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
-
- <bookinfo>
- <title>JBoss WS User 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>Denny</firstname><surname>Xu</surname><email>dxu(a)redhat.com</email></author>
- <author><firstname>Grid</firstname><surname>Qian</surname><email>fqian(a)redhat.com</email></author>
- <pubdate>July 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/ws_ref_guide/pdf/WS_...">PDF version</ulink>
- </para>
-</abstract>
-
-
- </bookinfo>
-
- <toc></toc>
-
-<chapter id="overview" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/ws/docs/reference/en/modules/overview.xml">
- <title>JBossWS Runtime Overview</title>
-
- <para>JBossWS is a web service framework developed as a part of the JBoss Application Server. It implements the JAX-WS specification that defines a programming model and run-time architecture for implementing web services in Java, targeted at the Java Platform, Enterprise Edition 5 (Java EE 5).</para>
- <para>JBossWS integrates with most current JBoss Application Server releases as well as earlier ones, that did implement the J2EE 1.4 specifications. Even though JAX-RPC, the web service specification for J2EE 1.4, is still supported JBossWS does put a clear focus on JAX-WS.</para>
-
-<section>
- <title>Key Features of JBossWS</title>
- <para>For a start, we propose you to look through the table of main features of JBossWS Runtime:</para>
-
- <table>
-
- <title>Key Functionality for JBossWS</title>
- <tgroup cols="2">
-
- <colspec align="left" colnum="1" colwidth="2*"></colspec>
- <colspec colnum="2" colwidth="4*"></colspec>
-
-
- <thead>
- <row>
- <entry>Feature</entry>
- <entry>Benefit</entry>
-
- </row>
- </thead>
-
- <tbody>
-
- <row>
- <entry><para>JAX-RPC and JAX-WS support</para></entry>
- <entry><para>JBossWS implements both the JAX-WS and JAX-RPC specifications.</para></entry>
-
- </row>
-
- <row>
- <entry><para>EJB 2.1, EJB3 and JSE endpoints</para></entry>
- <entry><para>JBossWS supports EJB 2.1, EJB3 and JSE as Web Service Endpoints.</para></entry>
-
- </row>
-
- <row>
- <entry><para>WS-Security 1.0 for XML Encryption/Signature of the SOAP message</para></entry>
- <entry><para>WS-Security standardizes authorization, encryption, and digital signature processing of web services.</para></entry>
-
- </row>
-
- <row>
- <entry><para>JBoss AS</para></entry>
- <entry><para>JBoss Application Server 5 (JavaEE 5 compliant) web service stack.</para></entry>
-
- </row>
-
- <row>
- <entry><para>Support for MTOM/XOP and SwA-Ref</para></entry>
- <entry><para>Message Transmission Optimization Mechanism (MTOM) and XML-binary Optimized Packaging (XOP) more efficiently serialize XML Infosets that have certain types of content.</para></entry>
-
- </row>
-
- </tbody>
-
- </tgroup>
- </table>
-
-
-</section>
-<section>
- <title>Other relevant resources on the topic</title>
-
- <para>You can find some extra information on:</para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink url="http://www.jboss.org/community/wiki/JBossWS-FAQ#Tools">JBossWS Tools Wiki FAQ.</ulink>
- </para>
- </listitem>
- </itemizedlist>
-
-
- </section>
-
-
-
-
-</chapter>
-
-<chapter id="create_ws_topdown" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/ws/docs/reference/en/modules/topdown.xml">
- <?dbhtml filename="topdown.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Web Service</keyword>
- <keyword>JBossWS Web Service runtime</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Creating a Web Service using JBossWS runtime</title>
- <para>In this chapter we provide you with the necessary steps to create a Web Service using
- JBossWS runtime. First you need to create a Dynamic Web project:</para>
-
- <section id="createproject">
- <title>Creating a Dynamic Web project</title>
-
- <para>Before creating a web service, you should have a Dynamic Web Project created:</para>
- <figure float="0">
- <title>Dynamic Web Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_webproject_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Create a Web project by selecting <emphasis>
- <property moreinfo="none">New > Project... > Dynamic Web project</property></emphasis>. Enter the following information: </para>
- <itemizedlist>
- <listitem>
- <para>Project Name: enter a project name</para>
- </listitem>
- <listitem>
- <para>Target runtime: any server depending on your installation. If it is not listed,
- click <property moreinfo="none">New</property> button and browse to the location where it is installed to. You may set <emphasis>
- <property moreinfo="none">Target Runtime</property>
- </emphasis> to <emphasis>
- <property moreinfo="none">None</property></emphasis>, in this case, you should add <link linkend="addfacet">JBoss Web Service
- facet to the project</link>.</para>
- <figure float="0">
- <title>Dynamic Web Project Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_webproject_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- <listitem>
- <para>Configuration: You may add <link linkend="addfacet">JBoss Web Service
- facet to the project</link> by clicking <property moreinfo="none">Modify...</property> button. The opened page is like <property moreinfo="none">Figure 2.4</property>.</para>
- </listitem>
- <listitem>
- <para>Configure Web Module values:</para>
- <figure float="0">
- <title>Web Module Settings Configuration</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_webproject_3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- </itemizedlist>
- <para>If you added the JBoss Web Service facet to the project, now the <property moreinfo="none">Finish</property> button is disable. You must click <property moreinfo="none">Next</property> button to set more information about the JBoss Web Service facet. The page is like <property moreinfo="none">Figure 2.5</property>. Then click on the <property moreinfo="none">Finish</property> button.</para>
- <para>If you didn't add the JBoss Web Service facet to the project, click on the <property moreinfo="none">Finish</property> button. Next you will need to add JBoss Web Service facet to the project.</para>
- </section>
-
- <section id="addfacet">
- <title>Configure JBoss Web Service facet settings</title>
- <para>If you have already created a new Dynamic Web project and not set the JBoss Web Service facet to the project, the next step is to add JBoss Web
- Service facet to the project. Right-click on the project, select its <emphasis><property moreinfo="none">Properties</property></emphasis> and then find <emphasis>Project Facets</emphasis> in the tree-view on the left-side of the project properties dialog.
- Tick on the check box for JBoss Web Services. You will see what like this: </para>
- <figure float="0" id="figure_addfacet_0">
- <title>Choose JBoss Web Service Facet</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_facet_0.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>At the bottom-left of the right-side of the project properties dialog, there is a error link: <emphasis><property moreinfo="none">Further configuration required...</property></emphasis> . You must click the link to set more information about JBoss Web Service facet.</para>
- <para>Click on the <emphasis><property moreinfo="none">Further configuration required...</property></emphasis> link. In the opened window</para>
- <figure float="0" id="figure_addfacet">
- <title>Configure JBoss Web Service Facet</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_facet.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Server Supplied JBossWS Runtime: If you have already set a JBoss runtime to the
- project's target runtime, you may choose <emphasis>
- <property moreinfo="none">Server Supplied JBossWS Runtime</property>
- </emphasis> and then click <emphasis>
- <property moreinfo="none">Ok</property>
- </emphasis> to finish the configuration of JBoss Web Service facet. </para>
- <para>If the project has no <emphasis>
- <property moreinfo="none">Target Runtime</property>
- </emphasis> settings, you should check the second radio button and specify a JBossWS
- runtime from the list. You also can create a new JBossWS runtime, click on the <emphasis>
- <property moreinfo="none">New...</property>
- </emphasis> button will bring you to another dialog to configure new JBossWS runtime.</para>
- <figure float="0" id="figure_addfacet1">
- <title>Configure JBossWS Runtime</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_newruntime.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>See how to configure a new JBossWS runtime <link linkend="preference">here</link>.</para>
- <para>After setting the information about JBoss Web Service facet, for saving the result, you should click the <property moreinfo="none">Apply</property> or <property moreinfo="none">OK</property> button at the bottom-right of the right-side of the project properties dialog.</para>
- </section>
-
-
- <section id="topdownwebservice">
- <title>Creating a Web Service from a WSDL document using JBossWS runtime</title>
- <para>In this chapter we provide you with the necessary steps to create a Web Service from a
- WSDL document using JBossWS runtime.</para>
- <para>At first, please make sure that you have already created a dynamic Web project with
- JBoss Web Service facet installed. </para>
- <para>See how to make it <link linkend="createproject">here</link> and <link linkend="addfacet">here</link>.</para>
-
- <para>To create a Web Service using JBossWS runtime select<emphasis>
- <property moreinfo="none">File > New > Other > Web Services > Web Service</property>
- </emphasis> to run Web Service creation wizard. </para>
- <para>Let's get through the wizard step-by-step:</para>
- <figure float="0" id="figure_create_ws_topdown">
- <title>New Web Service Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_ws_creation1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>First, please select <property moreinfo="none">Top down Java bean Web Service</property> from the Web
- Service type list, and select a WSDL document from workspace, click on the Server name
- link on the page will bring you to another dialog. Here you can specify the server to a
- JBoss Server and Web Service runtime to JBossWS runtime:</para>
- <figure float="0" id="figure_create_ws_topdown_setserver">
- <title>Select Server and Web Service runtime</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_ws_creation1_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Click on the <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button to see the next wizard view opened:</para>
-
- <figure float="0" id="figure_create_ws_topdown1">
- <title>New Web Service Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_ws_creation1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Click on the <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis> button to proceed:</para>
- <figure float="0" id="figure_create_ws_topdown_codegen">
- <title>New Web Service Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_ws_creation2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>On this page, the default package name comes from the namespace of the WSDL document,
- you also can change it to any valid package name you want. JAX-WS specification should be
- set to 2.0 if your JBossWS runtime in JBoss Server is JBossWS native runtime. You can
- specify a catalog file and binding files if you have them. If you want the wizard to
- generate empty implementation classes for the Web Service, check the <emphasis>
- <property moreinfo="none">Generate default Web Service implementation classes</property>
- </emphasis> check box. If you want to update the default Web.xml file with the Web Service
- servlets configured, check the <emphasis>
- <property moreinfo="none">Update the default Web.xml</property>
- </emphasis> check box. Click on the <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis> or on the <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button to generate code.</para>
-
- <para>Once the Web Service code is generated, you can view the implementation class and add
- business logic to each method.</para>
- <figure float="0" id="figure_impl_code">
- <title>The generated implementation Java code</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_ws_Impl_code_view.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>View the Web.xml file:</para>
- <figure float="0" id="figure_webxml">
- <title>Web.xml</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_ws_webxml.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-<para>In the next chapter you will find out how to create a Web service from a Java bean.</para>
- </section>
-
- <section id="bottomupws">
- <title>Creating a Web service from a Java bean using JBossWS runtime</title>
- <para>The Web Service wizard assists you in creating a new Web service, configuring it for
- deployment, and then deploying it to the server.</para>
- <para>To create a Web service from a bean using JBoss WS:</para>
- <para>Setup <link linkend="preference">JBoss WS and development environment</link>.</para>
- <para>Create <link linkend="createproject">a Dynamic Web project</link>.</para>
- <para>Add <link linkend="addfacet">JBossWS Facet</link> to Web project.</para>
- <para>Create a Web Service from a java bean: </para>
- <itemizedlist>
- <listitem>
- <para>Switch to the Java EE perspective <emphasis>
- <property moreinfo="none">Window > Open Perspective > Java EE</property></emphasis>.</para>
- </listitem>
- <listitem>
- <para>In the Project Explorer view, select the bean that you created or imported into
- the source folder of your Web project.</para>
- <figure float="0">
- <title>Select the Bean Created</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_bottomup.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">File > New > Other</property></emphasis>. Select Web Services in order to display various Web service wizards.
- Select the Web Service wizard. Click on the <property moreinfo="none">Next</property> button.</para>
- <figure float="0">
- <title>New Web Service</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_bottomup_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- <listitem>
- <para>On the first Web Service wizard page: select <property moreinfo="none">Bottom up Java bean Web
- service</property> as your Web service type, and select the Java bean from which
- the service will be created:</para>
- <figure float="0">
- <title>Set Web Service Common values</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_bottomup_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Select the stages of Web service development that you want to complete using
- the slider: </para>
- <itemizedlist>
- <listitem>
- <para>Develop: this will develop the WSDL definition and implementation of
- the Web service. This includes such tasks as creating modules that will
- contain generated code, WSDL files, deployment descriptors, and Java
- files when appropriate.</para>
- </listitem>
- <listitem>
- <para>Assemble: this ensures the project that will host the Web service or
- client gets associated to an EAR when required by the target application
- server.</para>
- </listitem>
- <listitem>
- <para>Deploy: this will create the deployment code for the service.</para>
- </listitem>
- <listitem>
- <para>Install: this will install and configure the Web module and EARs on
- the target server.</para>
- </listitem>
- <listitem>
- <para>Start: this will start the server once the service has been installed
- on it. The server-config.wsdd file will be generated.</para>
- </listitem>
- <listitem>
- <para>Test: this will provide various options for testing the service, such
- as using the Web Service Explorer or sample JSPs.</para>
- </listitem>
- </itemizedlist>
- </listitem>
- <listitem>
- <para>Select your server: the default server is displayed. If you want to deploy
- your service to a different server click the link to specify a different server.
- </para>
- </listitem>
- <listitem>
- <para>Select your runtime: ensure the JBoss WS runtime is selected.</para>
- </listitem>
- <listitem>
- <para>Select the service project: the project selected in your workspace is
- displayed. To select a different project click on the project link. If you are
- deploying to JBoss Application Server you will also be asked to select the EAR
- associated with the project. Ensure that the project selected as the Client Web
- Project is different from the Service Web Project, or the service will be
- overwritten by the client's generated artifacts.</para>
- </listitem>
- <listitem>
- <para>If you want to create a client, select the type of proxy to be generated
- and repeat the above steps for the client. The better way is to create a web
- service client project separately.</para>
- </listitem>
- </itemizedlist>
- <para>Click on the <property moreinfo="none">Next</property> button.</para>
- </listitem>
- <listitem>
- <para>On the JBoss Web Service Code Generation Configuration page, set the following
- values:</para>
- <figure float="0">
- <title>Set Web Service values for Code Generation</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_bottomup_3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Generate WSDL file: select it, you will get a generated WSDL file in your
- project. But this wsdl's services' address location values are not a real
- address. </para>
- </listitem>
- <listitem>
- <para>After the Web service has been created, the following option can become
- available depending on the options you selected: Update the default web.xm
- file. If selected, you may test the web service by Explorer.</para>
- </listitem>
- </itemizedlist>
- <para>Click on the <property moreinfo="none">Next</property> button.</para>
- </listitem>
- <listitem>
- <para>On this page, the project is deployed to the server. You can start the server and
- test the web service. If you want to publish the web service to a UDDI registry, you
- may click the <property moreinfo="none">Next</property> button to publish it. If not, you may click
- the <property moreinfo="none">Finish</property> button.</para>
- <figure float="0">
- <title>Start a Server</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_bottomup_4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- </itemizedlist>
- <para>After the Web Service has been created, the following options may become available
- depending on the options selected:</para>
- <itemizedlist>
- <listitem>
- <para>the generated web services code</para>
- </listitem>
- <listitem>
- <para>If you selected to generate a WSDL file, you will get the file in your project's wsdl folder.</para>
- <figure float="0">
- <title>The Generated HelloWorldService.wsdl File in the wsdl Folder</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_bottomup_6.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- <listitem>
- <para>If you selected to update the default web.xml, you will test the web service in
- the browser. Open the Explorer, input the url for the web service according to
- web.xml plus <property moreinfo="none">?wsdl.</property>, you will get the WSDL file from Explorer. </para>
- <figure float="0">
- <title>The Updated web.xml file</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/topdown/jbossws_bottomup_5.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- </itemizedlist>
- <para>In the next chapter you will be able to create a Web Service Client from a WSDL document using JBoss WS.</para>
-
- </section>
-
-</chapter>
-
-
-<chapter id="client" revisionflag="added" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/ws/docs/reference/en/modules/client.xml">
- <title>Creating a Web Service Client from a WSDL Document using JBoss WS</title>
- <para>To create a Web Service Client from a WSDL Document using JBoss WS you need to fulfil the following steps:</para>
- <para>Setup <link linkend="preference">JBoss WS and development environment</link>.</para>
- <para><link linkend="createproject">Create a Dynamic Web project</link>.</para>
- <para><link linkend="addfacet">Add JBossWS Facet to Web project</link>.</para>
- <para>Then you can create a Web Service Client from a WSDL document: </para>
- <itemizedlist>
- <listitem>
- <para>Switch to the Java EE perspective <emphasis><property moreinfo="none">Window > Open Perspective > Java EE</property></emphasis>.</para>
- </listitem>
- <listitem>
- <para>Click <emphasis><property moreinfo="none">File > New > Other</property></emphasis>. Select Web Services in order to display the various Web service wizards. Select the Web Service Client wizard. Click on the <property moreinfo="none">Next</property> button.</para>
- <figure float="0">
- <title>New Web Service Client</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/client/jbossws_client.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- <listitem>
- <para>The first and the second Web Service Client wizard pages are the same as for <link linkend="topdownwebservice">Web Service from a WSDL document</link>.</para>
- <figure float="0">
- <title>Set Web Service Common values</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/client/jbossws_client_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <figure float="0">
- <title>Set Web Service values related to WSDL file</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/client/jbossws_client_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>The only difference is:</para>
- <itemizedlist>
- <listitem>
- <para><property moreinfo="none">Client Type:</property> Support of Java Proxy only.</para>
- </listitem>
- </itemizedlist>
- <para>Click on the <property moreinfo="none">Finish</property> button.</para>
- </listitem>
- </itemizedlist>
- <para>After the Web Service Client has been created, the following may occur depending on the options you selected:</para>
- <itemizedlist>
- <listitem>
- <para> the generated web service and client codes</para>
- </listitem>
- <listitem>
- <para>a client sample class.</para>
- <figure float="0">
- <title>Client Sample Class</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/client/jbossws_client_3.png" scale="80"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- </itemizedlist>
- <para>JBoss WS use a Java class to test Web Service. A client sample class will be generated, you may run this client as a java application to call a web service.</para>
-</chapter>
-
-
-<chapter id="preference" revisionflag="added" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/ws/docs/reference/en/modules/preference.xml">
- <title>JBoss WS and development environment</title>
-
- <para>In this chapter you will learn how to change JBossWS preferences and how to set default server and runtime.</para>
- <section id="jbosswspreference">
-
-
- <title>JBossWS Preferences</title>
-
- <para>In this section you will know how JBossWS preferences can be modified during the
- development process.</para>
-
- <para>JBossWS preferences can be set on the JBossWS preference page. Click on
- <emphasis><property moreinfo="none">Window > Preferences > JBoss Tools > Web > JBossWS
- Preferences</property>.</emphasis></para>
-
- <para>On this page you can manage the JBossWS Runtime. Use the appropriate buttons to
- <property moreinfo="none">Add</property> more runtimes or to <property moreinfo="none">Remove</property> those that
- are not needed.</para>
-
- <figure float="0">
- <title>JBossWS Preferences Page</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/preference/Jbossws_preference.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Clicking on <emphasis>
- <property moreinfo="none">Add</property>
- </emphasis> or <emphasis>
- <property moreinfo="none">Edit</property>
- </emphasis> button will open the form where you can configure a new JBossWS runtime and
- change the path to JBossWS runtime home folder, modify the name and version of the
- existing JBossWS runtime settings. Press <property moreinfo="none">Finish</property> to apply the
- changes.</para>
-
- <figure float="0">
- <title>Edit JBossWS Runtime</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/preference/Jbossws_preference_new.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
-
-
-
- <para>WS container allows Source and JavaDoc locations to be set via the Properties dialog on each contained .jar: right-click on any .jar file in the Project Explorer view, select <emphasis><property moreinfo="none">Properties</property></emphasis>. Choose <emphasis><property moreinfo="none">Java Source Attachment</property></emphasis> and select location (folder, JAR or zip) containing new source for the chosen .jar using one of the suggested options (workspace, external folder or file) or enter the path manually:</para>
-
- <figure float="0">
- <title>Classpath Container: Java Source Attachment</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/preference/jbossws_container1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Click on <emphasis><property moreinfo="none">Apply</property></emphasis> and then on <emphasis><property moreinfo="none">Ok</property></emphasis>.</para>
- <para>To change JavaDoc Location choose <emphasis><property moreinfo="none">Javadoc Location</property></emphasis> and specify URL to the documentation generated by Javadoc. The Javadoc location will contain a file called <emphasis><property moreinfo="none">package-list</property></emphasis>:</para>
-
- <figure float="0">
- <title>Classpath Container: Javadoc Location</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/preference/jbossws_container2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Click on <emphasis><property moreinfo="none">Apply</property></emphasis> and then on <emphasis><property moreinfo="none">Ok</property></emphasis>.</para>
-
-
-
-
-
-
- </section>
- <section id="serverruntime">
- <title>Default Server and Runtime</title>
- <para>Open <emphasis>
- <property moreinfo="none">Window > Preferences > Web Services > Server and Runtime</property></emphasis>. On this page, you can specify a default server and runtime.</para>
- <para>For ease of use, the better way is to set runtime to JBoss WS.</para>
- <para>After server and runtime are specified, click on the <property moreinfo="none">Apply</property> button
- to save the values.</para>
- <figure float="0">
- <title>Specifing a default server and runtime</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/preference/jbossws_server_runtime.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On the whole, this guide covers the fundamental concepts of work with tooling for
- <property moreinfo="none">JBossWS</property>. It describes how to easily create a Web Service and a Web Service Client using
- JBossWS Runtime and adjust JBossWS and development environment as well.</para>
-
- <para>If the information on JBossWS tools in this guide isn't enough for you, ask
- questions on our <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">forum</ulink>. Your comments and suggestions are also welcome.</para>
- </section>
-</chapter>
-
-</book>
+]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
+
+ <bookinfo>
+ <title>JBoss WS User 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>Denny</firstname><surname>Xu</surname><email>dxu(a)redhat.com</email></author>
+ <author><firstname>Grid</firstname><surname>Qian</surname><email>fqian(a)redhat.com</email></author>
+
+ <copyright>
+ <year>2008</year>
+ <year>2009</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2010</diffmk:wrapper></year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo><diffmk:wrapper diffmk:change="changed">
+ Version: 1.1.0.CR2
+ </diffmk:wrapper></releaseinfo>
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/ws_ref_guide/pdf/WS_...">PDF version</ulink>
+ </para>
+</abstract>
+
+
+ </bookinfo>
+
+ <toc></toc>
+
+<chapter id="overview" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/ws/docs/reference/en/modules/overview.xml">
+ <title>JBossWS Runtime Overview</title>
+
+ <para>JBossWS is a web service framework developed as a part of the JBoss Application Server. It implements the JAX-WS specification that defines a programming model and run-time architecture for implementing web services in Java, targeted at the Java Platform, Enterprise Edition 5 (Java EE 5).</para>
+ <para>JBossWS integrates with most current JBoss Application Server releases as well as earlier ones, that did implement the J2EE 1.4 specifications. Even though JAX-RPC, the web service specification for J2EE 1.4, is still supported JBossWS does put a clear focus on JAX-WS.</para>
+
+<section>
+ <title>Key Features of JBossWS</title>
+ <para>For a start, we propose you to look through the table of main features of JBossWS Runtime:</para>
+
+ <table>
+
+ <title>Key Functionality for JBossWS</title>
+ <tgroup cols="2">
+
+ <colspec align="left" colnum="1" colwidth="2*"></colspec>
+ <colspec colnum="2" colwidth="4*"></colspec>
+
+
+ <thead>
+ <row>
+ <entry>Feature</entry>
+ <entry>Benefit</entry>
+
+ </row>
+ </thead>
+
+ <tbody>
+
+ <row>
+ <entry><para>JAX-RPC and JAX-WS support</para></entry>
+ <entry><para>JBossWS implements both the JAX-WS and JAX-RPC specifications.</para></entry>
+
+ </row>
+
+ <row>
+ <entry><para>EJB 2.1, EJB3 and JSE endpoints</para></entry>
+ <entry><para>JBossWS supports EJB 2.1, EJB3 and JSE as Web Service Endpoints.</para></entry>
+
+ </row>
+
+ <row>
+ <entry><para>WS-Security 1.0 for XML Encryption/Signature of the SOAP message</para></entry>
+ <entry><para>WS-Security standardizes authorization, encryption, and digital signature processing of web services.</para></entry>
+
+ </row>
+
+ <row>
+ <entry><para>JBoss AS</para></entry>
+ <entry><para>JBoss Application Server 5 (JavaEE 5 compliant) web service stack.</para></entry>
+
+ </row>
+
+ <row>
+ <entry><para>Support for MTOM/XOP and SwA-Ref</para></entry>
+ <entry><para>Message Transmission Optimization Mechanism (MTOM) and XML-binary Optimized Packaging (XOP) more efficiently serialize XML Infosets that have certain types of content.</para></entry>
+
+ </row>
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+
+</section>
+<section>
+ <title>Other relevant resources on the topic</title>
+
+ <para>You can find some extra information on:</para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <ulink url="http://www.jboss.org/community/wiki/JBossWS-FAQ#Tools">JBossWS Tools Wiki FAQ.</ulink>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+
+ </section>
+
+
+
+
+</chapter>
+
+<chapter id="create_ws_topdown" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/ws/docs/reference/en/modules/topdown.xml">
+ <?dbhtml filename="topdown.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Web Service</keyword>
+ <keyword>JBossWS Web Service runtime</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Creating a Web Service using JBossWS runtime</title>
+ <para>In this chapter we provide you with the necessary steps to create a Web Service using
+ JBossWS runtime. First you need to create a Dynamic Web project:</para>
+
+ <section id="createproject">
+ <title>Creating a Dynamic Web project</title>
+
+ <para>Before creating a web service, you should have a Dynamic Web Project created:</para>
+ <figure float="0">
+ <title>Dynamic Web Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_webproject_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Create a Web project by selecting <emphasis>
+ <property moreinfo="none">New > Project... > Dynamic Web project</property></emphasis>. Enter the following information: </para>
+ <itemizedlist>
+ <listitem>
+ <para>Project Name: enter a project name</para>
+ </listitem>
+ <listitem>
+ <para>Target runtime: any server depending on your installation. If it is not listed,
+ click <property moreinfo="none">New</property> button and browse to the location where it is installed to. You may set <emphasis>
+ <property moreinfo="none">Target Runtime</property>
+ </emphasis> to <emphasis>
+ <property moreinfo="none">None</property></emphasis>, in this case, you should add <link linkend="addfacet">JBoss Web Service
+ facet to the project</link>.</para>
+ <figure float="0">
+ <title>Dynamic Web Project Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_webproject_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem>
+ <para>Configuration: You may add <link linkend="addfacet">JBoss Web Service
+ facet to the project</link> by clicking <property moreinfo="none">Modify...</property> button. The opened page is like <property moreinfo="none">Figure 2.4</property>.</para>
+ </listitem>
+ <listitem>
+ <para>Configure Web Module values:</para>
+ <figure float="0">
+ <title>Web Module Settings Configuration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_webproject_3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ </itemizedlist>
+ <para>If you added the JBoss Web Service facet to the project, now the <property moreinfo="none">Finish</property> button is disable. You must click <property moreinfo="none">Next</property> button to set more information about the JBoss Web Service facet. The page is like <property moreinfo="none">Figure 2.5</property>. Then click on the <property moreinfo="none">Finish</property> button.</para>
+ <para>If you didn't add the JBoss Web Service facet to the project, click on the <property moreinfo="none">Finish</property> button. Next you will need to add JBoss Web Service facet to the project.</para>
+ </section>
+
+ <section id="addfacet">
+ <title>Configure JBoss Web Service facet settings</title>
+ <para>If you have already created a new Dynamic Web project and not set the JBoss Web Service facet to the project, the next step is to add JBoss Web
+ Service facet to the project. Right-click on the project, select its <emphasis><property moreinfo="none">Properties</property></emphasis> and then find <emphasis>Project Facets</emphasis> in the tree-view on the left-side of the project properties dialog.
+ Tick on the check box for JBoss Web Services. You will see what like this: </para>
+ <figure float="0" id="figure_addfacet_0">
+ <title>Choose JBoss Web Service Facet</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_facet_0.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>At the bottom-left of the right-side of the project properties dialog, there is a error link: <emphasis><property moreinfo="none">Further configuration required...</property></emphasis> . You must click the link to set more information about JBoss Web Service facet.</para>
+ <para>Click on the <emphasis><property moreinfo="none">Further configuration required...</property></emphasis> link. In the opened window</para>
+ <figure float="0" id="figure_addfacet">
+ <title>Configure JBoss Web Service Facet</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_facet.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Server Supplied JBossWS Runtime: If you have already set a JBoss runtime to the
+ project's target runtime, you may choose <emphasis>
+ <property moreinfo="none">Server Supplied JBossWS Runtime</property>
+ </emphasis> and then click <emphasis>
+ <property moreinfo="none">Ok</property>
+ </emphasis> to finish the configuration of JBoss Web Service facet. </para>
+ <para>If the project has no <emphasis>
+ <property moreinfo="none">Target Runtime</property>
+ </emphasis> settings, you should check the second radio button and specify a JBossWS
+ runtime from the list. You also can create a new JBossWS runtime, click on the <emphasis>
+ <property moreinfo="none">New...</property>
+ </emphasis> button will bring you to another dialog to configure new JBossWS runtime.</para>
+ <figure float="0" id="figure_addfacet1">
+ <title>Configure JBossWS Runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_newruntime.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>See how to configure a new JBossWS runtime <link linkend="preference">here</link>.</para>
+ <para>After setting the information about JBoss Web Service facet, for saving the result, you should click the <property moreinfo="none">Apply</property> or <property moreinfo="none">OK</property> button at the bottom-right of the right-side of the project properties dialog.</para>
+ </section>
+
+
+ <section id="topdownwebservice">
+ <title>Creating a Web Service from a WSDL document using JBossWS runtime</title>
+ <para>In this chapter we provide you with the necessary steps to create a Web Service from a
+ WSDL document using JBossWS runtime.</para>
+ <para>At first, please make sure that you have already created a dynamic Web project with
+ JBoss Web Service facet installed. </para>
+ <para>See how to make it <link linkend="createproject">here</link> and <link linkend="addfacet">here</link>.</para>
+
+ <para>To create a Web Service using JBossWS runtime select<emphasis>
+ <property moreinfo="none">File > New > Other > Web Services > Web Service</property>
+ </emphasis> to run Web Service creation wizard. </para>
+ <para>Let's get through the wizard step-by-step:</para>
+ <figure float="0" id="figure_create_ws_topdown">
+ <title>New Web Service Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_ws_creation1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>First, please select <property moreinfo="none">Top down Java bean Web Service</property> from the Web
+ Service type list, and select a WSDL document from workspace, click on the Server name
+ link on the page will bring you to another dialog. Here you can specify the server to a
+ JBoss Server and Web Service runtime to JBossWS runtime:</para>
+ <figure float="0" id="figure_create_ws_topdown_setserver">
+ <title>Select Server and Web Service runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_ws_creation1_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Click on the <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button to see the next wizard view opened:</para>
+
+ <figure float="0" id="figure_create_ws_topdown1">
+ <title>New Web Service Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_ws_creation1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Click on the <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis> button to proceed:</para>
+ <figure float="0" id="figure_create_ws_topdown_codegen">
+ <title>New Web Service Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_ws_creation2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>On this page, the default package name comes from the namespace of the WSDL document,
+ you also can change it to any valid package name you want. JAX-WS specification should be
+ set to 2.0 if your JBossWS runtime in JBoss Server is JBossWS native runtime. You can
+ specify a catalog file and binding files if you have them. If you want the wizard to
+ generate empty implementation classes for the Web Service, check the <emphasis>
+ <property moreinfo="none">Generate default Web Service implementation classes</property>
+ </emphasis> check box. If you want to update the default Web.xml file with the Web Service
+ servlets configured, check the <emphasis>
+ <property moreinfo="none">Update the default Web.xml</property>
+ </emphasis> check box. Click on the <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis> or on the <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button to generate code.</para>
+
+ <para>Once the Web Service code is generated, you can view the implementation class and add
+ business logic to each method.</para>
+ <figure float="0" id="figure_impl_code">
+ <title>The generated implementation Java code</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_ws_Impl_code_view.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>View the Web.xml file:</para>
+ <figure float="0" id="figure_webxml">
+ <title>Web.xml</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_ws_webxml.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+<para>In the next chapter you will find out how to create a Web service from a Java bean.</para>
+ </section>
+
+ <section id="bottomupws">
+ <title>Creating a Web service from a Java bean using JBossWS runtime</title>
+ <para>The Web Service wizard assists you in creating a new Web service, configuring it for
+ deployment, and then deploying it to the server.</para>
+ <para>To create a Web service from a bean using JBoss WS:</para>
+ <para>Setup <link linkend="preference">JBoss WS and development environment</link>.</para>
+ <para>Create <link linkend="createproject">a Dynamic Web project</link>.</para>
+ <para>Add <link linkend="addfacet">JBossWS Facet</link> to Web project.</para>
+ <para>Create a Web Service from a java bean: </para>
+ <itemizedlist>
+ <listitem>
+ <para>Switch to the Java EE perspective <emphasis>
+ <property moreinfo="none">Window > Open Perspective > Java EE</property></emphasis>.</para>
+ </listitem>
+ <listitem>
+ <para>In the Project Explorer view, select the bean that you created or imported into
+ the source folder of your Web project.</para>
+ <figure float="0">
+ <title>Select the Bean Created</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_bottomup.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">File > New > Other</property></emphasis>. Select Web Services in order to display various Web service wizards.
+ Select the Web Service wizard. Click on the <property moreinfo="none">Next</property> button.</para>
+ <figure float="0">
+ <title>New Web Service</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_bottomup_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem>
+ <para>On the first Web Service wizard page: select <property moreinfo="none">Bottom up Java bean Web
+ service</property> as your Web service type, and select the Java bean from which
+ the service will be created:</para>
+ <figure float="0">
+ <title>Set Web Service Common values</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_bottomup_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Select the stages of Web service development that you want to complete using
+ the slider: </para>
+ <itemizedlist>
+ <listitem>
+ <para>Develop: this will develop the WSDL definition and implementation of
+ the Web service. This includes such tasks as creating modules that will
+ contain generated code, WSDL files, deployment descriptors, and Java
+ files when appropriate.</para>
+ </listitem>
+ <listitem>
+ <para>Assemble: this ensures the project that will host the Web service or
+ client gets associated to an EAR when required by the target application
+ server.</para>
+ </listitem>
+ <listitem>
+ <para>Deploy: this will create the deployment code for the service.</para>
+ </listitem>
+ <listitem>
+ <para>Install: this will install and configure the Web module and EARs on
+ the target server.</para>
+ </listitem>
+ <listitem>
+ <para>Start: this will start the server once the service has been installed
+ on it. The server-config.wsdd file will be generated.</para>
+ </listitem>
+ <listitem>
+ <para>Test: this will provide various options for testing the service, such
+ as using the Web Service Explorer or sample JSPs.</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ <listitem>
+ <para>Select your server: the default server is displayed. If you want to deploy
+ your service to a different server click the link to specify a different server.
+ </para>
+ </listitem>
+ <listitem>
+ <para>Select your runtime: ensure the JBoss WS runtime is selected.</para>
+ </listitem>
+ <listitem>
+ <para>Select the service project: the project selected in your workspace is
+ displayed. To select a different project click on the project link. If you are
+ deploying to JBoss Application Server you will also be asked to select the EAR
+ associated with the project. Ensure that the project selected as the Client Web
+ Project is different from the Service Web Project, or the service will be
+ overwritten by the client's generated artifacts.</para>
+ </listitem>
+ <listitem>
+ <para>If you want to create a client, select the type of proxy to be generated
+ and repeat the above steps for the client. The better way is to create a web
+ service client project separately.</para>
+ </listitem>
+ </itemizedlist>
+ <para>Click on the <property moreinfo="none">Next</property> button.</para>
+ </listitem>
+ <listitem>
+ <para>On the JBoss Web Service Code Generation Configuration page, set the following
+ values:</para>
+ <figure float="0">
+ <title>Set Web Service values for Code Generation</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_bottomup_3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Generate WSDL file: select it, you will get a generated WSDL file in your
+ project. But this wsdl's services' address location values are not a real
+ address. </para>
+ </listitem>
+ <listitem>
+ <para>After the Web service has been created, the following option can become
+ available depending on the options you selected: Update the default web.xm
+ file. If selected, you may test the web service by Explorer.</para>
+ </listitem>
+ </itemizedlist>
+ <para>Click on the <property moreinfo="none">Next</property> button.</para>
+ </listitem>
+ <listitem>
+ <para>On this page, the project is deployed to the server. You can start the server and
+ test the web service. If you want to publish the web service to a UDDI registry, you
+ may click the <property moreinfo="none">Next</property> button to publish it. If not, you may click
+ the <property moreinfo="none">Finish</property> button.</para>
+ <figure float="0">
+ <title>Start a Server</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_bottomup_4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ </itemizedlist>
+ <para>After the Web Service has been created, the following options may become available
+ depending on the options selected:</para>
+ <itemizedlist>
+ <listitem>
+ <para>the generated web services code</para>
+ </listitem>
+ <listitem>
+ <para>If you selected to generate a WSDL file, you will get the file in your project's wsdl folder.</para>
+ <figure float="0">
+ <title>The Generated HelloWorldService.wsdl File in the wsdl Folder</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_bottomup_6.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem>
+ <para>If you selected to update the default web.xml, you will test the web service in
+ the browser. Open the Explorer, input the url for the web service according to
+ web.xml plus <property moreinfo="none">?wsdl.</property>, you will get the WSDL file from Explorer. </para>
+ <figure float="0">
+ <title>The Updated web.xml file</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/topdown/jbossws_bottomup_5.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ </itemizedlist>
+ <para>In the next chapter you will be able to create a Web Service Client from a WSDL document using JBoss WS.</para>
+
+ </section>
+
+</chapter>
+
+
+<chapter id="client" revisionflag="added" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/ws/docs/reference/en/modules/client.xml">
+ <title>Creating a Web Service Client from a WSDL Document using JBoss WS</title>
+ <para>To create a Web Service Client from a WSDL Document using JBoss WS you need to fulfil the following steps:</para>
+ <para>Setup <link linkend="preference">JBoss WS and development environment</link>.</para>
+ <para><link linkend="createproject">Create a Dynamic Web project</link>.</para>
+ <para><link linkend="addfacet">Add JBossWS Facet to Web project</link>.</para>
+ <para>Then you can create a Web Service Client from a WSDL document: </para>
+ <itemizedlist>
+ <listitem>
+ <para>Switch to the Java EE perspective <emphasis><property moreinfo="none">Window > Open Perspective > Java EE</property></emphasis>.</para>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis><property moreinfo="none">File > New > Other</property></emphasis>. Select Web Services in order to display the various Web service wizards. Select the Web Service Client wizard. Click on the <property moreinfo="none">Next</property> button.</para>
+ <figure float="0">
+ <title>New Web Service Client</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/client/jbossws_client.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem>
+ <para>The first and the second Web Service Client wizard pages are the same as for <link linkend="topdownwebservice">Web Service from a WSDL document</link>.</para>
+ <figure float="0">
+ <title>Set Web Service Common values</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/client/jbossws_client_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <figure float="0">
+ <title>Set Web Service values related to WSDL file</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/client/jbossws_client_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The only difference is:</para>
+ <itemizedlist>
+ <listitem>
+ <para><property moreinfo="none">Client Type:</property> Support of Java Proxy only.</para>
+ </listitem>
+ </itemizedlist>
+ <para>Click on the <property moreinfo="none">Finish</property> button.</para>
+ </listitem>
+ </itemizedlist>
+ <para>After the Web Service Client has been created, the following may occur depending on the options you selected:</para>
+ <itemizedlist>
+ <listitem>
+ <para> the generated web service and client codes</para>
+ </listitem>
+ <listitem>
+ <para>a client sample class.</para>
+ <figure float="0">
+ <title>Client Sample Class</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/client/jbossws_client_3.png" scale="80"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ </itemizedlist>
+ <para>JBoss WS use a Java class to test Web Service. A client sample class will be generated, you may run this client as a java application to call a web service.</para>
+</chapter>
+
+
+<chapter id="preference" revisionflag="added" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/ws/docs/reference/en/modules/preference.xml">
+ <title>JBoss WS and development environment</title>
+
+ <para>In this chapter you will learn how to change JBossWS preferences and how to set default server and runtime.</para>
+ <section id="jbosswspreference">
+
+
+ <title>JBossWS Preferences</title>
+
+ <para>In this section you will know how JBossWS preferences can be modified during the
+ development process.</para>
+
+ <para>JBossWS preferences can be set on the JBossWS preference page. Click on
+ <emphasis><property moreinfo="none">Window > Preferences > JBoss Tools > Web > JBossWS
+ Preferences</property>.</emphasis></para>
+
+ <para>On this page you can manage the JBossWS Runtime. Use the appropriate buttons to
+ <property moreinfo="none">Add</property> more runtimes or to <property moreinfo="none">Remove</property> those that
+ are not needed.</para>
+
+ <figure float="0">
+ <title>JBossWS Preferences Page</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/preference/Jbossws_preference.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Clicking on <emphasis>
+ <property moreinfo="none">Add</property>
+ </emphasis> or <emphasis>
+ <property moreinfo="none">Edit</property>
+ </emphasis> button will open the form where you can configure a new JBossWS runtime and
+ change the path to JBossWS runtime home folder, modify the name and version of the
+ existing JBossWS runtime settings. Press <property moreinfo="none">Finish</property> to apply the
+ changes.</para>
+
+ <figure float="0">
+ <title>Edit JBossWS Runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/preference/Jbossws_preference_new.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+
+
+
+ <para>WS container allows Source and JavaDoc locations to be set via the Properties dialog on each contained .jar: right-click on any .jar file in the Project Explorer view, select <emphasis><property moreinfo="none">Properties</property></emphasis>. Choose <emphasis><property moreinfo="none">Java Source Attachment</property></emphasis> and select location (folder, JAR or zip) containing new source for the chosen .jar using one of the suggested options (workspace, external folder or file) or enter the path manually:</para>
+
+ <figure float="0">
+ <title>Classpath Container: Java Source Attachment</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/preference/jbossws_container1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Click on <emphasis><property moreinfo="none">Apply</property></emphasis> and then on <emphasis><property moreinfo="none">Ok</property></emphasis>.</para>
+ <para>To change JavaDoc Location choose <emphasis><property moreinfo="none">Javadoc Location</property></emphasis> and specify URL to the documentation generated by Javadoc. The Javadoc location will contain a file called <emphasis><property moreinfo="none">package-list</property></emphasis>:</para>
+
+ <figure float="0">
+ <title>Classpath Container: Javadoc Location</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/preference/jbossws_container2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Click on <emphasis><property moreinfo="none">Apply</property></emphasis> and then on <emphasis><property moreinfo="none">Ok</property></emphasis>.</para>
+
+
+
+
+
+
+ </section>
+ <section id="serverruntime">
+ <title>Default Server and Runtime</title>
+ <para>Open <emphasis>
+ <property moreinfo="none">Window > Preferences > Web Services > Server and Runtime</property></emphasis>. On this page, you can specify a default server and runtime.</para>
+ <para>For ease of use, the better way is to set runtime to JBoss WS.</para>
+ <para>After server and runtime are specified, click on the <property moreinfo="none">Apply</property> button
+ to save the values.</para>
+ <figure float="0">
+ <title>Specifing a default server and runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/preference/jbossws_server_runtime.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On the whole, this guide covers the fundamental concepts of work with tooling for
+ <property moreinfo="none">JBossWS</property>. It describes how to easily create a Web Service and a Web Service Client using
+ JBossWS Runtime and adjust JBossWS and development environment as well.</para>
+
+ <para>If the information on JBossWS tools in this guide isn't enough for you, ask
+ questions on our
+ <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">forum</ulink>. Your comments and suggestions are also welcome.</para>
+ </section>
+</chapter>
+
+</book>
14 years, 4 months
JBoss Tools SVN: r20338 - trunk/struts/docs/struts_tools_tutorial/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2010-02-17 14:56:55 -0500 (Wed, 17 Feb 2010)
New Revision: 20338
Modified:
trunk/struts/docs/struts_tools_tutorial/en/master.xml
trunk/struts/docs/struts_tools_tutorial/en/master_output.xml
Log:
<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:9pt;font-family:Sans Serif">
<p>https://jira.jboss.org/jira/browse/JBDS-1104 - Updated versions,corrected master_output file</p>
</body></html>
Modified: trunk/struts/docs/struts_tools_tutorial/en/master.xml
===================================================================
--- trunk/struts/docs/struts_tools_tutorial/en/master.xml 2010-02-17 19:53:00 UTC (rev 20337)
+++ trunk/struts/docs/struts_tools_tutorial/en/master.xml 2010-02-17 19:56:55 UTC (rev 20338)
@@ -43,14 +43,14 @@
<author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina(a)exadel.com</email></author>
<copyright>
- <year>2007</year>
+ <year>2007</year>
<year>2008</year>
- <year>2009</year>
+ <year>2009</year>
<year>2010</year>
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 3.1.0.CR1
+ Version: 3.1.0.CR2
</releaseinfo>
<abstract>
Modified: trunk/struts/docs/struts_tools_tutorial/en/master_output.xml
===================================================================
--- trunk/struts/docs/struts_tools_tutorial/en/master_output.xml 2010-02-17 19:53:00 UTC (rev 20337)
+++ trunk/struts/docs/struts_tools_tutorial/en/master_output.xml 2010-02-17 19:56:55 UTC (rev 20338)
@@ -22,1371 +22,1373 @@
<!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>Struts Tools Tutorial</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/struts_tools_tutoria...">PDF version</ulink>
- </para>
-</abstract>
-
-
- </bookinfo>
-
- <toc></toc>
-
-
-<chapter id="introduction" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_tutorial/en/modules/introduction.xml" xreflabel="introduction">
- <?dbhtml filename="introduction.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
- <title>Introduction</title>
- <para>The following chapters describe how to deal with classic/old style of Struts development. We
- recommend users to use <ulink url="../../seam/html_single/index.html">JBoss Seam</ulink> to
- simplify development, but until then you can read about classical Struts usage here.</para>
-
- <para>We are going to show you how to create a simple <emphasis>
- <property moreinfo="none">Struts application</property>
- </emphasis> using the JBoss Tools. The completed application will ask a user to enter
- a name and click a button. The resulting new page will display the familiar message,
- "Hello <name>!"</para>
- <para>This document will show you how to create such an application from the beginning, along the
- way demonstrating some of the powerful features of JBoss Tools. With the help of our tutorial you will design the
- application, generate stub code for the application, fill in the stub coding, compile the
- application, and finally run it all from inside the Eclipse.</para>
-
- <section>
- <title>Key Features Struts Tools</title>
-
- <para>For a start, we propose you to look through the table of main features of Struts
- Tools:</para>
- <table>
-
- <title>Key Functionality of Struts Tools</title>
- <tgroup cols="2">
-
- <colspec align="left" colnum="1" colwidth="2*"></colspec>
- <colspec colnum="2" colwidth="4*"></colspec>
-
-
- <thead>
- <row>
- <entry>Feature</entry>
- <entry>Benefit</entry>
-
- </row>
- </thead>
- <tbody>
- <row>
- <entry><para>Struts Support</para></entry>
- <entry><para>Step-by-step wizards for creating a new struts project with a number
- of predefined templates, importing existing ones and adding struts
- capabilities to non-struts web projects.</para></entry>
-
- </row>
-
- <row>
- <entry><para>Support for Struts Configuration File</para></entry>
- <entry><para>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. Working with
- struts projects that have multiple modules. Possibility to use Struts
- configuration file debugger allowing to set break points on struts
- diagram and then launch the server in debug mode.</para></entry>
-
- </row>
-
- <row>
- <entry><para>Support for Struts modules</para></entry>
- <entry><para>A Struts module (struts-config.xml) is automatically created while
- creating a new project. There is also possibility to add new ones or edit
- already existing modules in your existing project or while importing Struts project.</para></entry>
-
- </row>
-
- <row>
- <entry><para>Verification and Validation</para></entry>
- <entry><para>All occurring 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.</para></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="struts_application" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_tutorial/en/modules/struts_application.xml" xreflabel="struts_application">
- <?dbhtml filename="struts_application.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Struts</keyword>
- <keyword>Struts Application</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Creating a Simple Struts Application</title>
-
- <para>Firstly, we assume that you have already launched Eclipse with <property moreinfo="none">JBoss Tools</property> installed and
- also that the <property moreinfo="none">Web Development perspective</property> is the current perspective. (If not, make it
- active by selecting <emphasis>
- <property moreinfo="none">Window > Open Perspective > Other > Web
- Development</property>
- </emphasis> from the menu bar.)</para>
-
- <section id="StartingUp">
- <title>Starting Up</title>
- <para>We are first going to create a new project for the application.</para>
- <itemizedlist>
- <listitem>
- <para>Go to the menu bar and select <emphasis>
- <property moreinfo="none">File > New > Struts Project</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Next enter "StrutsHello" as the project name</para>
- </listitem>
- <listitem>
- <para>Leave everything else as it is, and click <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>If you have server runtime already defined, just pass to next point. Otherwise in the <emphasis>
- <property moreinfo="none">Runtime</property></emphasis> section click the <emphasis>
- <property moreinfo="none">New</property></emphasis> button and target at needed server runtime environment. Click <emphasis>
- <property moreinfo="none">Finish</property>.</emphasis></para>
- </listitem>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Make sure that <emphasis>
- <property moreinfo="none">struts-bean.tld</property>
- </emphasis>, <emphasis>
- <property moreinfo="none">struts-html.tld</property>
- </emphasis>, and <emphasis>
- <property moreinfo="none">struts-logic.tld</property>
- </emphasis> are checked in the list of included tag libraries and then hit <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <para>A "StrutsHello" node should appear in the <property moreinfo="none">Package
- Explorer view</property>.</para>
- <itemizedlist>
- <listitem>
- <para>Click the plus sign next to <emphasis>
- <property moreinfo="none">StrutsHello</property>
- </emphasis> to reveal the child nodes</para>
- </listitem>
- <listitem>
- <para>Click the plus sign next to <emphasis>
- <property moreinfo="none">WebContent</property>
- </emphasis> under <emphasis>
- <property moreinfo="none">StrutsHello</property></emphasis></para>
- </listitem>
- <listitem>
- <para>Click the plus sign next to <emphasis>
- <property moreinfo="none">WEB-INF</property>
- </emphasis> under <emphasis>
- <property moreinfo="none">WebContent</property></emphasis></para>
- </listitem>
- <listitem>
- <para>Then, double-click on the <emphasis>
- <property moreinfo="none">struts-config.xml</property>
- </emphasis> node to display a diagram of the Struts application configuration
- file in the editing area</para>
- </listitem>
- </itemizedlist>
- <para>At this point, its empty except for the background grid lines.</para>
- </section>
-
- <section id="CreatingtheApplicationComponents">
- <?dbhtml filename="CreatingtheApplicationComponents.html"?>
- <title>Creating the Application Components</title>
- <para>Now, we will design the application by creating the individual components as
- placeholders first. (We don't have to complete all of the details inside the components
- until afterwards.)</para>
- <section id="CreatingJSPPagePlaceholders">
- <title>Creating JSP Page Placeholders</title>
- <para>Next, let's create and place two JSP pages. We will not write any code
- for the files, but only create them as placeholders so that we can create links to
- them in the diagram. We will write the code a little bit later.</para>
- <section id="CreatingthePagePlaceholders">
- <title>Creating the Page Placeholders</title>
- <itemizedlist>
- <listitem>
- <para>Bring the <property moreinfo="none">Web Projects view</property> to the front of the <property moreinfo="none">Package Explorer view</property>
- by selecting the <emphasis>
- <property moreinfo="none">Web Projects</property>
- </emphasis> tab next to that tab.</para>
- </listitem>
- <listitem>
- <para>Right-click the <emphasis>
- <property moreinfo="none">StrutsHello > WEB-ROOT (WebContent)</property>
- </emphasis> folder in the <property moreinfo="none">Web Projects view</property> and select <emphasis>
- <property moreinfo="none">New > Folder...</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Enter <emphasis>
- <property moreinfo="none">pages</property>
- </emphasis> for a folder name and click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
-
- <listitem>
- <para>We will keep our presentation files in this folder</para>
- </listitem>
-
- <listitem>
- <para>Right-click the <emphasis>
- <property moreinfo="none">pages</property></emphasis> folder and select <emphasis>
- <property moreinfo="none">New > File > JSP...</property>
- </emphasis>
- </para>
- </listitem>
- <listitem>
- <para>For Name type in <emphasis>
- <property moreinfo="none">inputname</property>
- </emphasis> (the JSP extension will be automatically added to the file),
- for Template select <emphasis>
- <property moreinfo="none">StrutsForm</property>
- </emphasis> and then click on the <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button</para>
- </listitem>
- <listitem>
- <para>Right-click the <emphasis>
- <property moreinfo="none">pages</property></emphasis> folder again and select <emphasis>
- <property moreinfo="none">New > File > JSP...</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>For Name type in <emphasis>
- <property moreinfo="none">greeting</property>
- </emphasis>, for Template leave as <emphasis>
- <property moreinfo="none">Blank</property>,</emphasis> and then click on the <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button</para>
- </listitem>
- </itemizedlist>
- <para>Just leave these files as is for now.</para>
- </section>
- <section id="PlacingthePagePlaceholders">
- <title>Placing the Page Placeholders</title>
- <para>Lets now place the two pages just created on the diagram.</para>
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">struts-config.xml</property>
- </emphasis> tab in the editing area to bring the diagram to the
- front</para>
- </listitem>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">inputname.jsp</property>
- </emphasis> page in the <property moreinfo="none">Web Projects view</property>, drag it onto the diagram, and
- drop it</para>
- </listitem>
- <listitem><para>Click on the <emphasis>
- <property moreinfo="none">greeting.jsp</property>
- </emphasis> page in the <property moreinfo="none">Web Projects view</property>, drag it onto the diagram, and
- drop it to the right of the <emphasis>
- <property moreinfo="none">/pages/inputname.jsp</property>
- </emphasis> icon with some extra space</para></listitem>
- </itemizedlist>
- <para>You should now have two JSP pages in the diagram.</para>
- </section>
- </section>
- <section id="CreatinganActionMappings">
- <title>Creating an Action Mappings</title>
- <para>Using a context menu on the diagram, we are next going to create an Action
- mapping.</para>
- <itemizedlist>
- <listitem>
- <para>Right-click between the two icons and select <emphasis>
- <property moreinfo="none">New > Action</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Enter the following values:</para>
- </listitem>
- </itemizedlist>
- <table>
- <title>Action values</title>
- <tgroup cols="2">
- <tbody>
- <row>
- <entry>path</entry>
- <entry>/greeting</entry>
- </row>
- <row>
- <entry>name</entry>
- <entry>GetNameForm</entry>
- </row>
- <row>
- <entry>scope</entry>
- <entry>request</entry>
- </row>
- <row>
- <entry>type</entry>
- <entry>sample.GreetingAction</entry>
- </row>
- <row>
- <entry>validate</entry>
- <entry><leave blank></entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>("GetNameForm" is the name for a form bean that we will create
- later.)</para>
- <itemizedlist>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
-
- <para>The <emphasis>
- <property moreinfo="none">/greeting</property>
- </emphasis> action should appear in four places, in the diagram, under the
- <emphasis>
- <property moreinfo="none">action-mappings</property></emphasis> node, under the <emphasis>
- <property moreinfo="none">struts-config.xml</property></emphasis> node in Tree view, in <property moreinfo="none">Web Projects
- view</property> and in the <property moreinfo="none">Outline view</property>. Also, note the asterisk to the right of the name,
- <emphasis>
- <property moreinfo="none">struts-config.xml</property>,</emphasis> in the <property moreinfo="none">Outline view</property> showing that the file has been changed, but
- not saved to disk.</para>
- </section>
- <section id="CreatingaLink">
- <title>Creating a Link</title>
- <para>Let's now create a link from the <emphasis>
- <property moreinfo="none">inputname.jsp</property></emphasis> page to the action.</para>
- <itemizedlist>
- <listitem>
- <para>On the left-hand side of the diagram in the column of icons, click on the Create New Connection
- icon( <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/struts_application/struts_application_1.png"></imagedata>
- </imageobject>
- </inlinemediaobject>).</para>
- </listitem>
- </itemizedlist>
- <itemizedlist>
- <listitem>
- <para>In the connect-the-components mode you are in now, click on the <emphasis>
- <property moreinfo="none">/pages/inputname.jsp</property>
- </emphasis> icon in the diagram and then click on the <emphasis>
- <property moreinfo="none">/greeting</property>
- </emphasis> action</para>
- </listitem>
- </itemizedlist>
- <para>A link will be created from the page to the action.</para>
- </section>
- <section id="CreatingaForward">
- <title>Creating a Forward</title>
- <para>Next, we are going to create a forward for the action.</para>
- <itemizedlist>
- <listitem>
- <para>On the left-hand side of the diagram in the column of icons, click on
- the Create New Connection
- icon( <inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/struts_application/struts_application_1.png"></imagedata>
- </imageobject>
- </inlinemediaobject>), again.</para>
- </listitem>
- </itemizedlist>
-
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">/greeting</property>
- </emphasis> action icon in the diagram and then click on the <emphasis>
- <property moreinfo="none">pages/greeting.jsp</property>
- </emphasis> icon</para>
- </listitem>
- <listitem>
- <para>That's it. A link will be drawn from the actions new greeting
- forward to the <emphasis>
- <property moreinfo="none">greeting.jsp</property></emphasis> JSP page. Note that the forwards name will be
- set based on the name of the target JSP file name. If you don't
- like it, you can easily change it</para>
- </listitem>
- <listitem>
- <para>Select the <emphasis>
- <property moreinfo="none">Tree</property>
- </emphasis> tab at the bottom of the editor window (between Diagram and
- Source)</para>
- </listitem>
- <listitem>
- <para>Expand the <emphasis>
- <property moreinfo="none">struts-config.xml/action-mappings/ /greeting</property>
- </emphasis> node and then select the greeting forward</para>
- </listitem>
- <listitem>
- <para>In the Properties Editor to the right, change the text to
- "sayHello" in the <emphasis>
- <property moreinfo="none">Name</property></emphasis> field</para>
- </listitem>
- <listitem>
- <para>Select the <emphasis>
- <property moreinfo="none">Diagram</property>
- </emphasis> tab at the bottom of the editor window and see how the diagram
- is also updated to reflect the change</para>
- </listitem>
- </itemizedlist>
- </section>
- <section id="CreatingaGlobalForward">
- <title>Creating a Global Forward</title>
- <para>One last component that we need to create in the diagram is a global forward.</para>
- <itemizedlist>
- <listitem>
- <para>Somewhere in the top-left corner of diagram, right-click and select <emphasis>
- <property moreinfo="none">New > Global Forward</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Enter <emphasis>
- <property moreinfo="none">getName</property>
- </emphasis> in the <emphasis>
- <property moreinfo="none">Name</property></emphasis> field</para>
- </listitem>
- <listitem>
- <para>Select the <emphasis>
- <property moreinfo="none">Change...</property>
- </emphasis>button for Path</para>
- </listitem>
- <listitem>
- <para>In the Edit Path window, switch to the <emphasis>
- <property moreinfo="none">Pages</property>
- </emphasis> tab</para>
- </listitem>
- <listitem>
- <para>Expand the <emphasis>
- <property moreinfo="none">StrutsHello > WEB-ROOT (WebContent) > pages</property>
- </emphasis> node and then select the inputname.jsp page</para>
- </listitem>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Ok</property>
- </emphasis>.</para>
- </listitem>
- <listitem>
- <para>Leave the rest of the fields blank and click <emphasis>
- <property moreinfo="none">OK</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <para>A forward object now appears on the diagram and also in the global-forwards folder
- in the Outline view.</para>
- <itemizedlist>
- <listitem>
- <para>Tidy up the diagram, by clicking and dragging around each icon, so that
- the diagram looks something like this:</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Diagram View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts_application/struts_application_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section id="CreatingaFormBean">
- <title>Creating a Form Bean</title>
- <para>One last thing that we need to do is to create a form bean.</para>
- <itemizedlist>
- <listitem>
- <para>Switch to the Tree viewer in the editor for the <emphasis>
- <property moreinfo="none">struts-config.xml</property></emphasis> file, by
- selecting the <emphasis>
- <property moreinfo="none">Tree</property>
- </emphasis> tab at the bottom of the editor window</para>
- </listitem>
- <listitem>
- <para>Right-click <emphasis>
- <property moreinfo="none">struts-config.xml > form-beans</property>
- </emphasis> and select Create Form Bean</para>
- </listitem>
- <listitem>
- <para>Enter <emphasis>
- <property moreinfo="none">GetNameForm</property>
- </emphasis> in the name field and <emphasis>
- <property moreinfo="none">sample.GetNameForm</property>
- </emphasis> for type</para>
- </listitem>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>To save your changes to struts-config.xml, select <emphasis>
- <property moreinfo="none">File > Save</property>
- </emphasis> from the menu bar</para>
- </listitem>
- </itemizedlist>
- <para>Note the disappearance of the asterisk next to the name, <emphasis>
- <property moreinfo="none">struts-config.xml</property>.</emphasis></para>
- </section>
- </section>
-</chapter>
-
-<chapter id="generating_stub" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_tutorial/en/modules/generating_stub.xml" xreflabel="generating_stub">
- <?dbhtml filename="generating_stub.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Struts</keyword>
- <keyword>Struts Application</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Generating Stub Coding</title>
- <para>We are done with designing the application through the diagram. Now we need to write
- code for the action component. We also need to write an action class for the <emphasis>
- <property moreinfo="none">/greeting</property>
- </emphasis> mapping along with a FormBean. To aid in the coding phase, JBoss Developer
- Studio can generate Java class stubs for all of the components shown in the diagram.</para>
- <itemizedlist>
- <listitem>
- <para>Switch back to the diagram, by selecting the <emphasis>
- <property moreinfo="none">Diagram</property>
- </emphasis> tab at the bottom of the editor window</para>
- </listitem>
- <listitem>
- <para>Right-click a blank space in the diagram and select <emphasis>
- <property moreinfo="none">Generate Java Code</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Leave everything as is in the dialog box and click <emphasis>
- <property moreinfo="none">Generate</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <para>You should see a screen that says:</para>
- <para>Generated classes: 2</para>
- <para>Actions: 1</para>
- <para>Form beans: 1</para>
- <itemizedlist>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <para>The Java files will be generated in a <emphasis>
- <property moreinfo="none">JavaSource > sample</property>
- </emphasis> folder that you can see in the <property moreinfo="none">Package Explorer view</property> under the
- "StrutsHello" node. One Action stub and one FormBean stub will have
- been generated.</para>
- </chapter>
-
-<chapter id="coding_files" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_tutorial/en/modules/coding_files.xml" xreflabel="coding_files">
- <?dbhtml filename="coding_files.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Struts</keyword>
- <keyword>Struts Application</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Coding the Various Files</title>
- <para>We will now code both the Java stub classes just generated, the JSP files left in as
- placeholders from previous steps, and a new start JSP page we will have to create.</para>
- <section id="JavaStubClasses">
- <title>Java Stub Classes</title>
- <itemizedlist>
- <listitem>
- <para>To finish the two Java classes, switch to the <emphasis>
- <property moreinfo="none">Package Explorer</property>
- </emphasis> view and expand the <emphasis>
- <property moreinfo="none">JavaSource > sample</property>
- </emphasis> folder</para>
- </listitem>
- </itemizedlist>
- <section id="GetNameForm.java">
- <title>GetNameForm.java</title>
- <itemizedlist>
- <listitem>
- <para>Double-click <emphasis>
- <property moreinfo="none">GetNameForm.java</property>
- </emphasis> for editing</para>
- </listitem>
-
- <listitem>
- <para>You are looking at a Java stub class that was generated by JBoss
- Tools. Now we are going to edit the file</para>
- </listitem>
-
- <listitem>
- <para>Add the following attributes at the beginning of the class:</para>
- </listitem>
- </itemizedlist>
- <programlisting format="linespecific" role="JAVA"><![CDATA[private String name = "";
-]]></programlisting>
-
- <itemizedlist>
- <listitem>
- <para>Inside the reset method, delete the TO DO and throw lines and
- add:</para>
- </listitem>
- </itemizedlist>
- <programlisting format="linespecific" role="JAVA"><![CDATA[this.name = "";
-]]></programlisting>
-
- <itemizedlist>
- <listitem>
- <para>Inside the validate method, delete the TO DO and throw lines and
- add:</para>
- </listitem>
- </itemizedlist>
- <programlisting format="linespecific" role="JAVA"><![CDATA[ActionErrors errors = new ActionErrors();
- return errors;
-]]></programlisting>
-
- <itemizedlist>
- <listitem>
- <para>Right-click and select <emphasis>
- <property moreinfo="none">Source > Generate Getters and Setters</property>
- </emphasis>from the context menu</para>
- </listitem>
- <listitem>
- <para>In the dialog box, check the check box for <emphasis>
- <property moreinfo="none">name</property>,</emphasis>
- select First method for Insertion point, and click on the <emphasis>
- <property moreinfo="none">OK</property>
- </emphasis> button</para>
- </listitem>
- </itemizedlist>
- <para>The final <emphasis>
- <property moreinfo="none">GetNameForm.java</property></emphasis> file should look like this:</para>
- <programlisting format="linespecific" role="JAVA"><![CDATA[package sample;
-import javax.servlet.http.HttpServletRequest;
-import org.apache.struts.action.ActionErrors;
-import org.apache.struts.action.ActionMapping;
-
-public class GetNameForm extends org.apache.struts.action.ActionForm
-{
-
- private String name = "";
-
- public String getName()
- {
- return name;
- }
- public void setName(String name)
- {
- this.name = name;
- }
-
- public GetNameForm()
- {
- }
-
- public void reset(ActionMapping actionMapping, HttpServletRequest request)
- {
- this.name = "";
- }
-
- public ActionErrors validate(ActionMapping actionMapping,
- HttpServletRequest request)
- {
- ActionErrors errors = new ActionErrors();
- return errors;
- }
-}
-]]></programlisting>
-
- <itemizedlist>
- <listitem>
- <para>Save the file</para>
- </listitem>
- </itemizedlist>
- </section>
- <section id="GreetingAction.java">
- <title>GreetingAction.java</title>
- <itemizedlist>
- <listitem>
- <para>Open <emphasis>
- <property moreinfo="none">GreetingAction.java</property></emphasis> for editing</para>
- </listitem>
- <listitem>
- <para>Inside the execute method, delete the TO DO lines and add the
- following:</para>
- </listitem>
- </itemizedlist>
-
- <programlisting format="linespecific" role="JAVA"><![CDATA[String name = ((GetNameForm)form).getName();
-String greeting = "Hello, "+name+"!";
-((GetNameForm)form).setName(greeting);
-return mapping.findForward(FORWARD_sayHello);
-]]></programlisting>
-
- <para>The final version of <emphasis>
- <property moreinfo="none">GreetingAction.java</property></emphasis> should look like this:</para>
-
- <programlisting format="linespecific" role="JAVA"><![CDATA[package sample;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.struts.action.ActionForm;
-import org.apache.struts.action.ActionForward;
-import org.apache.struts.action.ActionMapping;
-
-public class GreetingAction extends org.apache.struts.action.Action
-{
-
- // Global Forwards
- public static final String GLOBAL_FORWARD_getName = "getName";
-
- // Local Forwards
- public static final String FORWARD_sayHello = "sayHello";
-
- public GreetingAction()
- {
- }
- public ActionForward execute(ActionMapping mapping, ActionForm form,
- HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- String name = ((GetNameForm)form).getName();
- String greeting = "Hello, "+name+"!";
- ((GetNameForm)form).setName(greeting);
- return mapping.findForward(FORWARD_sayHello);
- }
-}
-]]></programlisting>
- <itemizedlist>
- <listitem>
- <para>Save the file</para>
- </listitem>
- <listitem>
- <para>Close the editors for the two Java files</para>
- </listitem>
- </itemizedlist>
- <para>The last thing left to do is to code the JSP files whose editors should still
- be open from having been created as placeholders.</para>
- </section>
- </section>
- <section id="JSPPages">
- <title>JSP Pages</title>
- <section id="inputname.jsp">
- <title>inputname.jsp</title>
- <para>In this page, the user will enter any name and click the <emphasis>
- <property moreinfo="none">submit</property>
- </emphasis> button. Then, the greeting action will be called through the form.</para>
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">inputname.jsp</property>
- </emphasis> tab in the Editing area to bring its editor forward</para>
- </listitem>
- <listitem>
- <para>In the Web Projects view, expand <emphasis>
- <property moreinfo="none">StrutsHello > Configuration > default
- > struts-config.xml > action-mappings</property>
- </emphasis> and select <emphasis>
- <property moreinfo="none">/greeting</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Drag it and drop it between the quotes for the <emphasis role="italic">
- <property moreinfo="none">"action"</property>
- </emphasis> attribute to the
- <code><html:form></code>
- element in the Source pane of the editor</para>
- </listitem>
- <listitem>
- <para>Then type this text on a new line just below this line:</para>
- <programlisting format="linespecific" role="XML"><![CDATA[Input name:
- ]]></programlisting>
- </listitem>
-
- <listitem>
- <para>Select the <emphasis>
- <property moreinfo="none">Visual</property>
- </emphasis> pane of the editor</para>
- </listitem>
- <listitem>
- <para>Then, in the JBoss Tools Palette, expand the <emphasis>
- <property moreinfo="none">Struts Form</property>
- </emphasis> library, select <emphasis>
- <property moreinfo="none">text</property>
- </emphasis>, and drag it onto the box
- <note>
- <title>Note:</title>
- <para>By default there are only four groups on the JBoss Tools
- Palette. If you wish to make some group visible click the <emphasis>
- <property moreinfo="none">Show/Hide</property>
- </emphasis> button on the top of palette and in the prompted
- dialog check the group (or groups) you want to be shown.</para>
- </note>
- </para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>JBoss Tools Palette</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts_application/struts_application_3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>In the Insert Tag dialog box, type in name for property and select <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>In the StrutsForm library in the <property moreinfo="none">JBoss Tools Palette</property>, select <emphasis>
- <property moreinfo="none">submit</property>
- </emphasis>, and drag it to right after the text box in the Visual pane
- of the editor</para>
- </listitem>
- <listitem>
- <para>Right-click the <emphasis>
- <property moreinfo="none">submit</property>
- </emphasis> button and select
- <code><html:submit></code>
- Attributes from the context menu</para>
- </listitem>
- <listitem>
- <para>In the Attributes dialog box, select the <emphasis>
- <property moreinfo="none">value</property>
- </emphasis> field and type in "Say Hello!" for its
- value</para>
- </listitem>
- </itemizedlist>
- <para>After tidying the page source, the Editor window for the file should look
- something like this:</para>
- <figure float="0">
- <title>Editor Window</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts_application/struts_application_4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section id="greeting.jsp">
- <title>greeting.jsp</title>
- <para>Next, we will fill in the result page.</para>
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">greeting.jsp</property>
- </emphasis> tab in the Editing area to bring its editor forward</para>
- </listitem>
- <listitem>
- <para>Type in the following code:</para>
- </listitem>
- </itemizedlist>
- <programlisting format="linespecific" role="XML"><![CDATA[<html>
-<head>
- <title>Greeting</title>
-</head>
- <body>
- <p>
- </p>
- </body>
-</html>
-]]></programlisting>
-
- <para>To complete editing of this file, we will use macros from the <property moreinfo="none">JBoss Tools
- Palette</property>. This palette is a view that should be available to the right of the
- editing area.</para>
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">Struts Common</property>
- </emphasis> folder in the <property moreinfo="none">JBoss Tools Palette</property> to open it</para>
- </listitem>
- <listitem>
- <para>Position the cursor at the beginning of the <emphasis>
- <property moreinfo="none">greeting.jsp</property></emphasis> file in the
- Source pane and then click on <emphasis>
- <property moreinfo="none">bean taglib</property></emphasis> in the <property moreinfo="none">JBoss Tools
- Palette</property></para>
- </listitem>
- </itemizedlist>
- <para>This will insert the following line at the top of the file:</para>
- <programlisting format="linespecific" role="JAVA"><![CDATA[
-<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
-]]></programlisting>
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">Struts Bean</property>
- </emphasis> folder in the <property moreinfo="none">JBoss Tools Palette</property> to open it</para>
- </listitem>
- <listitem>
- <para>Position the cursor inside the
- <code><p></code>
- element</para>
- </listitem>
- <listitem>
- <para>Click on <emphasis>
- <property moreinfo="none">write</property></emphasis> in the <property moreinfo="none">JBoss Tools Palette</property></para>
- </listitem>
- <listitem>
- <para>Type in "GetNameForm" for the <emphasis role="italic">
- <property moreinfo="none">name</property>
- </emphasis> attribute and add a <emphasis role="italic">
- <property moreinfo="none">property</property>
- </emphasis> attribute with "name" as its
- value</para>
- </listitem>
- </itemizedlist>
- <para>The editor should now look like this:</para>
- <figure float="0">
- <title>Editor Window</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts_application/struts_application_5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section id="index.jsp">
- <title>index.jsp</title>
- <para>Finally, we will need to create and edit an <emphasis>
- <property moreinfo="none">index.jsp</property></emphasis> page. This page will use
- a Struts forward to simply redirect us to the getName global forward.</para>
- <itemizedlist>
- <listitem>
- <para>In the Web Projects view, right-click on <emphasis>
- <property moreinfo="none">StrutsHello > WEB-ROOT(WebContent)</property>
- </emphasis> node and select <emphasis>
- <property moreinfo="none">New > File > JSP</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Type <emphasis>
- <property moreinfo="none">index</property></emphasis> for Name and click on the <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button</para>
- </listitem>
- <listitem>
- <para>On the <property moreinfo="none">JBoss Tools Palette</property>, select the <emphasis>
- <property moreinfo="none">Struts Common</property>
- </emphasis> folder of macros by clicking on it in the palette</para>
- </listitem>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">logic taglib</property></emphasis> icon</para>
- </listitem>
- <listitem>
- <para>Press the <emphasis>
- <property moreinfo="none">Enter</property>
- </emphasis> key in the editor to go to the next line</para>
- </listitem>
- <listitem>
- <para>Back on the palette, select the <emphasis>
- <property moreinfo="none">Struts Logic</property>
- </emphasis> folder of macros</para>
- </listitem>
- <listitem>
- <para>Click on <emphasis>
- <property moreinfo="none">redirect</property></emphasis></para>
- </listitem>
- <listitem>
- <para>Delete the ending tag, put a forward slash in front of the closing
- angle bracket, and type "forward=getName" in front of
- the slash</para>
- </listitem>
- </itemizedlist>
- <para>The finished code for the page is shown below:</para>
- <programlisting format="linespecific" role="JAVA"><![CDATA[<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
-<logic:redirect forward="getName"/>
-]]></programlisting>
- <itemizedlist>
- <listitem>
- <para>To save all the edits to files, select <emphasis>
- <property moreinfo="none">File>Save All</property>
- </emphasis> from the menu bar</para>
- </listitem>
- </itemizedlist>
- </section>
- </section>
- </chapter>
-
-<chapter id="compiling_and_running" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_tutorial/en/modules/compiling_and_running.xml" xreflabel="compiling_and_running">
- <?dbhtml filename="compiling_and_running.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Struts</keyword>
- <keyword>Struts Application</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Compiling the Classes and Running the Application</title>
-
- <para>As this is the Eclipse environment, no explicit compilation step is required. By
- default, Eclipse compiles as you go.</para>
-
- <para>Thus at this point everything is ready for running our application without having to leave JBoss
- Developer Studio by using the JBoss Application Server engine that comes with the JBoss
- Developer Studio. For controlling JBoss AS within JBoss Developer Studio, there is JBoss
- Server view.</para>
- <figure float="0">
- <title>JBoss Server Panel</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts_application/struts_application_6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Start up JBoss AS by clicking on the icon in JBoss Server view. (If JBoss AS
- is already running, stop it by clicking on the red icon and then start it again.
- Remember, the Struts run-time requires restarting the servlet engine when any
- changes have been made.)</para>
- </listitem>
- <listitem>
- <para>After the messages in the Console tabbed view stop scrolling, JBoss AS is
- available. At this point, right-click on the getName global forward in the
- struts-config.xml diagram view and select Run on Server.</para>
- </listitem>
- </itemizedlist>
- <para>The browser should appear with the application started.</para>
- </chapter>
-
-<chapter id="struts_validation" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_tutorial/en/modules/struts_validation.xml" xreflabel="struts_validation">
- <?dbhtml filename="struts_validation.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Struts</keyword>
- <keyword>Struts Validation</keyword>
- </keywordset>
- </chapterinfo>
-<title>Struts Validation Examples</title>
-
-<para><property moreinfo="none">Validation</property> of input is an important part of any Web application. All Apache Jakarta frameworks,
-including Struts, can use a common Jakarta Validation Framework for streamlining this aspect of Web
-application development. The Validation Framework allows you to define validation rules and then apply these rules on the client-side or the server-side.</para>
-
- <para>JBoss Developer Studio makes using the <property moreinfo="none">Validation Framework</property> in Struts even easier with the help of a specialized editor for the XML files that controls validation in a project. In this document, we'll show you how this all works by creating some simple client-side validation and server-side validation examples.</para>
-
-<section id="StartingPoint">
-<?dbhtml filename="StartingPoint.html"?>
-<title>Starting Point</title>
-<para>The example assumes that you have already created our sample "StrutsHello" application from the
-Getting Started Guide for Creating a Struts Application. You should have the JBoss Developer Studio perspective
- open on this StrutsHello project.</para>
-</section>
-
-<section id="DefiningTheValidationRule">
-<?dbhtml filename="DefiningTheValidationRule.html"?>
-<title>Defining the Validation Rule</title>
-<para>In these steps you will set up the validation that can be used for either client-side or
-server side validation. You need to enable validation as a part of the project, define an error message, and tie it into an appropriate part of the application.</para>
-
-<itemizedlist>
-<listitem><para>Right-click on a "plug-ins" node under the <emphasis><property moreinfo="none">StrutsHello > Configuration > default > struts-config.xml</property></emphasis> node in the Web Projects view and select <emphasis><property moreinfo="none">Create Special Plugin > Validators</property></emphasis> from the context menu</para></listitem>
-<listitem><para>Further down in the Web Projects view, right-click on the
-<emphasis><property moreinfo="none">StrutsHello > ResourceBundles</property></emphasis> node and select <emphasis><property moreinfo="none"> New > Properties File...</property></emphasis>from the context menu</para></listitem>
-<listitem><para>In the dialog box, click on the <emphasis><property moreinfo="none">Browse...</property></emphasis>button next to the Folder field, expand the
- JavaSource folder in this next dialog box, select the sample subfolder, and click on the <emphasis><property moreinfo="none">OK</property></emphasis> button</para></listitem>
- <listitem><para>Back in the first dialog box, type in "applResources" for the Name field and click on the <emphasis><property moreinfo="none">Finish</property></emphasis> button</para></listitem>
-<listitem><para>Right-click on a newly created file and select <emphasis><property moreinfo="none">Add > Default Error Messages</property></emphasis>
- from the context menu</para></listitem>
-
-<listitem><para>Drag up the sample.applResources icon until you can drop it on the resources folder under struts-config.xml</para></listitem>
-<listitem><para>Select<emphasis><property moreinfo="none"> File > Save </property></emphasis>All from the menu bar</para></listitem>
-<listitem><para>Select validation.xml under the <emphasis><property moreinfo="none">StrutsHello > Validation</property></emphasis> node and double-click it to open it with the JBoss Tools XML Editor</para></listitem>
-<listitem><para>Here you must create a Formset.</para></listitem>
-<listitem><para>In the validation.xml file editor click the button <emphasis><property moreinfo="none">Create Formset</property></emphasis> on the panel <emphasis><property moreinfo="none">Formsets</property></emphasis></para></listitem>
-<listitem><para>In the dialog <emphasis><property moreinfo="none">Add Formset</property></emphasis> fill the fields <emphasis><property moreinfo="none">Language</property></emphasis> and <emphasis><property moreinfo="none">Country</property></emphasis> or just leave them empty to create a default formset. Click <emphasis><property moreinfo="none">OK</property></emphasis></para></listitem>
-</itemizedlist>
-<figure float="0">
- <title>Create Formset</title>
-<mediaobject>
- <imageobject>
- <imagedata fileref="images/struts_validation/struts_validation.png"></imagedata>
- </imageobject>
-</mediaobject>
-</figure>
-<itemizedlist>
-<listitem><para>Expand the "form-beans" node under the <emphasis><property moreinfo="none">StrutsHello > Configuration > default > struts-config.xml node.</property></emphasis> Then, drag the form bean "GetNameForm" and drop it onto a formset in the <property moreinfo="none">XML</property> Editor</para></listitem>
-<listitem><para>In the Validation Editor, expand the formset node, right-click GetNameForm, and select <emphasis><property moreinfo="none">Create Field...</property></emphasis> from the context menu</para></listitem>
-<listitem><para>Enter a name for Property in the dialog box. A new property will be created:</para></listitem>
-</itemizedlist>
-<figure float="0">
- <title>New Property Is Added</title>
-<mediaobject>
- <imageobject>
- <imagedata fileref="images/struts_validation/struts_validation_2.png"></imagedata>
- </imageobject>
-</mediaobject>
-</figure>
-<itemizedlist>
-<listitem><para>In the Properties view for the name field to the right of the "tree" for the validation.xml file, click on the <emphasis><property moreinfo="none">Change...</property></emphasis>button next to the Depends entry field</para></listitem>
-<listitem><para>In the displayed double list, select <emphasis><property moreinfo="none">required</property></emphasis> from the left list and then click <emphasis><property moreinfo="none">Add</property></emphasis></para></listitem>
- <listitem><para>Click <emphasis><property moreinfo="none">Ok</property></emphasis></para></listitem>
-<listitem><para>Right-click name and select <emphasis><property moreinfo="none">Add Arg...</property></emphasis> from the context menu</para></listitem>
-<listitem><para>In the Add Arg dialog box, click on the <emphasis><property moreinfo="none">Change...</property></emphasis>button next to the <emphasis><property moreinfo="none">Key</property></emphasis> field</para></listitem>
- <listitem><para>In the Key dialog box that appears now, click on the <emphasis><property moreinfo="none">Add</property></emphasis> button</para></listitem>
- <listitem><para>Enter "name.required" in the Name field, and enter a person's name in the Value field</para></listitem>
- <listitem><para>Click <emphasis><property moreinfo="none">Finish</property></emphasis>, then <emphasis><property moreinfo="none">Ok</property></emphasis>, and then <emphasis><property moreinfo="none">Ok</property></emphasis> again</para></listitem>
-<listitem><para>Select <emphasis><property moreinfo="none">File > Save All</property></emphasis> from the menu bar</para></listitem>
-</itemizedlist>
-</section>
-
-<section id="Client-SideValidation">
-<?dbhtml filename="Client-SideValidation.html"?>
-<title>Client-Side Validation</title>
-<para>Client-side <property moreinfo="none">validation</property> uses a scripting language (like JavaScript) running in the client browser to actually do the <property moreinfo="none">validation</property>. In a Struts application using the <property moreinfo="none">Validation</property> Framework, however, you don't actually have to do any of the script coding. The <property moreinfo="none">Validation</property> Framework handles this.</para>
-<para>To see how this works in our application, you'll just need to make a couple of modifications to one of the JSP files.</para>
-<itemizedlist>
-<listitem><para>Double-click inputname.jsp under <emphasis><property moreinfo="none">StrutsHello > WEB-ROOT(WebContent) > pages</property></emphasis> to open it for editing</para></listitem>
-<listitem><para>Find the tag near the top and hit Return to make a new line under it</para></listitem>
- <listitem><para>In the JBoss Tools Palette view to the right, open the Struts HTML folder and click on the javascript tag</para></listitem>
-<listitem><para>Back in the editor, just in front of the closing slash for this inserted tag, hit Ctrl+Space and select "formName" from the prompting menu</para></listitem>
-<listitem><para>Over in the Web Projects view, select GetNameForm under the <emphasis><property moreinfo="none">StrutsHello > Configuration > default > struts-config.xml > form-beans</property></emphasis> node, drag it, and drop it between the quotes in the editor</para></listitem>
-<listitem><para>Modify the <code><html:form></code> tag by inserting this attribute:</para></listitem>
-</itemizedlist>
-<programlisting format="linespecific" role="XML"><![CDATA[onsubmit="return validateGetNameForm(this)"
-]]></programlisting>
-<para></para>
-<para>The file should now look like this:</para>
-<programlisting format="linespecific" role="XML"><![CDATA[
-<%@ taglib uri="/WEB-INF/struts-html" prefix="html" %>
-
-<html:html >
- <head>
- <html:javascript formName="GetNameForm"/>
- <title></title>
- </head>
- <body>
- <html:form action="/greeting.do" onsubmit="return validateGetNameForm(this)">
- Input name:<html:text property="name"/><html:submit value="Say Hello!"/>
- </html:form>
- </body>
-</html:html>
-]]></programlisting>
-<itemizedlist>
-<listitem><para>Select<emphasis><property moreinfo="none"> File > Save </property></emphasis>from the menu bar</para></listitem>
-<listitem><para>Start JBoss Application Server by clicking on its icon (a right-pointing arrow) in the toolbar</para></listitem>
- <listitem><para>Click the Run icon(<inlinemediaobject> <imageobject>
- <imagedata fileref="images/struts_validation/struts_validation_1.png"></imagedata>
- </imageobject></inlinemediaobject>) or right click your project folder and select <emphasis><property moreinfo="none">Run As > Run on Server</property></emphasis></para></listitem>
-</itemizedlist>
-
-<itemizedlist><listitem><para>In the browser window, click on the "Say Hello!" button without having entered any name in the form</para></listitem></itemizedlist>
-<para>A JavaScript error message should be displayed in an alert box.</para>
-</section>
-<section id="Server-SideValidation">
-<?dbhtml filename="Server-SideValidation.html"?>
-<title>Server Side Validation</title>
-<para>Server side validation does the validation inside the application on the server. In a Struts application using the Validation Framework, you still don't have to do any of the actual validation coding. The Validation Framework handles this. You will though have to make a few changes to the JSP file you modified for client-side validation along with a change to an action and a few changes to the form bean class.</para>
-</section>
-
-<section id="EditingTheJSPFile">
-<?dbhtml filename="EditingTheJSPFile.html"?>
-<title>Editing the JSP File</title>
-<itemizedlist>
-<listitem><para>Reopen inputname.jsp for editing</para></listitem>
-<listitem><para>Delete the <emphasis role="italic"><property moreinfo="none">"onsubmit"</property></emphasis> attribute in the <code><html:form></code> element that you put in for client-side validation</para></listitem>
-
-<listitem><para>Add an <code><html:errors/></code> tag after the
- <code><html:form></code>
- tag</para></listitem>
-</itemizedlist>
-<para>The JSP file should now look like this:</para>
-
- <programlisting format="linespecific" role="XML"><![CDATA[<%@ taglib uri="/WEB-INF/struts-html" prefix="html" %>
-<html:html >
-<head>
- <html:javascript formName="GetNameForm"/>
- <title></title>
- </head>
- <body>
- <html:form action="/greeting.do" >Input name:<html:text property="name"/>
- <html:submit value="Say Hello!"/>
- </html:form>
- <html:errors/>
- </body>
-</html:html>
-]]></programlisting>
-
-</section>
-
-<section id="EditingTheAction">
-<?dbhtml filename="EditingTheAction.html"?>
-<title>Editing the Action</title>
-<itemizedlist>
-<listitem><para>In the Web Projects view, expand the node under the <emphasis><property moreinfo="none">StrutsHello > Configuration > default > struts-config.xml > action-mappings</property></emphasis> node, right-click the <emphasis><property moreinfo="none">/greeting</property></emphasis> action, and then select <emphasis><property moreinfo="none">Properties...</property></emphasis>from the context menu</para></listitem>
-
- <listitem><para>In the Edit Properties window, insert the cursor into the value column for the input property and click on the <property moreinfo="none">...</property> button</para></listitem>
-
- <listitem><para>In the dialog box, make sure the Pages tab is selected, select <emphasis><property moreinfo="none">StrutsHello > WEB-ROOT(WebContent) > pages > inputname.jsp</property></emphasis>, click the <emphasis><property moreinfo="none">Ok</property></emphasis> button, and then click on the <emphasis><property moreinfo="none">Close</property></emphasis> button</para></listitem>
-</itemizedlist>
-</section>
-<section id="EditingTheFormBean">
-<?dbhtml filename="EditingTheFormBean.html"?>
-
-<title>Editing the Form Bean</title>
-<itemizedlist>
-<listitem><para>Right-click the <emphasis><property moreinfo="none">/greeting</property></emphasis> action again and select Open Form-bean Source to open the GetNameForm.java file for editing</para></listitem>
-<listitem><para>Change the class that it extends from: <emphasis><property moreinfo="none">org.apache.struts.action.ActionForm</property></emphasis> to <emphasis><property moreinfo="none">org.apache.struts.validator.ValidatorForm</property></emphasis></para></listitem>
-<listitem><para>Comment out a validate method</para></listitem>
-</itemizedlist>
-<para>The file should now look like this:</para>
-<programlisting format="linespecific" role="JAVA"><![CDATA[package sample;
-import javax.servlet.http.HttpServletRequest;
-import org.apache.struts.action.ActionErrors;
-import org.apache.struts.action.ActionMapping;
-public class GetNameForm extends
-
-org.apache.struts.validator.ValidatorForm
-{
-
- private String name = "";
-
- /**
- * @return Returns the name.
- */
- public String getName()
- {
- return name;
- }
-
- /**
- * @param name The name to set.
- */
- public void setName(String name)
- {
- this.name = name;
- }
-
- public GetNameForm ()
- {
- }
-
- public void reset(ActionMapping actionMapping,
- HttpServletRequest request)
- {
- this.name = "";
- }
-
- // public ActionErrors validate(ActionMapping actionMapping,
- // HttpServletRequest request)
- //{
- // ActionErrors errors = new ActionErrors();
- // return errors;
- // }
- }
-]]></programlisting>
-
-<itemizedlist>
-<listitem><para>Select <emphasis><property moreinfo="none">File > Save All </property></emphasis>from the menu bar</para></listitem>
-<listitem><para>Reload the application into JBoss AS by clicking on the "Change Time Stamp" icon (a finger pointing with a little star) in the toolbar</para></listitem>
-<listitem><para>Run the application</para></listitem>
-<listitem><para>In the browser window, click on the "Say Hello!" button without having entered any name in the form</para></listitem>
-</itemizedlist>
-<para>The error message should appear in a refreshed version of the form.</para>
-</section>
-
-</chapter>
-
-<chapter id="relevant_resources" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_tutorial/en/modules/relevant_resources.xml" xreflabel="relevant_resources">
- <?dbhtml filename="relevant_resources.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>Struts</keyword>
- <keyword>Struts Application</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Other Relevant Resources on the topic</title>
-
- <para>Our reference: <ulink url="../../struts_tools_ref_guide/html_single/index.html">Struts Tools Reference Guide</ulink></para>
- <para>Apache Struts: <ulink url="http://struts.apache.org/">Struts Technology</ulink></para>
- <para>Struts 2: <ulink url="http://struts.apache.org/2.x/">Apache Struts 2</ulink></para>
- <para>Get Started: <ulink url="http://struts.apache.org/2.x/docs/home.html">Struts Getting
- Started</ulink></para>
- <para>Struts on IBM: <ulink url="http://www.ibm.com/developerworks/library/j-struts/">Struts -
- An open-source MVC implementation</ulink></para>
- <para>FAQ: <ulink url="http://struts.apache.org/2.x/docs/faqs.html">Struts FAQ</ulink></para>
- <para>Download: <ulink url="http://struts.apache.org/download.cgi#struts206">Release of Apache
- Struts</ulink></para>
-
- <para>Thus, this tutorial should help you to execute the hole development circle for building a
- sample Struts-based Web application using <property moreinfo="none">JBoss Tools</property> bundle of Eclipse
- plugins starting from organizing a new Struts project and ending with the running and
- deploying it onto the <property moreinfo="none">JBoss Server</property>.</para>
-
- <para>To find out all the features of <property moreinfo="none">JBoss Tools</property> for working with Struts
- refer to our <ulink url="../../struts_tools_ref_guide/html_single/index.html">Struts Tools Reference Guide</ulink>. If you
- still have questions you are always welcome on <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>Struts Tools Tutorial</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>
+
+ <copyright>
+ <year>2007</year>
+ <year><diffmk:wrapper diffmk:change="added">2008</diffmk:wrapper></year>
+ <year diffmk:change="added">2009</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2010</diffmk:wrapper></year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo><diffmk:wrapper diffmk:change="changed">
+ Version: 3.1.0.CR2
+ </diffmk:wrapper></releaseinfo>
+
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/struts_tools_tutoria...">PDF version</ulink>
+ </para>
+</abstract>
+
+
+ </bookinfo>
+
+ <toc></toc>
+
+
+<chapter id="introduction" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_tutorial/en/modules/introduction.xml" xreflabel="introduction">
+ <?dbhtml filename="introduction.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+ <title>Introduction</title>
+ <para>The following chapters describe how to deal with classic/old style of Struts development. We
+ recommend users to use <ulink url="../../seam/html_single/index.html">JBoss Seam</ulink> to
+ simplify development, but until then you can read about classical Struts usage here.</para>
+
+ <para>We are going to show you how to create a simple <emphasis>
+ <property moreinfo="none">Struts application</property>
+ </emphasis> using the JBoss Tools. The completed application will ask a user to enter
+ a name and click a button. The resulting new page will display the familiar message,
+ "Hello <name>!"</para>
+ <para>This document will show you how to create such an application from the beginning, along the
+ way demonstrating some of the powerful features of JBoss Tools. With the help of our tutorial you will design the
+ application, generate stub code for the application, fill in the stub coding, compile the
+ application, and finally run it all from inside the Eclipse.</para>
+
+ <section>
+ <title>Key Features Struts Tools</title>
+
+ <para>For a start, we propose you to look through the table of main features of Struts
+ Tools:</para>
+ <table>
+
+ <title>Key Functionality of Struts Tools</title>
+ <tgroup cols="2">
+
+ <colspec align="left" colnum="1" colwidth="2*"></colspec>
+ <colspec colnum="2" colwidth="4*"></colspec>
+
+
+ <thead>
+ <row>
+ <entry>Feature</entry>
+ <entry>Benefit</entry>
+
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry><para>Struts Support</para></entry>
+ <entry><para>Step-by-step wizards for creating a new struts project with a number
+ of predefined templates, importing existing ones and adding struts
+ capabilities to non-struts web projects.</para></entry>
+
+ </row>
+
+ <row>
+ <entry><para>Support for Struts Configuration File</para></entry>
+ <entry><para>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. Working with
+ struts projects that have multiple modules. Possibility to use Struts
+ configuration file debugger allowing to set break points on struts
+ diagram and then launch the server in debug mode.</para></entry>
+
+ </row>
+
+ <row>
+ <entry><para>Support for Struts modules</para></entry>
+ <entry><para>A Struts module (struts-config.xml) is automatically created while
+ creating a new project. There is also possibility to add new ones or edit
+ already existing modules in your existing project or while importing Struts project.</para></entry>
+
+ </row>
+
+ <row>
+ <entry><para>Verification and Validation</para></entry>
+ <entry><para>All occurring 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.</para></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="struts_application" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_tutorial/en/modules/struts_application.xml" xreflabel="struts_application">
+ <?dbhtml filename="struts_application.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Struts</keyword>
+ <keyword>Struts Application</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Creating a Simple Struts Application</title>
+
+ <para>Firstly, we assume that you have already launched Eclipse with <property moreinfo="none">JBoss Tools</property> installed and
+ also that the <property moreinfo="none">Web Development perspective</property> is the current perspective. (If not, make it
+ active by selecting <emphasis>
+ <property moreinfo="none">Window > Open Perspective > Other > Web
+ Development</property>
+ </emphasis> from the menu bar.)</para>
+
+ <section id="StartingUp">
+ <title>Starting Up</title>
+ <para>We are first going to create a new project for the application.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Go to the menu bar and select <emphasis>
+ <property moreinfo="none">File > New > Struts Project</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Next enter "StrutsHello" as the project name</para>
+ </listitem>
+ <listitem>
+ <para>Leave everything else as it is, and click <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>If you have server runtime already defined, just pass to next point. Otherwise in the <emphasis>
+ <property moreinfo="none">Runtime</property></emphasis> section click the <emphasis>
+ <property moreinfo="none">New</property></emphasis> button and target at needed server runtime environment. Click <emphasis>
+ <property moreinfo="none">Finish</property>.</emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Make sure that <emphasis>
+ <property moreinfo="none">struts-bean.tld</property>
+ </emphasis>, <emphasis>
+ <property moreinfo="none">struts-html.tld</property>
+ </emphasis>, and <emphasis>
+ <property moreinfo="none">struts-logic.tld</property>
+ </emphasis> are checked in the list of included tag libraries and then hit <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <para>A "StrutsHello" node should appear in the <property moreinfo="none">Package
+ Explorer view</property>.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Click the plus sign next to <emphasis>
+ <property moreinfo="none">StrutsHello</property>
+ </emphasis> to reveal the child nodes</para>
+ </listitem>
+ <listitem>
+ <para>Click the plus sign next to <emphasis>
+ <property moreinfo="none">WebContent</property>
+ </emphasis> under <emphasis>
+ <property moreinfo="none">StrutsHello</property></emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Click the plus sign next to <emphasis>
+ <property moreinfo="none">WEB-INF</property>
+ </emphasis> under <emphasis>
+ <property moreinfo="none">WebContent</property></emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Then, double-click on the <emphasis>
+ <property moreinfo="none">struts-config.xml</property>
+ </emphasis> node to display a diagram of the Struts application configuration
+ file in the editing area</para>
+ </listitem>
+ </itemizedlist>
+ <para>At this point, its empty except for the background grid lines.</para>
+ </section>
+
+ <section id="CreatingtheApplicationComponents">
+ <?dbhtml filename="CreatingtheApplicationComponents.html"?>
+ <title>Creating the Application Components</title>
+ <para>Now, we will design the application by creating the individual components as
+ placeholders first. (We don't have to complete all of the details inside the components
+ until afterwards.)</para>
+ <section id="CreatingJSPPagePlaceholders">
+ <title>Creating JSP Page Placeholders</title>
+ <para>Next, let's create and place two JSP pages. We will not write any code
+ for the files, but only create them as placeholders so that we can create links to
+ them in the diagram. We will write the code a little bit later.</para>
+ <section id="CreatingthePagePlaceholders">
+ <title>Creating the Page Placeholders</title>
+ <itemizedlist>
+ <listitem>
+ <para>Bring the <property moreinfo="none">Web Projects view</property> to the front of the <property moreinfo="none">Package Explorer view</property>
+ by selecting the <emphasis>
+ <property moreinfo="none">Web Projects</property>
+ </emphasis> tab next to that tab.</para>
+ </listitem>
+ <listitem>
+ <para>Right-click the <emphasis>
+ <property moreinfo="none">StrutsHello > WEB-ROOT (WebContent)</property>
+ </emphasis> folder in the <property moreinfo="none">Web Projects view</property> and select <emphasis>
+ <property moreinfo="none">New > Folder...</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Enter <emphasis>
+ <property moreinfo="none">pages</property>
+ </emphasis> for a folder name and click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para>We will keep our presentation files in this folder</para>
+ </listitem>
+
+ <listitem>
+ <para>Right-click the <emphasis>
+ <property moreinfo="none">pages</property></emphasis> folder and select <emphasis>
+ <property moreinfo="none">New > File > JSP...</property>
+ </emphasis>
+ </para>
+ </listitem>
+ <listitem>
+ <para>For Name type in <emphasis>
+ <property moreinfo="none">inputname</property>
+ </emphasis> (the JSP extension will be automatically added to the file),
+ for Template select <emphasis>
+ <property moreinfo="none">StrutsForm</property>
+ </emphasis> and then click on the <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button</para>
+ </listitem>
+ <listitem>
+ <para>Right-click the <emphasis>
+ <property moreinfo="none">pages</property></emphasis> folder again and select <emphasis>
+ <property moreinfo="none">New > File > JSP...</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>For Name type in <emphasis>
+ <property moreinfo="none">greeting</property>
+ </emphasis>, for Template leave as <emphasis>
+ <property moreinfo="none">Blank</property>,</emphasis> and then click on the <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button</para>
+ </listitem>
+ </itemizedlist>
+ <para>Just leave these files as is for now.</para>
+ </section>
+ <section id="PlacingthePagePlaceholders">
+ <title>Placing the Page Placeholders</title>
+ <para>Lets now place the two pages just created on the diagram.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">struts-config.xml</property>
+ </emphasis> tab in the editing area to bring the diagram to the
+ front</para>
+ </listitem>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">inputname.jsp</property>
+ </emphasis> page in the <property moreinfo="none">Web Projects view</property>, drag it onto the diagram, and
+ drop it</para>
+ </listitem>
+ <listitem><para>Click on the <emphasis>
+ <property moreinfo="none">greeting.jsp</property>
+ </emphasis> page in the <property moreinfo="none">Web Projects view</property>, drag it onto the diagram, and
+ drop it to the right of the <emphasis>
+ <property moreinfo="none">/pages/inputname.jsp</property>
+ </emphasis> icon with some extra space</para></listitem>
+ </itemizedlist>
+ <para>You should now have two JSP pages in the diagram.</para>
+ </section>
+ </section>
+ <section id="CreatinganActionMappings">
+ <title>Creating an Action Mappings</title>
+ <para>Using a context menu on the diagram, we are next going to create an Action
+ mapping.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Right-click between the two icons and select <emphasis>
+ <property moreinfo="none">New > Action</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Enter the following values:</para>
+ </listitem>
+ </itemizedlist>
+ <table>
+ <title>Action values</title>
+ <tgroup cols="2">
+ <tbody>
+ <row>
+ <entry>path</entry>
+ <entry>/greeting</entry>
+ </row>
+ <row>
+ <entry>name</entry>
+ <entry>GetNameForm</entry>
+ </row>
+ <row>
+ <entry>scope</entry>
+ <entry>request</entry>
+ </row>
+ <row>
+ <entry>type</entry>
+ <entry>sample.GreetingAction</entry>
+ </row>
+ <row>
+ <entry>validate</entry>
+ <entry><leave blank></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>("GetNameForm" is the name for a form bean that we will create
+ later.)</para>
+ <itemizedlist>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+
+ <para>The <emphasis>
+ <property moreinfo="none">/greeting</property>
+ </emphasis> action should appear in four places, in the diagram, under the
+ <emphasis>
+ <property moreinfo="none">action-mappings</property></emphasis> node, under the <emphasis>
+ <property moreinfo="none">struts-config.xml</property></emphasis> node in Tree view, in <property moreinfo="none">Web Projects
+ view</property> and in the <property moreinfo="none">Outline view</property>. Also, note the asterisk to the right of the name,
+ <emphasis>
+ <property moreinfo="none">struts-config.xml</property>,</emphasis> in the <property moreinfo="none">Outline view</property> showing that the file has been changed, but
+ not saved to disk.</para>
+ </section>
+ <section id="CreatingaLink">
+ <title>Creating a Link</title>
+ <para>Let's now create a link from the <emphasis>
+ <property moreinfo="none">inputname.jsp</property></emphasis> page to the action.</para>
+ <itemizedlist>
+ <listitem>
+ <para>On the left-hand side of the diagram in the column of icons, click on the Create New Connection
+ icon( <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts_application/struts_application_1.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>).</para>
+ </listitem>
+ </itemizedlist>
+ <itemizedlist>
+ <listitem>
+ <para>In the connect-the-components mode you are in now, click on the <emphasis>
+ <property moreinfo="none">/pages/inputname.jsp</property>
+ </emphasis> icon in the diagram and then click on the <emphasis>
+ <property moreinfo="none">/greeting</property>
+ </emphasis> action</para>
+ </listitem>
+ </itemizedlist>
+ <para>A link will be created from the page to the action.</para>
+ </section>
+ <section id="CreatingaForward">
+ <title>Creating a Forward</title>
+ <para>Next, we are going to create a forward for the action.</para>
+ <itemizedlist>
+ <listitem>
+ <para>On the left-hand side of the diagram in the column of icons, click on
+ the Create New Connection
+ icon( <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts_application/struts_application_1.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>), again.</para>
+ </listitem>
+ </itemizedlist>
+
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">/greeting</property>
+ </emphasis> action icon in the diagram and then click on the <emphasis>
+ <property moreinfo="none">pages/greeting.jsp</property>
+ </emphasis> icon</para>
+ </listitem>
+ <listitem>
+ <para>That's it. A link will be drawn from the actions new greeting
+ forward to the <emphasis>
+ <property moreinfo="none">greeting.jsp</property></emphasis> JSP page. Note that the forwards name will be
+ set based on the name of the target JSP file name. If you don't
+ like it, you can easily change it</para>
+ </listitem>
+ <listitem>
+ <para>Select the <emphasis>
+ <property moreinfo="none">Tree</property>
+ </emphasis> tab at the bottom of the editor window (between Diagram and
+ Source)</para>
+ </listitem>
+ <listitem>
+ <para>Expand the <emphasis>
+ <property moreinfo="none">struts-config.xml/action-mappings/ /greeting</property>
+ </emphasis> node and then select the greeting forward</para>
+ </listitem>
+ <listitem>
+ <para>In the Properties Editor to the right, change the text to
+ "sayHello" in the <emphasis>
+ <property moreinfo="none">Name</property></emphasis> field</para>
+ </listitem>
+ <listitem>
+ <para>Select the <emphasis>
+ <property moreinfo="none">Diagram</property>
+ </emphasis> tab at the bottom of the editor window and see how the diagram
+ is also updated to reflect the change</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section id="CreatingaGlobalForward">
+ <title>Creating a Global Forward</title>
+ <para>One last component that we need to create in the diagram is a global forward.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Somewhere in the top-left corner of diagram, right-click and select <emphasis>
+ <property moreinfo="none">New > Global Forward</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Enter <emphasis>
+ <property moreinfo="none">getName</property>
+ </emphasis> in the <emphasis>
+ <property moreinfo="none">Name</property></emphasis> field</para>
+ </listitem>
+ <listitem>
+ <para>Select the <emphasis>
+ <property moreinfo="none">Change...</property>
+ </emphasis>button for Path</para>
+ </listitem>
+ <listitem>
+ <para>In the Edit Path window, switch to the <emphasis>
+ <property moreinfo="none">Pages</property>
+ </emphasis> tab</para>
+ </listitem>
+ <listitem>
+ <para>Expand the <emphasis>
+ <property moreinfo="none">StrutsHello > WEB-ROOT (WebContent) > pages</property>
+ </emphasis> node and then select the inputname.jsp page</para>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Ok</property>
+ </emphasis>.</para>
+ </listitem>
+ <listitem>
+ <para>Leave the rest of the fields blank and click <emphasis>
+ <property moreinfo="none">OK</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <para>A forward object now appears on the diagram and also in the global-forwards folder
+ in the Outline view.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Tidy up the diagram, by clicking and dragging around each icon, so that
+ the diagram looks something like this:</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Diagram View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts_application/struts_application_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="CreatingaFormBean">
+ <title>Creating a Form Bean</title>
+ <para>One last thing that we need to do is to create a form bean.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Switch to the Tree viewer in the editor for the <emphasis>
+ <property moreinfo="none">struts-config.xml</property></emphasis> file, by
+ selecting the <emphasis>
+ <property moreinfo="none">Tree</property>
+ </emphasis> tab at the bottom of the editor window</para>
+ </listitem>
+ <listitem>
+ <para>Right-click <emphasis>
+ <property moreinfo="none">struts-config.xml > form-beans</property>
+ </emphasis> and select Create Form Bean</para>
+ </listitem>
+ <listitem>
+ <para>Enter <emphasis>
+ <property moreinfo="none">GetNameForm</property>
+ </emphasis> in the name field and <emphasis>
+ <property moreinfo="none">sample.GetNameForm</property>
+ </emphasis> for type</para>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>To save your changes to struts-config.xml, select <emphasis>
+ <property moreinfo="none">File > Save</property>
+ </emphasis> from the menu bar</para>
+ </listitem>
+ </itemizedlist>
+ <para>Note the disappearance of the asterisk next to the name, <emphasis>
+ <property moreinfo="none">struts-config.xml</property>.</emphasis></para>
+ </section>
+ </section>
+</chapter>
+
+<chapter id="generating_stub" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_tutorial/en/modules/generating_stub.xml" xreflabel="generating_stub">
+ <?dbhtml filename="generating_stub.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Struts</keyword>
+ <keyword>Struts Application</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Generating Stub Coding</title>
+ <para>We are done with designing the application through the diagram. Now we need to write
+ code for the action component. We also need to write an action class for the <emphasis>
+ <property moreinfo="none">/greeting</property>
+ </emphasis> mapping along with a FormBean. To aid in the coding phase, JBoss Developer
+ Studio can generate Java class stubs for all of the components shown in the diagram.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Switch back to the diagram, by selecting the <emphasis>
+ <property moreinfo="none">Diagram</property>
+ </emphasis> tab at the bottom of the editor window</para>
+ </listitem>
+ <listitem>
+ <para>Right-click a blank space in the diagram and select <emphasis>
+ <property moreinfo="none">Generate Java Code</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Leave everything as is in the dialog box and click <emphasis>
+ <property moreinfo="none">Generate</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <para>You should see a screen that says:</para>
+ <para>Generated classes: 2</para>
+ <para>Actions: 1</para>
+ <para>Form beans: 1</para>
+ <itemizedlist>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <para>The Java files will be generated in a <emphasis>
+ <property moreinfo="none">JavaSource > sample</property>
+ </emphasis> folder that you can see in the <property moreinfo="none">Package Explorer view</property> under the
+ "StrutsHello" node. One Action stub and one FormBean stub will have
+ been generated.</para>
+ </chapter>
+
+<chapter id="coding_files" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_tutorial/en/modules/coding_files.xml" xreflabel="coding_files">
+ <?dbhtml filename="coding_files.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Struts</keyword>
+ <keyword>Struts Application</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Coding the Various Files</title>
+ <para>We will now code both the Java stub classes just generated, the JSP files left in as
+ placeholders from previous steps, and a new start JSP page we will have to create.</para>
+ <section id="JavaStubClasses">
+ <title>Java Stub Classes</title>
+ <itemizedlist>
+ <listitem>
+ <para>To finish the two Java classes, switch to the <emphasis>
+ <property moreinfo="none">Package Explorer</property>
+ </emphasis> view and expand the <emphasis>
+ <property moreinfo="none">JavaSource > sample</property>
+ </emphasis> folder</para>
+ </listitem>
+ </itemizedlist>
+ <section id="GetNameForm.java">
+ <title>GetNameForm.java</title>
+ <itemizedlist>
+ <listitem>
+ <para>Double-click <emphasis>
+ <property moreinfo="none">GetNameForm.java</property>
+ </emphasis> for editing</para>
+ </listitem>
+
+ <listitem>
+ <para>You are looking at a Java stub class that was generated by JBoss
+ Tools. Now we are going to edit the file</para>
+ </listitem>
+
+ <listitem>
+ <para>Add the following attributes at the beginning of the class:</para>
+ </listitem>
+ </itemizedlist>
+ <programlisting format="linespecific" role="JAVA"><![CDATA[private String name = "";
+]]></programlisting>
+
+ <itemizedlist>
+ <listitem>
+ <para>Inside the reset method, delete the TO DO and throw lines and
+ add:</para>
+ </listitem>
+ </itemizedlist>
+ <programlisting format="linespecific" role="JAVA"><![CDATA[this.name = "";
+]]></programlisting>
+
+ <itemizedlist>
+ <listitem>
+ <para>Inside the validate method, delete the TO DO and throw lines and
+ add:</para>
+ </listitem>
+ </itemizedlist>
+ <programlisting format="linespecific" role="JAVA"><![CDATA[ActionErrors errors = new ActionErrors();
+ return errors;
+]]></programlisting>
+
+ <itemizedlist>
+ <listitem>
+ <para>Right-click and select <emphasis>
+ <property moreinfo="none">Source > Generate Getters and Setters</property>
+ </emphasis>from the context menu</para>
+ </listitem>
+ <listitem>
+ <para>In the dialog box, check the check box for <emphasis>
+ <property moreinfo="none">name</property>,</emphasis>
+ select First method for Insertion point, and click on the <emphasis>
+ <property moreinfo="none">OK</property>
+ </emphasis> button</para>
+ </listitem>
+ </itemizedlist>
+ <para>The final <emphasis>
+ <property moreinfo="none">GetNameForm.java</property></emphasis> file should look like this:</para>
+ <programlisting format="linespecific" role="JAVA"><![CDATA[package sample;
+import javax.servlet.http.HttpServletRequest;
+import org.apache.struts.action.ActionErrors;
+import org.apache.struts.action.ActionMapping;
+
+public class GetNameForm extends org.apache.struts.action.ActionForm
+{
+
+ private String name = "";
+
+ public String getName()
+ {
+ return name;
+ }
+ public void setName(String name)
+ {
+ this.name = name;
+ }
+
+ public GetNameForm()
+ {
+ }
+
+ public void reset(ActionMapping actionMapping, HttpServletRequest request)
+ {
+ this.name = "";
+ }
+
+ public ActionErrors validate(ActionMapping actionMapping,
+ HttpServletRequest request)
+ {
+ ActionErrors errors = new ActionErrors();
+ return errors;
+ }
+}
+]]></programlisting>
+
+ <itemizedlist>
+ <listitem>
+ <para>Save the file</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section id="GreetingAction.java">
+ <title>GreetingAction.java</title>
+ <itemizedlist>
+ <listitem>
+ <para>Open <emphasis>
+ <property moreinfo="none">GreetingAction.java</property></emphasis> for editing</para>
+ </listitem>
+ <listitem>
+ <para>Inside the execute method, delete the TO DO lines and add the
+ following:</para>
+ </listitem>
+ </itemizedlist>
+
+ <programlisting format="linespecific" role="JAVA"><![CDATA[String name = ((GetNameForm)form).getName();
+String greeting = "Hello, "+name+"!";
+((GetNameForm)form).setName(greeting);
+return mapping.findForward(FORWARD_sayHello);
+]]></programlisting>
+
+ <para>The final version of <emphasis>
+ <property moreinfo="none">GreetingAction.java</property></emphasis> should look like this:</para>
+
+ <programlisting format="linespecific" role="JAVA"><![CDATA[package sample;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.apache.struts.action.ActionForm;
+import org.apache.struts.action.ActionForward;
+import org.apache.struts.action.ActionMapping;
+
+public class GreetingAction extends org.apache.struts.action.Action
+{
+
+ // Global Forwards
+ public static final String GLOBAL_FORWARD_getName = "getName";
+
+ // Local Forwards
+ public static final String FORWARD_sayHello = "sayHello";
+
+ public GreetingAction()
+ {
+ }
+ public ActionForward execute(ActionMapping mapping, ActionForm form,
+ HttpServletRequest request, HttpServletResponse response) throws Exception
+ {
+ String name = ((GetNameForm)form).getName();
+ String greeting = "Hello, "+name+"!";
+ ((GetNameForm)form).setName(greeting);
+ return mapping.findForward(FORWARD_sayHello);
+ }
+}
+]]></programlisting>
+ <itemizedlist>
+ <listitem>
+ <para>Save the file</para>
+ </listitem>
+ <listitem>
+ <para>Close the editors for the two Java files</para>
+ </listitem>
+ </itemizedlist>
+ <para>The last thing left to do is to code the JSP files whose editors should still
+ be open from having been created as placeholders.</para>
+ </section>
+ </section>
+ <section id="JSPPages">
+ <title>JSP Pages</title>
+ <section id="inputname.jsp">
+ <title>inputname.jsp</title>
+ <para>In this page, the user will enter any name and click the <emphasis>
+ <property moreinfo="none">submit</property>
+ </emphasis> button. Then, the greeting action will be called through the form.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">inputname.jsp</property>
+ </emphasis> tab in the Editing area to bring its editor forward</para>
+ </listitem>
+ <listitem>
+ <para>In the Web Projects view, expand <emphasis>
+ <property moreinfo="none">StrutsHello > Configuration > default
+ > struts-config.xml > action-mappings</property>
+ </emphasis> and select <emphasis>
+ <property moreinfo="none">/greeting</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Drag it and drop it between the quotes for the <emphasis role="italic">
+ <property moreinfo="none">"action"</property>
+ </emphasis> attribute to the
+ <code><html:form></code>
+ element in the Source pane of the editor</para>
+ </listitem>
+ <listitem>
+ <para>Then type this text on a new line just below this line:</para>
+ <programlisting format="linespecific" role="XML"><![CDATA[Input name:
+ ]]></programlisting>
+ </listitem>
+
+ <listitem>
+ <para>Select the <emphasis>
+ <property moreinfo="none">Visual</property>
+ </emphasis> pane of the editor</para>
+ </listitem>
+ <listitem>
+ <para>Then, in the JBoss Tools Palette, expand the <emphasis>
+ <property moreinfo="none">Struts Form</property>
+ </emphasis> library, select <emphasis>
+ <property moreinfo="none">text</property>
+ </emphasis>, and drag it onto the box
+ <note>
+ <title>Note:</title>
+ <para>By default there are only four groups on the JBoss Tools
+ Palette. If you wish to make some group visible click the <emphasis>
+ <property moreinfo="none">Show/Hide</property>
+ </emphasis> button on the top of palette and in the prompted
+ dialog check the group (or groups) you want to be shown.</para>
+ </note>
+ </para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>JBoss Tools Palette</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts_application/struts_application_3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>In the Insert Tag dialog box, type in name for property and select <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>In the StrutsForm library in the <property moreinfo="none">JBoss Tools Palette</property>, select <emphasis>
+ <property moreinfo="none">submit</property>
+ </emphasis>, and drag it to right after the text box in the Visual pane
+ of the editor</para>
+ </listitem>
+ <listitem>
+ <para>Right-click the <emphasis>
+ <property moreinfo="none">submit</property>
+ </emphasis> button and select
+ <code><html:submit></code>
+ Attributes from the context menu</para>
+ </listitem>
+ <listitem>
+ <para>In the Attributes dialog box, select the <emphasis>
+ <property moreinfo="none">value</property>
+ </emphasis> field and type in "Say Hello!" for its
+ value</para>
+ </listitem>
+ </itemizedlist>
+ <para>After tidying the page source, the Editor window for the file should look
+ something like this:</para>
+ <figure float="0">
+ <title>Editor Window</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts_application/struts_application_4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="greeting.jsp">
+ <title>greeting.jsp</title>
+ <para>Next, we will fill in the result page.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">greeting.jsp</property>
+ </emphasis> tab in the Editing area to bring its editor forward</para>
+ </listitem>
+ <listitem>
+ <para>Type in the following code:</para>
+ </listitem>
+ </itemizedlist>
+ <programlisting format="linespecific" role="XML"><![CDATA[<html>
+<head>
+ <title>Greeting</title>
+</head>
+ <body>
+ <p>
+ </p>
+ </body>
+</html>
+]]></programlisting>
+
+ <para>To complete editing of this file, we will use macros from the <property moreinfo="none">JBoss Tools
+ Palette</property>. This palette is a view that should be available to the right of the
+ editing area.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">Struts Common</property>
+ </emphasis> folder in the <property moreinfo="none">JBoss Tools Palette</property> to open it</para>
+ </listitem>
+ <listitem>
+ <para>Position the cursor at the beginning of the <emphasis>
+ <property moreinfo="none">greeting.jsp</property></emphasis> file in the
+ Source pane and then click on <emphasis>
+ <property moreinfo="none">bean taglib</property></emphasis> in the <property moreinfo="none">JBoss Tools
+ Palette</property></para>
+ </listitem>
+ </itemizedlist>
+ <para>This will insert the following line at the top of the file:</para>
+ <programlisting format="linespecific" role="JAVA"><![CDATA[
+<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
+]]></programlisting>
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">Struts Bean</property>
+ </emphasis> folder in the <property moreinfo="none">JBoss Tools Palette</property> to open it</para>
+ </listitem>
+ <listitem>
+ <para>Position the cursor inside the
+ <code><p></code>
+ element</para>
+ </listitem>
+ <listitem>
+ <para>Click on <emphasis>
+ <property moreinfo="none">write</property></emphasis> in the <property moreinfo="none">JBoss Tools Palette</property></para>
+ </listitem>
+ <listitem>
+ <para>Type in "GetNameForm" for the <emphasis role="italic">
+ <property moreinfo="none">name</property>
+ </emphasis> attribute and add a <emphasis role="italic">
+ <property moreinfo="none">property</property>
+ </emphasis> attribute with "name" as its
+ value</para>
+ </listitem>
+ </itemizedlist>
+ <para>The editor should now look like this:</para>
+ <figure float="0">
+ <title>Editor Window</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts_application/struts_application_5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="index.jsp">
+ <title>index.jsp</title>
+ <para>Finally, we will need to create and edit an <emphasis>
+ <property moreinfo="none">index.jsp</property></emphasis> page. This page will use
+ a Struts forward to simply redirect us to the getName global forward.</para>
+ <itemizedlist>
+ <listitem>
+ <para>In the Web Projects view, right-click on <emphasis>
+ <property moreinfo="none">StrutsHello > WEB-ROOT(WebContent)</property>
+ </emphasis> node and select <emphasis>
+ <property moreinfo="none">New > File > JSP</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Type <emphasis>
+ <property moreinfo="none">index</property></emphasis> for Name and click on the <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button</para>
+ </listitem>
+ <listitem>
+ <para>On the <property moreinfo="none">JBoss Tools Palette</property>, select the <emphasis>
+ <property moreinfo="none">Struts Common</property>
+ </emphasis> folder of macros by clicking on it in the palette</para>
+ </listitem>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">logic taglib</property></emphasis> icon</para>
+ </listitem>
+ <listitem>
+ <para>Press the <emphasis>
+ <property moreinfo="none">Enter</property>
+ </emphasis> key in the editor to go to the next line</para>
+ </listitem>
+ <listitem>
+ <para>Back on the palette, select the <emphasis>
+ <property moreinfo="none">Struts Logic</property>
+ </emphasis> folder of macros</para>
+ </listitem>
+ <listitem>
+ <para>Click on <emphasis>
+ <property moreinfo="none">redirect</property></emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Delete the ending tag, put a forward slash in front of the closing
+ angle bracket, and type "forward=getName" in front of
+ the slash</para>
+ </listitem>
+ </itemizedlist>
+ <para>The finished code for the page is shown below:</para>
+ <programlisting format="linespecific" role="JAVA"><![CDATA[<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
+<logic:redirect forward="getName"/>
+]]></programlisting>
+ <itemizedlist>
+ <listitem>
+ <para>To save all the edits to files, select <emphasis>
+ <property moreinfo="none">File>Save All</property>
+ </emphasis> from the menu bar</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ </section>
+ </chapter>
+
+<chapter id="compiling_and_running" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_tutorial/en/modules/compiling_and_running.xml" xreflabel="compiling_and_running">
+ <?dbhtml filename="compiling_and_running.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Struts</keyword>
+ <keyword>Struts Application</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Compiling the Classes and Running the Application</title>
+
+ <para>As this is the Eclipse environment, no explicit compilation step is required. By
+ default, Eclipse compiles as you go.</para>
+
+ <para>Thus at this point everything is ready for running our application without having to leave JBoss
+ Developer Studio by using the JBoss Application Server engine that comes with the JBoss
+ Developer Studio. For controlling JBoss AS within JBoss Developer Studio, there is JBoss
+ Server view.</para>
+ <figure float="0">
+ <title>JBoss Server Panel</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts_application/struts_application_6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Start up JBoss AS by clicking on the icon in JBoss Server view. (If JBoss AS
+ is already running, stop it by clicking on the red icon and then start it again.
+ Remember, the Struts run-time requires restarting the servlet engine when any
+ changes have been made.)</para>
+ </listitem>
+ <listitem>
+ <para>After the messages in the Console tabbed view stop scrolling, JBoss AS is
+ available. At this point, right-click on the getName global forward in the
+ struts-config.xml diagram view and select Run on Server.</para>
+ </listitem>
+ </itemizedlist>
+ <para>The browser should appear with the application started.</para>
+ </chapter>
+
+<chapter id="struts_validation" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_tutorial/en/modules/struts_validation.xml" xreflabel="struts_validation">
+ <?dbhtml filename="struts_validation.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Struts</keyword>
+ <keyword>Struts Validation</keyword>
+ </keywordset>
+ </chapterinfo>
+<title>Struts Validation Examples</title>
+
+<para><property moreinfo="none">Validation</property> of input is an important part of any Web application. All Apache Jakarta frameworks,
+including Struts, can use a common Jakarta Validation Framework for streamlining this aspect of Web
+application development. The Validation Framework allows you to define validation rules and then apply these rules on the client-side or the server-side.</para>
+
+ <para>JBoss Developer Studio makes using the <property moreinfo="none">Validation Framework</property> in Struts even easier with the help of a specialized editor for the XML files that controls validation in a project. In this document, we'll show you how this all works by creating some simple client-side validation and server-side validation examples.</para>
+
+<section id="StartingPoint">
+<?dbhtml filename="StartingPoint.html"?>
+<title>Starting Point</title>
+<para>The example assumes that you have already created our sample "StrutsHello" application from the
+Getting Started Guide for Creating a Struts Application. You should have the JBoss Developer Studio perspective
+ open on this StrutsHello project.</para>
+</section>
+
+<section id="DefiningTheValidationRule">
+<?dbhtml filename="DefiningTheValidationRule.html"?>
+<title>Defining the Validation Rule</title>
+<para>In these steps you will set up the validation that can be used for either client-side or
+server side validation. You need to enable validation as a part of the project, define an error message, and tie it into an appropriate part of the application.</para>
+
+<itemizedlist>
+<listitem><para>Right-click on a "plug-ins" node under the <emphasis><property moreinfo="none">StrutsHello > Configuration > default > struts-config.xml</property></emphasis> node in the Web Projects view and select <emphasis><property moreinfo="none">Create Special Plugin > Validators</property></emphasis> from the context menu</para></listitem>
+<listitem><para>Further down in the Web Projects view, right-click on the
+<emphasis><property moreinfo="none">StrutsHello > ResourceBundles</property></emphasis> node and select <emphasis><property moreinfo="none"> New > Properties File...</property></emphasis>from the context menu</para></listitem>
+<listitem><para>In the dialog box, click on the <emphasis><property moreinfo="none">Browse...</property></emphasis>button next to the Folder field, expand the
+ JavaSource folder in this next dialog box, select the sample subfolder, and click on the <emphasis><property moreinfo="none">OK</property></emphasis> button</para></listitem>
+ <listitem><para>Back in the first dialog box, type in "applResources" for the Name field and click on the <emphasis><property moreinfo="none">Finish</property></emphasis> button</para></listitem>
+<listitem><para>Right-click on a newly created file and select <emphasis><property moreinfo="none">Add > Default Error Messages</property></emphasis>
+ from the context menu</para></listitem>
+
+<listitem><para>Drag up the sample.applResources icon until you can drop it on the resources folder under struts-config.xml</para></listitem>
+<listitem><para>Select<emphasis><property moreinfo="none"> File > Save </property></emphasis>All from the menu bar</para></listitem>
+<listitem><para>Select validation.xml under the <emphasis><property moreinfo="none">StrutsHello > Validation</property></emphasis> node and double-click it to open it with the JBoss Tools XML Editor</para></listitem>
+<listitem><para>Here you must create a Formset.</para></listitem>
+<listitem><para>In the validation.xml file editor click the button <emphasis><property moreinfo="none">Create Formset</property></emphasis> on the panel <emphasis><property moreinfo="none">Formsets</property></emphasis></para></listitem>
+<listitem><para>In the dialog <emphasis><property moreinfo="none">Add Formset</property></emphasis> fill the fields <emphasis><property moreinfo="none">Language</property></emphasis> and <emphasis><property moreinfo="none">Country</property></emphasis> or just leave them empty to create a default formset. Click <emphasis><property moreinfo="none">OK</property></emphasis></para></listitem>
+</itemizedlist>
+<figure float="0">
+ <title>Create Formset</title>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts_validation/struts_validation.png"></imagedata>
+ </imageobject>
+</mediaobject>
+</figure>
+<itemizedlist>
+<listitem><para>Expand the "form-beans" node under the <emphasis><property moreinfo="none">StrutsHello > Configuration > default > struts-config.xml node.</property></emphasis> Then, drag the form bean "GetNameForm" and drop it onto a formset in the <property moreinfo="none">XML</property> Editor</para></listitem>
+<listitem><para>In the Validation Editor, expand the formset node, right-click GetNameForm, and select <emphasis><property moreinfo="none">Create Field...</property></emphasis> from the context menu</para></listitem>
+<listitem><para>Enter a name for Property in the dialog box. A new property will be created:</para></listitem>
+</itemizedlist>
+<figure float="0">
+ <title>New Property Is Added</title>
+<mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts_validation/struts_validation_2.png"></imagedata>
+ </imageobject>
+</mediaobject>
+</figure>
+<itemizedlist>
+<listitem><para>In the Properties view for the name field to the right of the "tree" for the validation.xml file, click on the <emphasis><property moreinfo="none">Change...</property></emphasis>button next to the Depends entry field</para></listitem>
+<listitem><para>In the displayed double list, select <emphasis><property moreinfo="none">required</property></emphasis> from the left list and then click <emphasis><property moreinfo="none">Add</property></emphasis></para></listitem>
+ <listitem><para>Click <emphasis><property moreinfo="none">Ok</property></emphasis></para></listitem>
+<listitem><para>Right-click name and select <emphasis><property moreinfo="none">Add Arg...</property></emphasis> from the context menu</para></listitem>
+<listitem><para>In the Add Arg dialog box, click on the <emphasis><property moreinfo="none">Change...</property></emphasis>button next to the <emphasis><property moreinfo="none">Key</property></emphasis> field</para></listitem>
+ <listitem><para>In the Key dialog box that appears now, click on the <emphasis><property moreinfo="none">Add</property></emphasis> button</para></listitem>
+ <listitem><para>Enter "name.required" in the Name field, and enter a person's name in the Value field</para></listitem>
+ <listitem><para>Click <emphasis><property moreinfo="none">Finish</property></emphasis>, then <emphasis><property moreinfo="none">Ok</property></emphasis>, and then <emphasis><property moreinfo="none">Ok</property></emphasis> again</para></listitem>
+<listitem><para>Select <emphasis><property moreinfo="none">File > Save All</property></emphasis> from the menu bar</para></listitem>
+</itemizedlist>
+</section>
+
+<section id="Client-SideValidation">
+<?dbhtml filename="Client-SideValidation.html"?>
+<title>Client-Side Validation</title>
+<para>Client-side <property moreinfo="none">validation</property> uses a scripting language (like JavaScript) running in the client browser to actually do the <property moreinfo="none">validation</property>. In a Struts application using the <property moreinfo="none">Validation</property> Framework, however, you don't actually have to do any of the script coding. The <property moreinfo="none">Validation</property> Framework handles this.</para>
+<para>To see how this works in our application, you'll just need to make a couple of modifications to one of the JSP files.</para>
+<itemizedlist>
+<listitem><para>Double-click inputname.jsp under <emphasis><property moreinfo="none">StrutsHello > WEB-ROOT(WebContent) > pages</property></emphasis> to open it for editing</para></listitem>
+<listitem><para>Find the tag near the top and hit Return to make a new line under it</para></listitem>
+ <listitem><para>In the JBoss Tools Palette view to the right, open the Struts HTML folder and click on the javascript tag</para></listitem>
+<listitem><para>Back in the editor, just in front of the closing slash for this inserted tag, hit Ctrl+Space and select "formName" from the prompting menu</para></listitem>
+<listitem><para>Over in the Web Projects view, select GetNameForm under the <emphasis><property moreinfo="none">StrutsHello > Configuration > default > struts-config.xml > form-beans</property></emphasis> node, drag it, and drop it between the quotes in the editor</para></listitem>
+<listitem><para>Modify the <code><html:form></code> tag by inserting this attribute:</para></listitem>
+</itemizedlist>
+<programlisting format="linespecific" role="XML"><![CDATA[onsubmit="return validateGetNameForm(this)"
+]]></programlisting>
+<para></para>
+<para>The file should now look like this:</para>
+<programlisting format="linespecific" role="XML"><![CDATA[
+<%@ taglib uri="/WEB-INF/struts-html" prefix="html" %>
+
+<html:html >
+ <head>
+ <html:javascript formName="GetNameForm"/>
+ <title></title>
+ </head>
+ <body>
+ <html:form action="/greeting.do" onsubmit="return validateGetNameForm(this)">
+ Input name:<html:text property="name"/><html:submit value="Say Hello!"/>
+ </html:form>
+ </body>
+</html:html>
+]]></programlisting>
+<itemizedlist>
+<listitem><para>Select<emphasis><property moreinfo="none"> File > Save </property></emphasis>from the menu bar</para></listitem>
+<listitem><para>Start JBoss Application Server by clicking on its icon (a right-pointing arrow) in the toolbar</para></listitem>
+ <listitem><para>Click the Run icon(<inlinemediaobject> <imageobject>
+ <imagedata fileref="images/struts_validation/struts_validation_1.png"></imagedata>
+ </imageobject></inlinemediaobject>) or right click your project folder and select <emphasis><property moreinfo="none">Run As > Run on Server</property></emphasis></para></listitem>
+</itemizedlist>
+
+<itemizedlist><listitem><para>In the browser window, click on the "Say Hello!" button without having entered any name in the form</para></listitem></itemizedlist>
+<para>A JavaScript error message should be displayed in an alert box.</para>
+</section>
+<section id="Server-SideValidation">
+<?dbhtml filename="Server-SideValidation.html"?>
+<title>Server Side Validation</title>
+<para>Server side validation does the validation inside the application on the server. In a Struts application using the Validation Framework, you still don't have to do any of the actual validation coding. The Validation Framework handles this. You will though have to make a few changes to the JSP file you modified for client-side validation along with a change to an action and a few changes to the form bean class.</para>
+</section>
+
+<section id="EditingTheJSPFile">
+<?dbhtml filename="EditingTheJSPFile.html"?>
+<title>Editing the JSP File</title>
+<itemizedlist>
+<listitem><para>Reopen inputname.jsp for editing</para></listitem>
+<listitem><para>Delete the <emphasis role="italic"><property moreinfo="none">"onsubmit"</property></emphasis> attribute in the <code><html:form></code> element that you put in for client-side validation</para></listitem>
+
+<listitem><para>Add an <code><html:errors/></code> tag after the
+ <code><html:form></code>
+ tag</para></listitem>
+</itemizedlist>
+<para>The JSP file should now look like this:</para>
+
+ <programlisting format="linespecific" role="XML"><![CDATA[<%@ taglib uri="/WEB-INF/struts-html" prefix="html" %>
+<html:html >
+<head>
+ <html:javascript formName="GetNameForm"/>
+ <title></title>
+ </head>
+ <body>
+ <html:form action="/greeting.do" >Input name:<html:text property="name"/>
+ <html:submit value="Say Hello!"/>
+ </html:form>
+ <html:errors/>
+ </body>
+</html:html>
+]]></programlisting>
+
+</section>
+
+<section id="EditingTheAction">
+<?dbhtml filename="EditingTheAction.html"?>
+<title>Editing the Action</title>
+<itemizedlist>
+<listitem><para>In the Web Projects view, expand the node under the <emphasis><property moreinfo="none">StrutsHello > Configuration > default > struts-config.xml > action-mappings</property></emphasis> node, right-click the <emphasis><property moreinfo="none">/greeting</property></emphasis> action, and then select <emphasis><property moreinfo="none">Properties...</property></emphasis>from the context menu</para></listitem>
+
+ <listitem><para>In the Edit Properties window, insert the cursor into the value column for the input property and click on the <property moreinfo="none">...</property> button</para></listitem>
+
+ <listitem><para>In the dialog box, make sure the Pages tab is selected, select <emphasis><property moreinfo="none">StrutsHello > WEB-ROOT(WebContent) > pages > inputname.jsp</property></emphasis>, click the <emphasis><property moreinfo="none">Ok</property></emphasis> button, and then click on the <emphasis><property moreinfo="none">Close</property></emphasis> button</para></listitem>
+</itemizedlist>
+</section>
+<section id="EditingTheFormBean">
+<?dbhtml filename="EditingTheFormBean.html"?>
+
+<title>Editing the Form Bean</title>
+<itemizedlist>
+<listitem><para>Right-click the <emphasis><property moreinfo="none">/greeting</property></emphasis> action again and select Open Form-bean Source to open the GetNameForm.java file for editing</para></listitem>
+<listitem><para>Change the class that it extends from: <emphasis><property moreinfo="none">org.apache.struts.action.ActionForm</property></emphasis> to <emphasis><property moreinfo="none">org.apache.struts.validator.ValidatorForm</property></emphasis></para></listitem>
+<listitem><para>Comment out a validate method</para></listitem>
+</itemizedlist>
+<para>The file should now look like this:</para>
+<programlisting format="linespecific" role="JAVA"><![CDATA[package sample;
+import javax.servlet.http.HttpServletRequest;
+import org.apache.struts.action.ActionErrors;
+import org.apache.struts.action.ActionMapping;
+public class GetNameForm extends
+
+org.apache.struts.validator.ValidatorForm
+{
+
+ private String name = "";
+
+ /**
+ * @return Returns the name.
+ */
+ public String getName()
+ {
+ return name;
+ }
+
+ /**
+ * @param name The name to set.
+ */
+ public void setName(String name)
+ {
+ this.name = name;
+ }
+
+ public GetNameForm ()
+ {
+ }
+
+ public void reset(ActionMapping actionMapping,
+ HttpServletRequest request)
+ {
+ this.name = "";
+ }
+
+ // public ActionErrors validate(ActionMapping actionMapping,
+ // HttpServletRequest request)
+ //{
+ // ActionErrors errors = new ActionErrors();
+ // return errors;
+ // }
+ }
+]]></programlisting>
+
+<itemizedlist>
+<listitem><para>Select <emphasis><property moreinfo="none">File > Save All </property></emphasis>from the menu bar</para></listitem>
+<listitem><para>Reload the application into JBoss AS by clicking on the "Change Time Stamp" icon (a finger pointing with a little star) in the toolbar</para></listitem>
+<listitem><para>Run the application</para></listitem>
+<listitem><para>In the browser window, click on the "Say Hello!" button without having entered any name in the form</para></listitem>
+</itemizedlist>
+<para>The error message should appear in a refreshed version of the form.</para>
+</section>
+
+</chapter>
+
+<chapter id="relevant_resources" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_tutorial/en/modules/relevant_resources.xml" xreflabel="relevant_resources">
+ <?dbhtml filename="relevant_resources.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>Struts</keyword>
+ <keyword>Struts Application</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Other Relevant Resources on the topic</title>
+
+ <para>Our reference: <ulink url="../../struts_tools_ref_guide/html_single/index.html">Struts Tools Reference Guide</ulink></para>
+ <para>Apache Struts: <ulink url="http://struts.apache.org/">Struts Technology</ulink></para>
+ <para>Struts 2: <ulink url="http://struts.apache.org/2.x/">Apache Struts 2</ulink></para>
+ <para>Get Started: <ulink url="http://struts.apache.org/2.x/docs/home.html">Struts Getting
+ Started</ulink></para>
+ <para>Struts on IBM: <ulink url="http://www.ibm.com/developerworks/library/j-struts/">Struts -
+ An open-source MVC implementation</ulink></para>
+ <para>FAQ: <ulink url="http://struts.apache.org/2.x/docs/faqs.html">Struts FAQ</ulink></para>
+ <para>Download: <ulink url="http://struts.apache.org/download.cgi#struts206">Release of Apache
+ Struts</ulink></para>
+
+ <para>Thus, this tutorial should help you to execute the hole development circle for building a
+ sample Struts-based Web application using <property moreinfo="none">JBoss Tools</property> bundle of Eclipse
+ plugins starting from organizing a new Struts project and ending with the running and
+ deploying it onto the <property moreinfo="none">JBoss Server</property>.</para>
+
+ <para>To find out all the features of <property moreinfo="none">JBoss Tools</property> for working with Struts
+ refer to our <ulink url="../../struts_tools_ref_guide/html_single/index.html">Struts Tools Reference Guide</ulink>. If you
+ still have questions you are always welcome on
+ <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss
+ Tools Forum</ulink>.</para>
+</chapter>
+
+
+
+</book>
14 years, 4 months
JBoss Tools SVN: r20337 - trunk/struts/docs/struts_tools_ref_guide/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2010-02-17 14:53:00 -0500 (Wed, 17 Feb 2010)
New Revision: 20337
Modified:
trunk/struts/docs/struts_tools_ref_guide/en/master.xml
trunk/struts/docs/struts_tools_ref_guide/en/master_output.xml
Log:
<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:9pt;font-family:Sans Serif">
<p>https://jira.jboss.org/jira/browse/JBDS-1104 - Updated versions,corrected master_output file</p>
</body></html>
Modified: trunk/struts/docs/struts_tools_ref_guide/en/master.xml
===================================================================
--- trunk/struts/docs/struts_tools_ref_guide/en/master.xml 2010-02-17 19:48:32 UTC (rev 20336)
+++ trunk/struts/docs/struts_tools_ref_guide/en/master.xml 2010-02-17 19:53:00 UTC (rev 20337)
@@ -46,14 +46,14 @@
<author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina(a)exadel.com</email></author>
<copyright>
- <year>2007</year>
+ <year>2007</year>
<year>2008</year>
- <year>2009</year>
+ <year>2009</year>
<year>2010</year>
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 3.1.0.CR1
+ Version: 3.1.0.CR2
</releaseinfo>
<abstract>
@@ -77,4 +77,4 @@
&page_links_recognizer;
&project_verification;
&rel_resources_links;
-</book>
+</book>
Modified: trunk/struts/docs/struts_tools_ref_guide/en/master_output.xml
===================================================================
--- trunk/struts/docs/struts_tools_ref_guide/en/master_output.xml 2010-02-17 19:48:32 UTC (rev 20336)
+++ trunk/struts/docs/struts_tools_ref_guide/en/master_output.xml 2010-02-17 19:53:00 UTC (rev 20337)
@@ -26,1302 +26,1306 @@
<!ENTITY strutstutoriallink "../../struts_tools_tutorial/html_single/index.html">
<!ENTITY migrationlink "../../Exadel-migration/html_single/index.html">
-]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
- <bookinfo>
- <title>Struts 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/struts_tools_ref_gui...">PDF version</ulink>
- </para>
-</abstract>
-
-
- </bookinfo>
-
- <toc></toc>
-
-
-<chapter id="intoduction" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_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>
- </keywordset>
- </chapterinfo>
-
- <title>Introduction</title>
-
- <para>If you prefer to develop web applications using Struts technology JBoss Tools also meet
- your needs. The professional developer toolset provides all necessary editors and wizards
- for creating Struts resources that enhances the process of building high-quality web
- applications.</para>
- <note>
- <title>Note:</title>
- <para>Note that JBoss Tools support the Struts 1.1, 1.2.x versions.</para>
- </note>
-
- <para>In this guide you will learn how to take advantage of Struts support that <property moreinfo="none">JBoss Tools</property>
- provide.</para>
-
- <section id="struts_key_features">
- <title>Key Features of Struts Tools</title>
-
- <para>For a start, we propose you to look through the table of main features of Struts
- Tools:</para>
-
- <table>
-
- <title>Key Functionality for Struts 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>Struts Support</para></entry>
- <entry><para>Step-by-step wizards for creating a new struts project with a number
- of predefined templates, importing existing ones and adding struts
- capabilities to non-struts web projects.</para></entry>
- <entry>
- <link linkend="projects">struts support</link>
- </entry>
- </row>
-
- <row>
- <entry><para>Support for Struts Configuration File</para></entry>
- <entry><para>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. Working with
- struts projects that have multiple modules. Possibility to use Struts
- configuration file debugger allowing to set break points on struts
- diagram and then launch the server in debug mode.</para></entry>
- <entry>
- <link linkend="struts_config_editor">graphical editor for struts</link>
- <link linkend="config_file_debugger">configuration file debugger</link>
- </entry>
- </row>
-
- <row>
- <entry><para>Support for Struts modules</para></entry>
- <entry><para>A Struts module (struts-config.xml) is automatically created while
- creating a new project. There is also possibility to add new ones or edit
- already existing modules in your existing project or while importing Struts project.</para></entry>
- <entry>
- <link linkend="modules">modules</link>
- </entry>
- </row>
-
- <row>
- <entry><para>Verification and Validation</para></entry>
- <entry><para>All occurring 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.</para></entry>
- <entry>
- <link linkend="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 documentation you can find on<ulink url="http://docs.jboss.org/tools/">JBoss Tools project page </ulink>.</para>
- <para>The latest documentation builds are available on<ulink url="http://download.jboss.org/jbosstools/nightly-docs/">nightly docs page</ulink>.</para>
-
- </section>
-
-</chapter>
-
-
-<chapter id="projects" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_ref_guide/en/modules/projects.xml">
- <?dbhtml filename="projects.html"?>
-
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Projects</title>
-
- <para>JBoss Tools provide the following functionality when working with Struts:</para>
-
- <itemizedlist>
- <listitem>
- <para>Create new <property moreinfo="none">Struts projects</property></para>
- </listitem>
- <listitem>
- <para>Import (open) existing Struts projects. You can import any project
- structure</para>
- </listitem>
- <listitem>
- <para>Add <property moreinfo="none">Struts capabilities</property> to any existing Eclipse
- project</para>
- </listitem>
- <listitem>
- <para>Import and add Struts capabilities to any existing project created outside
- Eclipse.</para>
- </listitem>
- </itemizedlist>
- <para>Now, we'll focus on all these points more fully.</para>
-
- <section id="CreatingANewStrutsProjec745t">
-
- <title>Creating a New Struts Project</title>
-
-
- <para>JBoss Tools provides a New Struts Project Wizard that radically simplifies the process
- for getting started with a new Struts project. You just need to follow these steps:</para>
- <itemizedlist>
- <listitem>
- <para>Select<emphasis>
- <property moreinfo="none">File > New > Project...</property>
- </emphasis> from the menu bar. Then, select <emphasis>
- <property moreinfo="none">JBoss Tools Web > Struts > Struts Project</property>
- </emphasis> in this dialog box. Click <emphasis>
- <property moreinfo="none">Next</property>: </emphasis></para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Selecting Struts Wizard</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>On this form, provide the <property moreinfo="none">Project Name</property>. You can also
- select where to create the project or use the default path.</para>
- <para>Next to <property moreinfo="none">Struts Environment</property> set which Struts version to
- use.</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Creating Struts Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_3.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <tip>
- <title>Tip:</title>
- <para>Don't put spaces in project names since some OS could experience problems
- with their processing and searching these files.</para>
- </tip>
-
- <para>You can select the KickStart template, then the project created will include a simple
- Hello World type application that is ready to run.</para>
-
- <figure float="0">
- <title>Choosing Struts Template </title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_3_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <itemizedlist>
- <listitem>
- <para>Next, you register this application with the current servlet container defined
- for your workspace (JBoss AS, by default) in order to allow you to test your
- application more easily while still developing it. A new entry will be added in
- the servlet container configuration file to enable running the application
- in-place (called null deployment or link deployment). Uncheck the <emphasis role="italic">
- <property moreinfo="none">"Target Server"</property>
- </emphasis> check box if for some reason you don't want to register
- your application at this point.</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Registering The Project at Server</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>On the next form, you can select the TLD files to include in this
- project:</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Selecting Tag Libraries</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>After the project is created, you should have the following project structure (if you
- used the KickStart template):</para>
-
- <figure float="0">
- <title>Project Structure</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <tip>
- <title>Tip:</title>
- <para>If you want to hide the jar files from Web App Libraries in view, select the
- down-pointing arrow in the upper right corner, select
- <emphasis>Filters...</emphasis>, check the box next to Name filter patterns
- (matching names will be hidden), and type *.jar into the field. Then, click OK.
- </para>
- </tip>
- </section>
- <section id="ImportingAnExistingStrutsProjectWithAnyStructure9653">
-
- <title>Importing an Existing Struts Project with Any Structure</title>
-
- <para>For detailed information on migration projects to JBoss Developer Studio see <ulink url="../../Exadel-migration/html_single/index.html">Migration Guide</ulink>.</para>
-
- </section>
- <section id="AddingStrutsCapabilityToAnExistingWebApplication532">
-
- <title>Adding Struts Capability to an Existing Web Application</title>
-
- <para>Here, we'll consider how to add Struts functionality (Struts libraries, tag
- libraries and a Struts configuration file) to any existing Web application project in
- your Eclipse workspace.</para>
-
- <para>By adding a Struts Nature to your project, you can now edit files using JBoss Tools
- editors, such as the <link linkend="struts_config_editor">Struts configuration
- editor</link> and the JBoss Tools JSP editor. To take advantage of this just right-click
- the project and select <emphasis>
- <property moreinfo="none">JBoss Tools > Add Struts Capabilities</property>
- </emphasis> from the context menu. This will start the process of adding all necessary
- libraries and files to make a Web Struts project from your one.</para>
-
- <figure float="0">
- <title>Adding Struts Capabilities</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_7.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>In the wizard you should point to location of your deployment descriptor file web.xml
- and name of the project.</para>
-
- <figure float="0">
- <title>Choosing Project Location</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>After hitting <emphasis>
- <property moreinfo="none">Next</property>, </emphasis> you will see the following screen. This
- screen simply means that you need to add at least one Struts module to your project to
- make this project a Struts project. Adding a Struts module means that a new
- struts-config.xml will be added to your project and registered in the web.xml file. In
- addition, all required Struts libraries will be added. To add a Struts module, select
- the <emphasis>
- <property moreinfo="none">Add Struts Support</property>
- </emphasis> button.</para>
- <figure float="0">
- <title>Project Modules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_9.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Here you can select what Struts <property moreinfo="none">Version</property>, <property moreinfo="none">Servlet
- Class</property>, <property moreinfo="none">URL Pattern</property> and <property moreinfo="none">TLD</property>s to add
- to this project.</para>
-
- <figure float="0">
- <title>Selecting Struts Support Options</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_10.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>When done, you will see the default Struts module configuration information. See how
- to Edit <link linkend="modules">Struts modules</link>.</para>
-
- <figure float="0">
- <title>Project Configuration Information</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_11.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On the last screen you can set the different folders for your project as well as
- register this application with a servlet container. If you want the libraries (.jar
- files) will be automatically added to your project, click on the checkbox <emphasis>
- <property moreinfo="none">Add Libraries</property>.</emphasis></para>
-
- <figure float="0">
- <title>Registering the Project at Server</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_12.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>When done, you can open end edit the struts-config.xml file using useful Struts
- configuration file editor provided by JBDS. (The Struts configuration is shown below in
- the Tree viewer).</para>
-
- <figure float="0">
- <title>Struts-config.xml File</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_13.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </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 Struts applications in our <ulink url="../../jsf/html_single/index.html">Visual Web Tools guide</ulink>.</para>
- </section>
-</chapter>
-
-
-<chapter id="editors" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_ref_guide/en/modules/editors.xml">
- <?dbhtml filename="editors.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Struts Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Editors</title>
- <para>In this chapter we'll introduce you to featured graphical editors for specific
- Struts files such as Struts Configuration files, Tiles files, Struts Validation files and web.xml.</para>
-
- <section id="webxml_editor">
- <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 Struts 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>
- </section>
-
- <section id="struts_config_editor">
-
- <title>Graphical Editor for Struts Configuration Files</title>
- <para>First, let's dwell on the Struts Configuration file editor.</para>
- <para>This editor has three views with different representation of <emphasis>
- <property moreinfo="none">struts-config.xml</property>: </emphasis>Diagram, Tree and Source. The
- views can be selected via the tabs at the bottom of the editor. Any changes made in one
- view are immediately visible when you switch to any other view.</para>
-
- <para>Now, we'll consider every view in more detail.</para>
- <section id="StrutsDiagramMode453">
-
- <title>Diagram View</title>
-
- <para>The Diagram view graphically displays the Web flow of the application defined in
- the Struts configuration file.</para>
-
- <figure float="0">
- <title>Diagram View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_14.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The Diagram view allows to edit navigation in your Struts application. Just by
- right-clicking anywhere on the diagram, you can use a context menu to create the
- building blocks of a Struts application:</para>
- <itemizedlist>
- <listitem>
- <para>Actions</para>
- </listitem>
- <listitem>
- <para>Global forwards</para>
- </listitem>
- <listitem>
- <para>Global exceptions</para>
- </listitem>
- <listitem>
- <para>JSP Pages</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Diagram Context Menu</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_15.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Along the upper-left side of the editor is a stack of seven icons for changing the
- behavior of the cursor in the diagram. </para>
-
- <figure float="0">
- <title>Editor Icons</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_16.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The first icon switches to the default regular selection cursor, the second to the
- marquee selection cursor and the third to the new connection cursor. The last four
- icons switch the cursor to an insert cursor for each type of Struts build block
- listed above (and in the order listed).</para>
-
- <para>For instance, clicking on the first of these four icons (the one with the gears)
- will switch the cursor to insert actions. Clicking anywhere in the diagram with this
- cursor has the same effect as right-click and selecting <emphasis>
- <property moreinfo="none">Add > Action...</property>
- </emphasis> from the context menu with the regular cursor active. It's just
- more efficient to use this cursor if you're adding more than one action at
- once.</para>
-
-
- </section>
- <section id="StrutsTreeMode42">
-
- <title>Tree View</title>
-
- <para>The Tree view represents the different elements of the Struts application that are organized into functional categories
- on the left-hand side and a form for editing the properties of currently selected items on the right-hand side.</para>
-
- <figure float="0">
- <title>Tree View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_17.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>You can right-click on any node in the category tree and perform appropriate
- operations through a context menu. For instance, by right-clicking on the
- action-mappings category node, you can add new actions to the application.</para>
-
- <figure float="0">
- <title>Tree Context Menu</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_18.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Let's consider the tree on the left more closely.</para>
-
- <itemizedlist>
- <listitem><para>Under the <emphasis>
- <property moreinfo="none">data-sources</property></emphasis> node you can create a Data Source object that will be configured
- and made available as a servlet context attribute.</para></listitem>
-
- <listitem><para>The <emphasis>
- <property moreinfo="none">form-beans</property></emphasis> node is meant for creating a set of form bean descriptors for this module.
- Every created element under this node is a JavaBean that implements the org.apache.struts.action.ActionForm class.
- Use the Properties editor on the right to adjust properties specific to every created form-bean.</para></listitem>
-
- <listitem><para>The <emphasis>
- <property moreinfo="none">global-exceptions</property></emphasis> node is intended for registering the handlers for the exceptions
- that might be thrown by an Action object.</para></listitem>
-
- <listitem><para>Use the <emphasis>
- <property moreinfo="none">global-forwards</property></emphasis> node to add, edit or delete a global forwards that represent
- ActionForward objects available to all Action objects as a return value.</para></listitem>
-
- <listitem><para>The <emphasis>
- <property moreinfo="none">controller</property></emphasis> node allows you to configure the controller properties.</para></listitem>
-
- <listitem><para>Under the <emphasis>
- <property moreinfo="none">resources</property></emphasis> node you can add, delete, or edit message resources.</para></listitem>
-
- <listitem><para>Under the <emphasis>
- <property moreinfo="none">plug-ins</property></emphasis> node you can define a Struts plug-in. Right-click the node, select <emphasis>
- <property moreinfo="none">Create Plug-in</property></emphasis>
- and specify the plug-ib <emphasis>
- <property moreinfo="none">Id</property></emphasis> and <emphasis>
- <property moreinfo="none">ClassName</property></emphasis> by pointing to the Java class which implements the org.apache.struts.action.PlugIn interface. </para></listitem>
-
- </itemizedlist>
- </section>
- <section id="StrutsSourceMode9655">
-
- <title>Source View</title>
-
- <para>In the Source view, you have complete editing control of the underlying XML
- coding.</para>
-
- <figure float="0">
- <title>Source View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_19.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>When working in Source view, you always have all the following features available:</para>
- <itemizedlist>
- <listitem>
- <para>Content Assist</para>
- </listitem>
- <listitem>
- <para>Open On Selection</para>
- </listitem>
- <listitem>
- <para>File Folding</para>
- </listitem>
- </itemizedlist>
- <para>You can take advantage of <ulink url="../../jsf/html_single/index.html#CodeAssistAndDynamicCodeAssist42BasedOnProjectData">code assist</ulink>.</para>
- <figure float="0">
- <title>Code Assist</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_20.png" scale="85"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The editor will also immediately flag any errors.</para>
-
- <figure float="0">
- <title>Errors in Source View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_21.png" scale="85"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Finally, you can use the Outline view with the editor to easily navigate through
- the file.</para>
-
- <figure float="0">
- <title>Outline View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_22.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Find more information about editor features <ulink url="../../jsf/html_single/index.html#editors_features">in the editor features chapter</ulink>.</para>
- </section>
- </section>
-
- <section id="GraphicalEditorForTilesFiles132">
-
- <title>Graphical Editor for Tiles Files</title>
- <para>Here, you'll know how to make use of the special graphical editor for Tiles configuration files.</para>
- <para>The editor has three main views: Tree, Diagram and Source.
- The views can be selected via the tabs at the bottom of the editor. Any changes made in
- one view are immediately visible when you switch to any other view.</para>
-
- <para>Before we consider each view of the editor, let's look at the way of creating new Tiles files.</para>
- <section id="CreateNewTilesFile1422">
-
- <title>Create New Tiles File</title>
-
- <para>To create new Tiles files, right click any folder and select <emphasis>
- <property moreinfo="none">New > Tiles File</property>. </emphasis></para>
- <figure float="0">
- <title>Creating a New Tiles File</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_23.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section id="StrutsTreeView896">
-
- <title>Tree View</title>
-
- <para>The Tree view represents the different elements of the Tiles file that are
- organized into functional categories on the left-hand side and a form for editing
- the properties of currently selected items on the right-hand side.</para>
- <figure float="0">
- <title>Tree View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_24.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>To edit the file, simply right click any node and select among the available
- actions.</para>
- <figure float="0">
- <title>Editing in Tiles Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_25.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section id="StrutsDiagramView4643">
-
- <title>Diagram View</title>
-
- <para>The Diagram view allows you to create complex Tiles files in the form of a
- diagram.</para>
- <figure float="0">
- <title>Diagram Mode</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_26.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>To create new definitions, simply right click anywhere in the diagram.</para>
- <figure float="0">
- <title>Creating New Definition</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_27.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>You can also use the Diagram toolbar to make editing easier.</para>
- <figure float="0">
- <title>Diagram Toolbar</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_28.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para> It contains four icons for changing the cursor state. The first one is the
- default cursor state for selecting existing nodes. The second icon is marquee
- selector. The third is used for creating new connections and the last one is for
- adding definition template to the content.</para>
- </section>
- <section id="StrutsSource75">
-
- <title>Source</title>
-
- <para>The other view of the <property moreinfo="none">Tiles editor</property> is the Source view that
- gives you full control over the source. Any changes here will immediately appear in
- other modes when you switch to them.</para>
-
- <para>When working in Source view, you always have all following features available:</para>
- <itemizedlist>
- <listitem>
- <para>Content Assist</para>
- </listitem>
- <listitem>
- <para>Open On Selection</para>
- </listitem>
- </itemizedlist>
-
- <figure float="0">
- <title>Source View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_29.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para><ulink url="../../jsf/html_single/index.html#CodeAssistAndDynamicCodeAssist42BasedOnProjectData">Code
- assist</ulink> is available in the Source mode.</para>
- <figure float="0">
- <title>Code Assist</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_30.png" scale="85"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Any errors are immediately reported as shown below:</para>
- <figure float="0">
- <title>Errors Reporting</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_31.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>You can also use the Outline view together with the editor's Source mode.
- It provides an easier navigation through the file.</para>
- <figure float="0">
- <title>Outline View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_32.png" scale="85"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- </section>
-
- <section id="GraphicalEditorForStrutsValidationFiles86">
-
- <title>Graphical Editor for Struts Validation Files</title>
-
- <para>Providing full support for development Struts applications JBoss Tools comes with a
- visual validation editor. To open the editor double-click on the validation file or if you don't have it create a new one.</para>
-
- <para>To create a new validation file, right click any folder in
- Project Explorer and select <emphasis>
- <property moreinfo="none">File > New > Other...</property>
- </emphasis>from the context menu and then <emphasis>
- <property moreinfo="none">JBoss Tools Web > Struts > Validation File</property>. </emphasis></para>
- <figure float="0">
- <title>Creating New Validation File</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_33.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The validation editor works with five modes: Formsets, Validators, Constants and
- standard Tree and Source that you can easily switch over using tabs at the bottom of the
- editor.</para>
- <para>The Formsets view shows forms and their elements on the left side and the dialogue for
- defining their validation rules on the right side.</para>
- <figure float="0">
- <title>Formsets View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_34.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The Constants view let you set constant values for your validation rules.</para>
- <figure float="0">
- <title>Constansts View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_35.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The validation file can also be viewed in a Tree view.</para>
- <figure float="0">
- <title>Tree View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_36.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>At any point you have full control over the source by switching to the Source view.
- Any editing in this view will immediately be available in other views of the editor.</para>
- <figure float="0">
- <title>Source View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_37.png" scale="85"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>You can also open your own custom or Struts-standard <emphasis>
- <property moreinfo="none">validation-rules.xml</property>
- </emphasis> file.</para>
- <para>The Validators view shows the validation rules for a selected validator. You can of
- course add your own rules.</para>
- <figure float="0">
- <title>Validators View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_38.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Here are the validation rules shown in the Source mode.</para>
- <figure float="0">
- <title>Validation Rules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_39.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-</chapter>
-
-
-<chapter id="modules" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_ref_guide/en/modules/modules.xml">
- <?dbhtml filename="modules.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Struts Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Modules</title>
-
- <para>JBoss Tools support working with Struts projects that have
- multiple modules. You can easily do the following:</para>
- <itemizedlist>
- <listitem>
- <para>Add new modules</para>
- </listitem>
- <listitem>
- <para>Edit modules for an existing project or during Struts project
- import</para>
- </listitem>
- </itemizedlist>
- <para>Now, let's discuss this functionality in more detail.</para>
- <section id="WhenImportingAStrutsProject432">
-
- <title>When Importing a Struts Project</title>
-
- <para>During Struts project import, if the project has multiple modules, you
- will see a screen with all existing modules. You can select each
- module and edit its details.</para>
-
- <figure float="0">
- <title>Configuring Project Modules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_40.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section id="EditingModulesInAnExistingProject1">
-
- <title>Editing Modules in an Existing Project</title>
- <para>To edit modules in an existing project, right click the project and
- select <emphasis>
- <property moreinfo="none">JBoss Tools > Modules Configuration</property>.
- </emphasis></para>
- <figure float="0">
- <title>Choosing Modules Configuration</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_41.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>You will see the same screen as above where you will be able to select
- a module and edit its details.</para>
- <figure float="0">
- <title>Modules Configuration</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_42.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
- <section id="AddingNewModules1">
-
- <title>Adding New Modules</title>
-
- <para>Adding a new module is very simple. First switch to Web Project view.
- Expand your project to the Configuration folder. Under that folder
- you should see the current modules. Right click on Configuration and
- select <emphasis>
- <property moreinfo="none">New > Struts Config</property>. </emphasis></para>
- <figure float="0">
- <title>Adding New Modules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_43.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>You will see the screen below. You can specify a new module name and
- also add the new Struts configuration file to web.xml file.</para>
- <figure float="0">
- <title>Adding New Modules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_44.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </section>
-</chapter>
-
-
-<chapter id="code_generation" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_ref_guide/en/modules/code_generation.xml">
- <?dbhtml filename="code_generation.html"?>
-
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Struts Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Code Generation</title>
-
- <para>JBoss Tools comes with a <property moreinfo="none">code generation</property>
- feature. You can generate stub code for Struts Actions, FormBeans, Forwards
- and Exceptions.</para>
-
- <para>The code generation that JBoss tooling provides is based on Velocity templates
- which can be modified for your use. The templates are located at <emphasis>
- <property moreinfo="none"> {JBossStudioHome} > templates >
- codegeneration</property>. </emphasis></para>
-
- <para>There are a number of ways to invoke code generation. One is simply
- right-clicking the Struts diagram and selecting <emphasis>
- <property moreinfo="none">Generate Java Code....</property>
- </emphasis></para>
-
- <figure float="0">
- <title>Selecting Generate Java Code</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_45.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>On this screen you can select for which elements to generate code. If you
- select Next you will be able to specify more options for each of the
- categories you selected.</para>
-
- <figure float="0">
- <title>Generate - Step 1</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_46.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <tip>
- <title>Tip:</title>
- <para>Please be careful not to override your existing files.</para>
- </tip>
-
- <para>When generation is complete, a result window will appear letting you know how
- many classes were generated:</para>
-
- <figure float="0">
- <title>Generation Finished</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_47.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>You don't always have to generate code for all elements at once. You
- can invoke generation for just an individual Struts artifact as well.
- Right-click an element on the diagram of the Struts configuration file and
- select <emphasis>
- <property moreinfo="none">Generate Java Code...</property>
- </emphasis> from the context menu.</para>
-
- <figure float="0">
- <title>Generation For Individual Struts Artifact</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_48.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>The same can be done from within the Tree viewer for the editor of the Struts
- configuration file.</para>
-
- <figure float="0">
- <title>Generation in Struts Config Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_49.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-</chapter>
-
-<chapter id="config_file_debugger" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_ref_guide/en/modules/config_file_debugger.xml">
- <?dbhtml filename="config_file_debugger.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Struts Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Struts Configuration File Debugger</title>
-
- <para>JBoss Tools come with <property moreinfo="none">Struts configuration file
- debugger</property>. It allows you to set break points on Struts diagram and
- then simply launch the server in debug mode.</para>
-
- <para>Simply right click an Action or a page and select Add <emphasis>
- <property moreinfo="none">Breakpoint</property>. </emphasis></para>
- <figure float="0">
- <title>Adding Breakpoint</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_50.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-</chapter>
-
-<chapter id="page_links_recognizer" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_ref_guide/en/modules/page_links_recognizer.xml">
- <?dbhtml filename="page_links_recognizer.html"?>
-
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Customizable Page Links Recognizer</title>
-
- <para><property moreinfo="none">Custom page links</property> allow you to define custom Struts page
- links that will be recognizable in the Struts application diagram. You can
- define these links by selecting <emphasis>
- <property moreinfo="none">Window > Preferences</property>
- </emphasis> from the menu bar and then selecting <emphasis>
- <property moreinfo="none">JBoss Tools > Web > Struts > Customization</property>
- </emphasis> from the Preferences dialog box.</para>
- <figure float="0">
- <title>Customization Panel</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/struts/struts_51.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-</chapter>
-
-<chapter id="project_verification" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_ref_guide/en/modules/project_verification.xml">
- <?dbhtml filename="project_verification.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Struts Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Struts Project Verification</title>
-
- <para>In this section we'll consider one more functionality that JBoss Tools provide for Struts
- projects, namely adjusting projects verification.</para>
-
- <para>To configure Struts project verification select <emphasis>
- <property moreinfo="none">Window > Preferences</property>
- </emphasis> from the menu bar, select <emphasis>
- <property moreinfo="none">JBoss Tools > Web > Verification</property>
- </emphasis> from the Preferences dialog box and then expand the
- Struts Rules node.</para>
- <figure float="0">
- <title>Struts Rules</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Suppose you are working in the Source viewer for a Struts
- configuration file as shown below:</para>
- <figure float="0">
- <title>Struts Configuration File</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_9.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>While typing a class name or entering it from the graphical editor,
- you might make a minor typo (like <emphasis role="italic">
- <property moreinfo="none">"sample.GreetingAction1"</property>
- </emphasis> instead of <emphasis role="italic">
- <property moreinfo="none">"sample.GreetingAction"</property>
- </emphasis>). After saving the file,
- <property moreinfo="none">verification</property> checks to make sure everything is
- correct and finds the error below:</para>
- <figure float="0">
- <title>Error Reporting</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_10.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 the error to view a
- detailed error message:</para>
- <figure float="0">
- <title>Error Message</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_11.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>The verification also checks to make sure you have specified the
- correct JSP page for the forward:</para>
- <figure float="0">
- <title>JSP Page Verification</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_12.png" scale="75"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Once you place the cursor over the line, you can see the error
- message:</para>
- <figure float="0">
- <title>Error Message</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_13.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>You can always invoke the verification by switching to the Diagram
- viewer, right-clicking and selecting <emphasis>
- <property moreinfo="none">Verify</property>
- </emphasis> from the context menu:</para>
- <figure float="0">
- <title>Verify Command</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/verif_valid/verif_valid_14.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-</chapter>
-
-<chapter id="rel_resources_links" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/struts/docs/struts_tools_ref_guide/en/modules/rel_resources_links.xml">
- <?dbhtml filename="rel_resources_links.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Struts Tools</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Relevant Resources Links</title>
-
- <para>Find out necessary information on <ulink url="http://struts.apache.org/">Struts
- technology</ulink> if you don't know enough.</para>
-
- <para>In summary, this reference should help you to get familiar with those parts of
- <property moreinfo="none">JBoss Tools</property> which are meant for development with Struts
- technology. If you've carefully gone through the document, you should know
- now how to create/import Struts project or enable Struts capabilities for an
- existing web project as well as organize and edit all necessary staff for your
- Struts application using a set of views and editors provided by <property moreinfo="none">JBoss
- Tools</property>.</para>
-
- <para>If you'd like to contribute your feedback is always appreciated. You can
- leave your questions and suggestions on our <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">Forum</ulink>.</para>
- <para>We hope, this guide helped you to get started with the JBoss Struts 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>
-</chapter>
-
-</book>
+]><book xmlns:diffmk="http://diffmk.sf.net/ns/diff">
+ <bookinfo>
+ <title>Struts 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>
+
+ <copyright>
+ <year>2007</year>
+ <year><diffmk:wrapper diffmk:change="added">2008</diffmk:wrapper></year>
+ <year diffmk:change="added">2009</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2010</diffmk:wrapper></year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo><diffmk:wrapper diffmk:change="changed">
+ Version: 3.1.0.CR2
+ </diffmk:wrapper></releaseinfo>
+
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/struts_tools_ref_gui...">PDF version</ulink>
+ </para>
+</abstract>
+
+
+ </bookinfo>
+
+ <toc></toc>
+
+
+<chapter id="intoduction" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_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>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Introduction</title>
+
+ <para>If you prefer to develop web applications using Struts technology JBoss Tools also meet
+ your needs. The professional developer toolset provides all necessary editors and wizards
+ for creating Struts resources that enhances the process of building high-quality web
+ applications.</para>
+ <note>
+ <title>Note:</title>
+ <para>Note that JBoss Tools support the Struts 1.1, 1.2.x versions.</para>
+ </note>
+
+ <para>In this guide you will learn how to take advantage of Struts support that <property moreinfo="none">JBoss Tools</property>
+ provide.</para>
+
+ <section id="struts_key_features">
+ <title>Key Features of Struts Tools</title>
+
+ <para>For a start, we propose you to look through the table of main features of Struts
+ Tools:</para>
+
+ <table>
+
+ <title>Key Functionality for Struts 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>Struts Support</para></entry>
+ <entry><para>Step-by-step wizards for creating a new struts project with a number
+ of predefined templates, importing existing ones and adding struts
+ capabilities to non-struts web projects.</para></entry>
+ <entry>
+ <link linkend="projects">struts support</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry><para>Support for Struts Configuration File</para></entry>
+ <entry><para>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. Working with
+ struts projects that have multiple modules. Possibility to use Struts
+ configuration file debugger allowing to set break points on struts
+ diagram and then launch the server in debug mode.</para></entry>
+ <entry>
+ <link linkend="struts_config_editor">graphical editor for struts</link>
+ <link linkend="config_file_debugger">configuration file debugger</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry><para>Support for Struts modules</para></entry>
+ <entry><para>A Struts module (struts-config.xml) is automatically created while
+ creating a new project. There is also possibility to add new ones or edit
+ already existing modules in your existing project or while importing Struts project.</para></entry>
+ <entry>
+ <link linkend="modules">modules</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry><para>Verification and Validation</para></entry>
+ <entry><para>All occurring 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.</para></entry>
+ <entry>
+ <link linkend="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 documentation you can find on<ulink url="http://docs.jboss.org/tools/">JBoss Tools project page </ulink>.</para>
+ <para>The latest documentation builds are available on<ulink url="http://download.jboss.org/jbosstools/nightly-docs/">nightly docs page</ulink>.</para>
+
+ </section>
+
+</chapter>
+
+
+<chapter id="projects" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_ref_guide/en/modules/projects.xml">
+ <?dbhtml filename="projects.html"?>
+
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Projects</title>
+
+ <para>JBoss Tools provide the following functionality when working with Struts:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Create new <property moreinfo="none">Struts projects</property></para>
+ </listitem>
+ <listitem>
+ <para>Import (open) existing Struts projects. You can import any project
+ structure</para>
+ </listitem>
+ <listitem>
+ <para>Add <property moreinfo="none">Struts capabilities</property> to any existing Eclipse
+ project</para>
+ </listitem>
+ <listitem>
+ <para>Import and add Struts capabilities to any existing project created outside
+ Eclipse.</para>
+ </listitem>
+ </itemizedlist>
+ <para>Now, we'll focus on all these points more fully.</para>
+
+ <section id="CreatingANewStrutsProjec745t">
+
+ <title>Creating a New Struts Project</title>
+
+
+ <para>JBoss Tools provides a New Struts Project Wizard that radically simplifies the process
+ for getting started with a new Struts project. You just need to follow these steps:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Select<emphasis>
+ <property moreinfo="none">File > New > Project...</property>
+ </emphasis> from the menu bar. Then, select <emphasis>
+ <property moreinfo="none">JBoss Tools Web > Struts > Struts Project</property>
+ </emphasis> in this dialog box. Click <emphasis>
+ <property moreinfo="none">Next</property>: </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Selecting Struts Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>On this form, provide the <property moreinfo="none">Project Name</property>. You can also
+ select where to create the project or use the default path.</para>
+ <para>Next to <property moreinfo="none">Struts Environment</property> set which Struts version to
+ use.</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Creating Struts Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_3.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <tip>
+ <title>Tip:</title>
+ <para>Don't put spaces in project names since some OS could experience problems
+ with their processing and searching these files.</para>
+ </tip>
+
+ <para>You can select the KickStart template, then the project created will include a simple
+ Hello World type application that is ready to run.</para>
+
+ <figure float="0">
+ <title>Choosing Struts Template </title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_3_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <itemizedlist>
+ <listitem>
+ <para>Next, you register this application with the current servlet container defined
+ for your workspace (JBoss AS, by default) in order to allow you to test your
+ application more easily while still developing it. A new entry will be added in
+ the servlet container configuration file to enable running the application
+ in-place (called null deployment or link deployment). Uncheck the <emphasis role="italic">
+ <property moreinfo="none">"Target Server"</property>
+ </emphasis> check box if for some reason you don't want to register
+ your application at this point.</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Registering The Project at Server</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>On the next form, you can select the TLD files to include in this
+ project:</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Selecting Tag Libraries</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>After the project is created, you should have the following project structure (if you
+ used the KickStart template):</para>
+
+ <figure float="0">
+ <title>Project Structure</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <tip>
+ <title>Tip:</title>
+ <para>If you want to hide the jar files from Web App Libraries in view, select the
+ down-pointing arrow in the upper right corner, select
+ <emphasis>Filters...</emphasis>, check the box next to Name filter patterns
+ (matching names will be hidden), and type *.jar into the field. Then, click OK.
+ </para>
+ </tip>
+ </section>
+ <section id="ImportingAnExistingStrutsProjectWithAnyStructure9653">
+
+ <title>Importing an Existing Struts Project with Any Structure</title>
+
+ <para>For detailed information on migration projects to JBoss Developer Studio see <ulink url="../../Exadel-migration/html_single/index.html">Migration Guide</ulink>.</para>
+
+ </section>
+ <section id="AddingStrutsCapabilityToAnExistingWebApplication532">
+
+ <title>Adding Struts Capability to an Existing Web Application</title>
+
+ <para>Here, we'll consider how to add Struts functionality (Struts libraries, tag
+ libraries and a Struts configuration file) to any existing Web application project in
+ your Eclipse workspace.</para>
+
+ <para>By adding a Struts Nature to your project, you can now edit files using JBoss Tools
+ editors, such as the <link linkend="struts_config_editor">Struts configuration
+ editor</link> and the JBoss Tools JSP editor. To take advantage of this just right-click
+ the project and select <emphasis>
+ <property moreinfo="none">JBoss Tools > Add Struts Capabilities</property>
+ </emphasis> from the context menu. This will start the process of adding all necessary
+ libraries and files to make a Web Struts project from your one.</para>
+
+ <figure float="0">
+ <title>Adding Struts Capabilities</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_7.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>In the wizard you should point to location of your deployment descriptor file web.xml
+ and name of the project.</para>
+
+ <figure float="0">
+ <title>Choosing Project Location</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>After hitting <emphasis>
+ <property moreinfo="none">Next</property>, </emphasis> you will see the following screen. This
+ screen simply means that you need to add at least one Struts module to your project to
+ make this project a Struts project. Adding a Struts module means that a new
+ struts-config.xml will be added to your project and registered in the web.xml file. In
+ addition, all required Struts libraries will be added. To add a Struts module, select
+ the <emphasis>
+ <property moreinfo="none">Add Struts Support</property>
+ </emphasis> button.</para>
+ <figure float="0">
+ <title>Project Modules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_9.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Here you can select what Struts <property moreinfo="none">Version</property>, <property moreinfo="none">Servlet
+ Class</property>, <property moreinfo="none">URL Pattern</property> and <property moreinfo="none">TLD</property>s to add
+ to this project.</para>
+
+ <figure float="0">
+ <title>Selecting Struts Support Options</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_10.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>When done, you will see the default Struts module configuration information. See how
+ to Edit <link linkend="modules">Struts modules</link>.</para>
+
+ <figure float="0">
+ <title>Project Configuration Information</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_11.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On the last screen you can set the different folders for your project as well as
+ register this application with a servlet container. If you want the libraries (.jar
+ files) will be automatically added to your project, click on the checkbox <emphasis>
+ <property moreinfo="none">Add Libraries</property>.</emphasis></para>
+
+ <figure float="0">
+ <title>Registering the Project at Server</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_12.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>When done, you can open end edit the struts-config.xml file using useful Struts
+ configuration file editor provided by JBDS. (The Struts configuration is shown below in
+ the Tree viewer).</para>
+
+ <figure float="0">
+ <title>Struts-config.xml File</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_13.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </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 Struts applications in our <ulink url="../../jsf/html_single/index.html">Visual Web Tools guide</ulink>.</para>
+ </section>
+</chapter>
+
+
+<chapter id="editors" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_ref_guide/en/modules/editors.xml">
+ <?dbhtml filename="editors.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Struts Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Editors</title>
+ <para>In this chapter we'll introduce you to featured graphical editors for specific
+ Struts files such as Struts Configuration files, Tiles files, Struts Validation files and web.xml.</para>
+
+ <section id="webxml_editor">
+ <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 Struts 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>
+ </section>
+
+ <section id="struts_config_editor">
+
+ <title>Graphical Editor for Struts Configuration Files</title>
+ <para>First, let's dwell on the Struts Configuration file editor.</para>
+ <para>This editor has three views with different representation of <emphasis>
+ <property moreinfo="none">struts-config.xml</property>: </emphasis>Diagram, Tree and Source. The
+ views can be selected via the tabs at the bottom of the editor. Any changes made in one
+ view are immediately visible when you switch to any other view.</para>
+
+ <para>Now, we'll consider every view in more detail.</para>
+ <section id="StrutsDiagramMode453">
+
+ <title>Diagram View</title>
+
+ <para>The Diagram view graphically displays the Web flow of the application defined in
+ the Struts configuration file.</para>
+
+ <figure float="0">
+ <title>Diagram View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_14.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The Diagram view allows to edit navigation in your Struts application. Just by
+ right-clicking anywhere on the diagram, you can use a context menu to create the
+ building blocks of a Struts application:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Actions</para>
+ </listitem>
+ <listitem>
+ <para>Global forwards</para>
+ </listitem>
+ <listitem>
+ <para>Global exceptions</para>
+ </listitem>
+ <listitem>
+ <para>JSP Pages</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Diagram Context Menu</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_15.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Along the upper-left side of the editor is a stack of seven icons for changing the
+ behavior of the cursor in the diagram. </para>
+
+ <figure float="0">
+ <title>Editor Icons</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_16.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The first icon switches to the default regular selection cursor, the second to the
+ marquee selection cursor and the third to the new connection cursor. The last four
+ icons switch the cursor to an insert cursor for each type of Struts build block
+ listed above (and in the order listed).</para>
+
+ <para>For instance, clicking on the first of these four icons (the one with the gears)
+ will switch the cursor to insert actions. Clicking anywhere in the diagram with this
+ cursor has the same effect as right-click and selecting <emphasis>
+ <property moreinfo="none">Add > Action...</property>
+ </emphasis> from the context menu with the regular cursor active. It's just
+ more efficient to use this cursor if you're adding more than one action at
+ once.</para>
+
+
+ </section>
+ <section id="StrutsTreeMode42">
+
+ <title>Tree View</title>
+
+ <para>The Tree view represents the different elements of the Struts application that are organized into functional categories
+ on the left-hand side and a form for editing the properties of currently selected items on the right-hand side.</para>
+
+ <figure float="0">
+ <title>Tree View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_17.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>You can right-click on any node in the category tree and perform appropriate
+ operations through a context menu. For instance, by right-clicking on the
+ action-mappings category node, you can add new actions to the application.</para>
+
+ <figure float="0">
+ <title>Tree Context Menu</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_18.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Let's consider the tree on the left more closely.</para>
+
+ <itemizedlist>
+ <listitem><para>Under the <emphasis>
+ <property moreinfo="none">data-sources</property></emphasis> node you can create a Data Source object that will be configured
+ and made available as a servlet context attribute.</para></listitem>
+
+ <listitem><para>The <emphasis>
+ <property moreinfo="none">form-beans</property></emphasis> node is meant for creating a set of form bean descriptors for this module.
+ Every created element under this node is a JavaBean that implements the org.apache.struts.action.ActionForm class.
+ Use the Properties editor on the right to adjust properties specific to every created form-bean.</para></listitem>
+
+ <listitem><para>The <emphasis>
+ <property moreinfo="none">global-exceptions</property></emphasis> node is intended for registering the handlers for the exceptions
+ that might be thrown by an Action object.</para></listitem>
+
+ <listitem><para>Use the <emphasis>
+ <property moreinfo="none">global-forwards</property></emphasis> node to add, edit or delete a global forwards that represent
+ ActionForward objects available to all Action objects as a return value.</para></listitem>
+
+ <listitem><para>The <emphasis>
+ <property moreinfo="none">controller</property></emphasis> node allows you to configure the controller properties.</para></listitem>
+
+ <listitem><para>Under the <emphasis>
+ <property moreinfo="none">resources</property></emphasis> node you can add, delete, or edit message resources.</para></listitem>
+
+ <listitem><para>Under the <emphasis>
+ <property moreinfo="none">plug-ins</property></emphasis> node you can define a Struts plug-in. Right-click the node, select <emphasis>
+ <property moreinfo="none">Create Plug-in</property></emphasis>
+ and specify the plug-ib <emphasis>
+ <property moreinfo="none">Id</property></emphasis> and <emphasis>
+ <property moreinfo="none">ClassName</property></emphasis> by pointing to the Java class which implements the org.apache.struts.action.PlugIn interface. </para></listitem>
+
+ </itemizedlist>
+ </section>
+ <section id="StrutsSourceMode9655">
+
+ <title>Source View</title>
+
+ <para>In the Source view, you have complete editing control of the underlying XML
+ coding.</para>
+
+ <figure float="0">
+ <title>Source View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_19.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>When working in Source view, you always have all the following features available:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Content Assist</para>
+ </listitem>
+ <listitem>
+ <para>Open On Selection</para>
+ </listitem>
+ <listitem>
+ <para>File Folding</para>
+ </listitem>
+ </itemizedlist>
+ <para>You can take advantage of <ulink url="../../jsf/html_single/index.html#CodeAssistAndDynamicCodeAssist42BasedOnProjectData">code assist</ulink>.</para>
+ <figure float="0">
+ <title>Code Assist</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_20.png" scale="85"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The editor will also immediately flag any errors.</para>
+
+ <figure float="0">
+ <title>Errors in Source View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_21.png" scale="85"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Finally, you can use the Outline view with the editor to easily navigate through
+ the file.</para>
+
+ <figure float="0">
+ <title>Outline View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_22.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Find more information about editor features <ulink url="../../jsf/html_single/index.html#editors_features">in the editor features chapter</ulink>.</para>
+ </section>
+ </section>
+
+ <section id="GraphicalEditorForTilesFiles132">
+
+ <title>Graphical Editor for Tiles Files</title>
+ <para>Here, you'll know how to make use of the special graphical editor for Tiles configuration files.</para>
+ <para>The editor has three main views: Tree, Diagram and Source.
+ The views can be selected via the tabs at the bottom of the editor. Any changes made in
+ one view are immediately visible when you switch to any other view.</para>
+
+ <para>Before we consider each view of the editor, let's look at the way of creating new Tiles files.</para>
+ <section id="CreateNewTilesFile1422">
+
+ <title>Create New Tiles File</title>
+
+ <para>To create new Tiles files, right click any folder and select <emphasis>
+ <property moreinfo="none">New > Tiles File</property>. </emphasis></para>
+ <figure float="0">
+ <title>Creating a New Tiles File</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_23.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="StrutsTreeView896">
+
+ <title>Tree View</title>
+
+ <para>The Tree view represents the different elements of the Tiles file that are
+ organized into functional categories on the left-hand side and a form for editing
+ the properties of currently selected items on the right-hand side.</para>
+ <figure float="0">
+ <title>Tree View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_24.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>To edit the file, simply right click any node and select among the available
+ actions.</para>
+ <figure float="0">
+ <title>Editing in Tiles Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_25.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="StrutsDiagramView4643">
+
+ <title>Diagram View</title>
+
+ <para>The Diagram view allows you to create complex Tiles files in the form of a
+ diagram.</para>
+ <figure float="0">
+ <title>Diagram Mode</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_26.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>To create new definitions, simply right click anywhere in the diagram.</para>
+ <figure float="0">
+ <title>Creating New Definition</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_27.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>You can also use the Diagram toolbar to make editing easier.</para>
+ <figure float="0">
+ <title>Diagram Toolbar</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_28.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para> It contains four icons for changing the cursor state. The first one is the
+ default cursor state for selecting existing nodes. The second icon is marquee
+ selector. The third is used for creating new connections and the last one is for
+ adding definition template to the content.</para>
+ </section>
+ <section id="StrutsSource75">
+
+ <title>Source</title>
+
+ <para>The other view of the <property moreinfo="none">Tiles editor</property> is the Source view that
+ gives you full control over the source. Any changes here will immediately appear in
+ other modes when you switch to them.</para>
+
+ <para>When working in Source view, you always have all following features available:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Content Assist</para>
+ </listitem>
+ <listitem>
+ <para>Open On Selection</para>
+ </listitem>
+ </itemizedlist>
+
+ <figure float="0">
+ <title>Source View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_29.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para><ulink url="../../jsf/html_single/index.html#CodeAssistAndDynamicCodeAssist42BasedOnProjectData">Code
+ assist</ulink> is available in the Source mode.</para>
+ <figure float="0">
+ <title>Code Assist</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_30.png" scale="85"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Any errors are immediately reported as shown below:</para>
+ <figure float="0">
+ <title>Errors Reporting</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_31.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>You can also use the Outline view together with the editor's Source mode.
+ It provides an easier navigation through the file.</para>
+ <figure float="0">
+ <title>Outline View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_32.png" scale="85"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ </section>
+
+ <section id="GraphicalEditorForStrutsValidationFiles86">
+
+ <title>Graphical Editor for Struts Validation Files</title>
+
+ <para>Providing full support for development Struts applications JBoss Tools comes with a
+ visual validation editor. To open the editor double-click on the validation file or if you don't have it create a new one.</para>
+
+ <para>To create a new validation file, right click any folder in
+ Project Explorer and select <emphasis>
+ <property moreinfo="none">File > New > Other...</property>
+ </emphasis>from the context menu and then <emphasis>
+ <property moreinfo="none">JBoss Tools Web > Struts > Validation File</property>. </emphasis></para>
+ <figure float="0">
+ <title>Creating New Validation File</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_33.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The validation editor works with five modes: Formsets, Validators, Constants and
+ standard Tree and Source that you can easily switch over using tabs at the bottom of the
+ editor.</para>
+ <para>The Formsets view shows forms and their elements on the left side and the dialogue for
+ defining their validation rules on the right side.</para>
+ <figure float="0">
+ <title>Formsets View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_34.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The Constants view let you set constant values for your validation rules.</para>
+ <figure float="0">
+ <title>Constansts View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_35.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The validation file can also be viewed in a Tree view.</para>
+ <figure float="0">
+ <title>Tree View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_36.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>At any point you have full control over the source by switching to the Source view.
+ Any editing in this view will immediately be available in other views of the editor.</para>
+ <figure float="0">
+ <title>Source View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_37.png" scale="85"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>You can also open your own custom or Struts-standard <emphasis>
+ <property moreinfo="none">validation-rules.xml</property>
+ </emphasis> file.</para>
+ <para>The Validators view shows the validation rules for a selected validator. You can of
+ course add your own rules.</para>
+ <figure float="0">
+ <title>Validators View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_38.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Here are the validation rules shown in the Source mode.</para>
+ <figure float="0">
+ <title>Validation Rules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_39.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+</chapter>
+
+
+<chapter id="modules" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_ref_guide/en/modules/modules.xml">
+ <?dbhtml filename="modules.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Struts Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Modules</title>
+
+ <para>JBoss Tools support working with Struts projects that have
+ multiple modules. You can easily do the following:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Add new modules</para>
+ </listitem>
+ <listitem>
+ <para>Edit modules for an existing project or during Struts project
+ import</para>
+ </listitem>
+ </itemizedlist>
+ <para>Now, let's discuss this functionality in more detail.</para>
+ <section id="WhenImportingAStrutsProject432">
+
+ <title>When Importing a Struts Project</title>
+
+ <para>During Struts project import, if the project has multiple modules, you
+ will see a screen with all existing modules. You can select each
+ module and edit its details.</para>
+
+ <figure float="0">
+ <title>Configuring Project Modules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_40.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="EditingModulesInAnExistingProject1">
+
+ <title>Editing Modules in an Existing Project</title>
+ <para>To edit modules in an existing project, right click the project and
+ select <emphasis>
+ <property moreinfo="none">JBoss Tools > Modules Configuration</property>.
+ </emphasis></para>
+ <figure float="0">
+ <title>Choosing Modules Configuration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_41.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>You will see the same screen as above where you will be able to select
+ a module and edit its details.</para>
+ <figure float="0">
+ <title>Modules Configuration</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_42.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+ <section id="AddingNewModules1">
+
+ <title>Adding New Modules</title>
+
+ <para>Adding a new module is very simple. First switch to Web Project view.
+ Expand your project to the Configuration folder. Under that folder
+ you should see the current modules. Right click on Configuration and
+ select <emphasis>
+ <property moreinfo="none">New > Struts Config</property>. </emphasis></para>
+ <figure float="0">
+ <title>Adding New Modules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_43.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>You will see the screen below. You can specify a new module name and
+ also add the new Struts configuration file to web.xml file.</para>
+ <figure float="0">
+ <title>Adding New Modules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_44.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+</chapter>
+
+
+<chapter id="code_generation" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_ref_guide/en/modules/code_generation.xml">
+ <?dbhtml filename="code_generation.html"?>
+
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Struts Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Code Generation</title>
+
+ <para>JBoss Tools comes with a <property moreinfo="none">code generation</property>
+ feature. You can generate stub code for Struts Actions, FormBeans, Forwards
+ and Exceptions.</para>
+
+ <para>The code generation that JBoss tooling provides is based on Velocity templates
+ which can be modified for your use. The templates are located at <emphasis>
+ <property moreinfo="none"> {JBossStudioHome} > templates >
+ codegeneration</property>. </emphasis></para>
+
+ <para>There are a number of ways to invoke code generation. One is simply
+ right-clicking the Struts diagram and selecting <emphasis>
+ <property moreinfo="none">Generate Java Code....</property>
+ </emphasis></para>
+
+ <figure float="0">
+ <title>Selecting Generate Java Code</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_45.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>On this screen you can select for which elements to generate code. If you
+ select Next you will be able to specify more options for each of the
+ categories you selected.</para>
+
+ <figure float="0">
+ <title>Generate - Step 1</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_46.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <tip>
+ <title>Tip:</title>
+ <para>Please be careful not to override your existing files.</para>
+ </tip>
+
+ <para>When generation is complete, a result window will appear letting you know how
+ many classes were generated:</para>
+
+ <figure float="0">
+ <title>Generation Finished</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_47.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>You don't always have to generate code for all elements at once. You
+ can invoke generation for just an individual Struts artifact as well.
+ Right-click an element on the diagram of the Struts configuration file and
+ select <emphasis>
+ <property moreinfo="none">Generate Java Code...</property>
+ </emphasis> from the context menu.</para>
+
+ <figure float="0">
+ <title>Generation For Individual Struts Artifact</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_48.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The same can be done from within the Tree viewer for the editor of the Struts
+ configuration file.</para>
+
+ <figure float="0">
+ <title>Generation in Struts Config Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_49.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+</chapter>
+
+<chapter id="config_file_debugger" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_ref_guide/en/modules/config_file_debugger.xml">
+ <?dbhtml filename="config_file_debugger.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Struts Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Struts Configuration File Debugger</title>
+
+ <para>JBoss Tools come with <property moreinfo="none">Struts configuration file
+ debugger</property>. It allows you to set break points on Struts diagram and
+ then simply launch the server in debug mode.</para>
+
+ <para>Simply right click an Action or a page and select Add <emphasis>
+ <property moreinfo="none">Breakpoint</property>. </emphasis></para>
+ <figure float="0">
+ <title>Adding Breakpoint</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_50.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+</chapter>
+
+<chapter id="page_links_recognizer" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_ref_guide/en/modules/page_links_recognizer.xml">
+ <?dbhtml filename="page_links_recognizer.html"?>
+
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Customizable Page Links Recognizer</title>
+
+ <para><property moreinfo="none">Custom page links</property> allow you to define custom Struts page
+ links that will be recognizable in the Struts application diagram. You can
+ define these links by selecting <emphasis>
+ <property moreinfo="none">Window > Preferences</property>
+ </emphasis> from the menu bar and then selecting <emphasis>
+ <property moreinfo="none">JBoss Tools > Web > Struts > Customization</property>
+ </emphasis> from the Preferences dialog box.</para>
+ <figure float="0">
+ <title>Customization Panel</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/struts/struts_51.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+</chapter>
+
+<chapter id="project_verification" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_ref_guide/en/modules/project_verification.xml">
+ <?dbhtml filename="project_verification.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Struts Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Struts Project Verification</title>
+
+ <para>In this section we'll consider one more functionality that JBoss Tools provide for Struts
+ projects, namely adjusting projects verification.</para>
+
+ <para>To configure Struts project verification select <emphasis>
+ <property moreinfo="none">Window > Preferences</property>
+ </emphasis> from the menu bar, select <emphasis>
+ <property moreinfo="none">JBoss Tools > Web > Verification</property>
+ </emphasis> from the Preferences dialog box and then expand the
+ Struts Rules node.</para>
+ <figure float="0">
+ <title>Struts Rules</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Suppose you are working in the Source viewer for a Struts
+ configuration file as shown below:</para>
+ <figure float="0">
+ <title>Struts Configuration File</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_9.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>While typing a class name or entering it from the graphical editor,
+ you might make a minor typo (like <emphasis role="italic">
+ <property moreinfo="none">"sample.GreetingAction1"</property>
+ </emphasis> instead of <emphasis role="italic">
+ <property moreinfo="none">"sample.GreetingAction"</property>
+ </emphasis>). After saving the file,
+ <property moreinfo="none">verification</property> checks to make sure everything is
+ correct and finds the error below:</para>
+ <figure float="0">
+ <title>Error Reporting</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_10.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 the error to view a
+ detailed error message:</para>
+ <figure float="0">
+ <title>Error Message</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_11.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>The verification also checks to make sure you have specified the
+ correct JSP page for the forward:</para>
+ <figure float="0">
+ <title>JSP Page Verification</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_12.png" scale="75"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Once you place the cursor over the line, you can see the error
+ message:</para>
+ <figure float="0">
+ <title>Error Message</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_13.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>You can always invoke the verification by switching to the Diagram
+ viewer, right-clicking and selecting <emphasis>
+ <property moreinfo="none">Verify</property>
+ </emphasis> from the context menu:</para>
+ <figure float="0">
+ <title>Verify Command</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/verif_valid/verif_valid_14.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+</chapter>
+
+<chapter id="rel_resources_links" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/struts/docs/struts_tools_ref_guide/en/modules/rel_resources_links.xml">
+ <?dbhtml filename="rel_resources_links.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Struts Tools</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Relevant Resources Links</title>
+
+ <para>Find out necessary information on <ulink url="http://struts.apache.org/">Struts
+ technology</ulink> if you don't know enough.</para>
+
+ <para>In summary, this reference should help you to get familiar with those parts of
+ <property moreinfo="none">JBoss Tools</property> which are meant for development with Struts
+ technology. If you've carefully gone through the document, you should know
+ now how to create/import Struts project or enable Struts capabilities for an
+ existing web project as well as organize and edit all necessary staff for your
+ Struts application using a set of views and editors provided by <property moreinfo="none">JBoss
+ Tools</property>.</para>
+
+ <para>If you'd like to contribute your feedback is always appreciated. You can
+ leave your questions and suggestions on our <ulink
+ url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201"
+ >Forum</ulink>.</para>
+ <para>We hope, this guide helped you to get started with the JBoss Struts 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>
+</chapter>
+
+</book>
14 years, 4 months
JBoss Tools SVN: r20336 - trunk/seam/docs/reference/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2010-02-17 14:48:32 -0500 (Wed, 17 Feb 2010)
New Revision: 20336
Modified:
trunk/seam/docs/reference/en/master.xml
trunk/seam/docs/reference/en/master_output.xml
Log:
<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:9pt;font-family:Sans Serif">
<p>https://jira.jboss.org/jira/browse/JBDS-1104 - Updated versions,corrected master_output file</p>
</body></html>
Modified: trunk/seam/docs/reference/en/master.xml
===================================================================
--- trunk/seam/docs/reference/en/master.xml 2010-02-17 19:42:47 UTC (rev 20335)
+++ trunk/seam/docs/reference/en/master.xml 2010-02-17 19:48:32 UTC (rev 20336)
@@ -56,14 +56,14 @@
<author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina(a)exadel.com</email></author>
<copyright>
- <year>2007</year>
+ <year>2007</year>
<year>2008</year>
- <year>2009</year>
+ <year>2009</year>
<year>2010</year>
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 3.1.0.CR1
+ Version: 3.1.0.CR2
</releaseinfo>
<abstract>
Modified: trunk/seam/docs/reference/en/master_output.xml
===================================================================
--- trunk/seam/docs/reference/en/master_output.xml 2010-02-17 19:42:47 UTC (rev 20335)
+++ trunk/seam/docs/reference/en/master_output.xml 2010-02-17 19:48:32 UTC (rev 20336)
@@ -54,14 +54,15 @@
<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>
+ <year><diffmk:wrapper diffmk:change="added">2008</diffmk:wrapper></year>
+ <year diffmk:change="added">2009</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2010</diffmk:wrapper></year>
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo><diffmk:wrapper diffmk:change="changed">
- Version: 3.1.0.CR1
+ Version: 3.1.0.CR2
</diffmk:wrapper></releaseinfo>
<abstract>
@@ -76,7 +77,7 @@
<toc></toc>
-<chapter id="intro" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/intro.xml" xreflabel="intro">
+<chapter id="intro" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/intro.xml" xreflabel="intro">
<?dbhtml filename="intro.html"?>
<chapterinfo>
<keywordset>
@@ -224,7 +225,7 @@
</chapter>
-<chapter id="create_seam" role="updated" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/creating_new_seam.xml" xreflabel="create_seam">
+<chapter id="create_seam" role="updated" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/creating_new_seam.xml" xreflabel="create_seam">
<?dbhtml filename="create_new_seam.html"?>
<chapterinfo>
<keywordset>
@@ -234,11 +235,11 @@
</keywordset>
</chapterinfo>
<title>Creating a New Seam Project via the New Seam Project wizard</title>
- <para><diffmk:wrapper diffmk:change="changed">In this chapter we provide you with the necessary steps to start working with Seam
- Framework.</diffmk:wrapper></para>
- <para><diffmk:wrapper diffmk:change="changed">At first, we suggest to set the specific Seam perspective that combines a number of
+ <para>In this chapter we provide you with the necessary steps to start working with Seam
+ Framework.</para>
+ <para>At first, we suggest to set the specific Seam perspective that combines a number of
different views and editors needed for work with resources concerned. For that select
- </diffmk:wrapper><emphasis>
+ <emphasis>
<property moreinfo="none">Window > Open Perspective > Other > Seam</property>
</emphasis> or you can also access it through the button in the right top corner.</para>
<figure float="0">
@@ -250,8 +251,8 @@
</mediaobject>
</figure>
<para>Also the <emphasis>
- <property moreinfo="none">Open Web Browser</property></emphasis><diffmk:wrapper diffmk:change="changed"> action is directly available in the
- </diffmk:wrapper><property moreinfo="none">Seam perspective</property>.</para>
+ <property moreinfo="none">Open Web Browser</property></emphasis> action is directly available in the
+ <property moreinfo="none">Seam perspective</property>.</para>
<figure float="0">
<title>Embedded Web Browser Button</title>
<mediaobject>
@@ -262,8 +263,8 @@
</figure>
<section id="standaloneSeam" role="updated">
<title>Create standalone Seam Web Project</title>
- <para><diffmk:wrapper diffmk:change="changed">The best way to get started with Seam is to create a simple Seam Project and
- experiment with it.</diffmk:wrapper></para>
+ <para>The best way to get started with Seam is to create a simple Seam Project and
+ experiment with it.</para>
<para>Thus, you should select <emphasis>
<property moreinfo="none">File > New > Seam Web Project</property>
</emphasis> to run the <property moreinfo="none">New Seam Project</property> wizard. The wizard form
@@ -272,8 +273,8 @@
<para>Seam Web Project wizard has an option for selecting the actual Server (not just WTP
runtime) that will be used for the project. This allows the wizard to identify correctly
where the required datasource and driver libraries need to go.</para>
- <para><diffmk:wrapper diffmk:change="changed">Let's get through the wizard step-by-step. First, you should enter a name and a
- location directory for your new project.</diffmk:wrapper></para>
+ <para>Let's get through the wizard step-by-step. First, you should enter a name and a
+ location directory for your new project.</para>
<figure float="0" id="figure_create_seam1">
<title>New Seam Project Wizard</title>
<mediaobject>
@@ -285,10 +286,10 @@
<para>On the figure above you can see the runtime and the server already created.</para>
<para>If you need to create a new runtime, click on the <emphasis>
<property moreinfo="none">New...</property>
- </emphasis> button in the <property moreinfo="none">Target Runtime</property><diffmk:wrapper diffmk:change="changed"> section. It brings up the
+ </emphasis> button in the <property moreinfo="none">Target Runtime</property> section. It brings up the
wizard where you can specify a new JBoss Server Runtime environment or the other type of
runtime appropriate for your project configuration. Let's create one more JBoss 4.2
- Runtime. Hence, after choosing it click on </diffmk:wrapper><emphasis>
+ Runtime. Hence, after choosing it click on <emphasis>
<property moreinfo="none">Next</property>
</emphasis> button.</para>
<figure float="0">
@@ -314,15 +315,15 @@
</figure>
<para> Clicking on <emphasis>
<property moreinfo="none">Finish</property>
- </emphasis> returns you to the <link linkend="figure_create_seam1"><diffmk:wrapper diffmk:change="changed">New Seam Project
- wizard page</diffmk:wrapper></link>.</para>
- <para><diffmk:wrapper diffmk:change="changed">The next step is to define a Server by clicking on </diffmk:wrapper><emphasis>
+ </emphasis> returns you to the <link linkend="figure_create_seam1">New Seam Project
+ wizard page</link>.</para>
+ <para>The next step is to define a Server by clicking on <emphasis>
<property moreinfo="none">New...</property>
</emphasis> button in the <property moreinfo="none">Target Server</property> section. In appeared
<property moreinfo="none">New Server dialog</property> the last server which matches the runtime
will be selected.</para>
- <para><diffmk:wrapper diffmk:change="changed">All declared runtimes are listed in the combo-box under the servers view. Here, you
- can indicate a server runtime that you need. Click </diffmk:wrapper><emphasis>
+ <para>All declared runtimes are listed in the combo-box under the servers view. Here, you
+ can indicate a server runtime that you need. Click <emphasis>
<property moreinfo="none">Add</property>
</emphasis> if you want to add a new Server Runtime.</para>
<figure float="0">
@@ -333,8 +334,8 @@
</imageobject>
</mediaobject>
</figure>
- <para><diffmk:wrapper diffmk:change="changed">Next page allows you to verify the information for a chosen server. Leave everything as
- it is and click on </diffmk:wrapper><emphasis>
+ <para><diffmk:wrapper diffmk:change="changed">Next page allows you to verify the information for a chosen server. Leave everything
+ as it is and click on </diffmk:wrapper><emphasis>
<property moreinfo="none">Next</property>
</emphasis>.</para>
<figure float="0">
@@ -361,8 +362,8 @@
wizard</property>.</para>
<tip>
<title>Tip:</title>
- <para><diffmk:wrapper diffmk:change="changed">We suggest that you look through </diffmk:wrapper><ulink url="../../as/html_single/index.html">AS manager
- guide</ulink> to find out more about runtimes and servers.</para>
+ <para>We suggest that you look through <ulink url="../../as/html_single/index.html"><diffmk:wrapper diffmk:change="changed">AS manager guide</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="changed"> to
+ find out more about runtimes and servers.</diffmk:wrapper></para>
</tip>
<figure float="0">
<title>Completion of Runtime and Server Configuration</title>
@@ -382,10 +383,10 @@
<para>Pass to the next section to find out more details on this dialog.</para>
</section>
<section id="projectFacets">
- <title><diffmk:wrapper diffmk:change="changed">Selecting the Project Facets</diffmk:wrapper></title>
+ <title>Selecting the Project Facets</title>
<para>The <property moreinfo="none">Project Facets wizard</property><diffmk:wrapper diffmk:change="changed"> allows you to enable or disable
- specific facets which define necessary features for the project. When you
- switch to this wizard form, all critical facets are already checked for the chosen
+ specific facets which define necessary features for the project. When you switch to this
+ wizard form, all critical facets are already checked for the chosen
Configuration.</diffmk:wrapper></para>
<para>Notice that this page of the wizard also allows you to set the necessary version for
any facet. </para>
@@ -412,12 +413,12 @@
<para>To see all available Server runtimes click on <property moreinfo="none">Runtimes</property> tab on the
left. You can create a new one using the <emphasis>
<property moreinfo="none">New</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> button. If more than one runtime is checked here, the </diffmk:wrapper><emphasis>
+ </emphasis> button. If more than one runtime is checked here, the <emphasis>
<property moreinfo="none">Make Primary</property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> button won't be dimmed yet. Thus, you can make use of it to mark primary
- runtime.</diffmk:wrapper></para>
+ </emphasis><diffmk:wrapper diffmk:change="changed"> button won't be dimmed yet. Thus, you can make use of it to mark
+ primary runtime.</diffmk:wrapper></para>
<figure float="0">
- <title><diffmk:wrapper diffmk:change="changed">Setting Runtime</diffmk:wrapper></title>
+ <title>Setting Runtime</title>
<mediaobject>
<imageobject>
<imagedata fileref="images/create_new_seam/create_seam_16.png"></imagedata>
@@ -428,28 +429,53 @@
<property moreinfo="none">Ok</property>
</emphasis> button will bring you to the <property moreinfo="none">Web Module</property> wizard form
again.</para>
+ <section diffmk:change="added" id="seamWithJPA">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Seam project with JPA facets</diffmk:wrapper></title>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">For creating Seam project with JPA support you need to select</diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added"> Java
+ Persistent</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> facet on </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Project Facets</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> page and
+ click </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">OK</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">Then you should press </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Next</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> and may leave the default value on
+ </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Java application building</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> page and </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Web Module
+ Settings</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> page.</diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">After that you will see </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">JPA facet</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> page.</diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">JPA Facet page</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/create_new_seam/create_seam_16b.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">On this page you can choose </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Platform</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> (vendor-specific JPA
+ implementation) for your project, type of JPA Implementation, and configure the
+ </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Connection</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> to database in the </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Connection</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> area.</diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">More about </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">JPA facet</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> page you can read in </diffmk:wrapper><ulink diffmk:change="added" url="http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.jpt.doc.user..."><diffmk:wrapper diffmk:change="added">Eclipse documentation</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="added">. </diffmk:wrapper></para>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">On the next step you will see </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">JSF Capabilities</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> and </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Seam
+ facet</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> pages, which are mostly the same as in general Seam
+ project.</diffmk:wrapper></para>
+ </section>
</section>
- <section diffmk:change="added" id="configureJava">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Java application building configuration</diffmk:wrapper></title>
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">With this wizard you can define Java source directories which will be generated on
+ <section id="configureJava">
+ <title>Java application building configuration</title>
+ <para>With this wizard you can define Java source directories which will be generated on
build path. Also you can specify a default output folder. If you are agree with default
- values, press </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Next</diffmk:wrapper></property></para>
- <figure diffmk:change="added" float="0">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Java application building Wizard</diffmk:wrapper></title>
- <mediaobject diffmk:change="added">
- <imageobject diffmk:change="added">
- <imagedata diffmk:change="added" fileref="images/create_new_seam/create_seam_16a.png"></imagedata>
+ values, press <property moreinfo="none">Next</property></para>
+ <figure float="0">
+ <title>Java application building Wizard</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_seam/create_seam_16a.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
</section>
<section id="configureWebModule">
<title>How to Configure Web Module Settings</title>
- <para><diffmk:wrapper diffmk:change="changed"> As we deal with a Dynamic Web Application, we should at first specify the top level
+ <para> As we deal with a Dynamic Web Application, we should at first specify the top level
directory of our application for deploying it to a server afterwards. You know, this
kind of application contains Web resources. Thus, it's important to indicate the content
directory. The wizard will put all those values itself, so you can leave everything as
- is.</diffmk:wrapper></para>
+ is.</para>
<figure float="0">
<title>Web Module Settings</title>
<mediaobject>
@@ -464,11 +490,11 @@
</section>
<section id="addJSFCapab">
<title>Adding JSF Capabilities</title>
- <para><diffmk:wrapper diffmk:change="changed">This wizard helps you to add JSF capabilities to your project. </diffmk:wrapper></para>
- <para><diffmk:wrapper diffmk:change="changed">Choose </diffmk:wrapper><emphasis>
- <property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Library provided by Target Runtime</diffmk:wrapper></property>
- </emphasis><diffmk:wrapper diffmk:change="changed"> from Library Type list if you'd like to use a default JSF implementation
- given by the present runtime.</diffmk:wrapper></para>
+ <para>This wizard helps you to add JSF capabilities to your project. </para>
+ <para>Choose <emphasis>
+ <property moreinfo="none">Library provided by Target Runtime</property>
+ </emphasis> from Library Type list if you'd like to use a default JSF implementation
+ given by the present runtime.</para>
<figure float="0">
<title>Adding JSF Capabilities to Web Project</title>
<mediaobject>
@@ -477,56 +503,58 @@
</imageobject>
</mediaobject>
</figure>
- <para><diffmk:wrapper diffmk:change="added">In case if you prefer to use your custom JSF implementation, choose </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">User
- Library</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> Item from Library Type list. In User Library list you can check
- required library.</diffmk:wrapper></para>
- <figure diffmk:change="added" float="0">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Using Custom JSF implementation Library </diffmk:wrapper></title>
- <mediaobject diffmk:change="added">
- <imageobject diffmk:change="added">
- <imagedata diffmk:change="added" fileref="images/create_new_seam/create_seam_17.png"></imagedata>
+ <para>In case if you prefer to use your custom JSF implementation, choose <property moreinfo="none">User
+ Library</property> Item from Library Type list. In User Library list you can check
+ required library.</para>
+ <figure float="0">
+ <title>Using Custom JSF implementation Library </title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_seam/create_seam_17.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
- <para><diffmk:wrapper diffmk:change="added"> If a new library is required, click </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Manage libraries...</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> ( </diffmk:wrapper><inlinemediaobject diffmk:change="added">
- <imageobject diffmk:change="added">
- <imagedata diffmk:change="added" fileref="images/create_new_seam/create_seam_17a.png"></imagedata>
+ <para> If a new library is required, click <property moreinfo="none">Manage libraries...</property><diffmk:wrapper diffmk:change="changed"> (
+ </diffmk:wrapper><inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_seam/create_seam_17a.png"></imagedata>
</imageobject>
- </inlinemediaobject><diffmk:wrapper diffmk:change="added">) button. Then you should click </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">New</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></para>
- <figure diffmk:change="added" float="0">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Using Custom JSF implementation Library </diffmk:wrapper></title>
- <mediaobject diffmk:change="added">
- <imageobject diffmk:change="added">
- <imagedata diffmk:change="added" fileref="images/create_new_seam/create_seam_18.png"></imagedata>
+ </inlinemediaobject>) button. Then you should click <property moreinfo="none">New</property>.</para>
+ <figure float="0">
+ <title>Using Custom JSF implementation Library </title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_seam/create_seam_18.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added"> Here, it's necessary to type a </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Library Name</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">. </diffmk:wrapper></para>
+ <para> Here, it's necessary to type a <property moreinfo="none">Library Name</property>. </para>
<figure float="0">
- <title><diffmk:wrapper diffmk:change="changed">Entering New User Library Name</diffmk:wrapper></title>
+ <title>Entering New User Library Name</title>
<mediaobject>
<imageobject>
<imagedata fileref="images/create_new_seam/create_seam_23.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
- <para><diffmk:wrapper diffmk:change="changed">To add proper </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Library JARs</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">, click </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Add JARs...</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">
- button and select the JARs on your hard drive. </diffmk:wrapper></para>
- <figure diffmk:change="added" float="0">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Selection Library JARs</diffmk:wrapper></title>
- <mediaobject diffmk:change="added">
- <imageobject diffmk:change="added">
- <imagedata diffmk:change="added" fileref="images/create_new_seam/create_seam_25.png"></imagedata>
+ <para>To add proper <property moreinfo="none">Library JARs</property>, click <property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Add
+ JARs...</diffmk:wrapper></property><diffmk:wrapper diffmk:change="changed"> button and select the JARs on your hard drive. </diffmk:wrapper></para>
+ <figure float="0">
+ <title>Selection Library JARs</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/create_new_seam/create_seam_25.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">You can download necessary JSF implementation libraries provided by Sun and Apache Foundation as well. Click </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Download...</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> (</diffmk:wrapper><inlinemediaobject diffmk:change="added">
- <imageobject diffmk:change="added">
- <imagedata diffmk:change="added" fileref="images/create_new_seam/create_seam_23a.png"></imagedata>
- </imageobject>
- </inlinemediaobject><diffmk:wrapper diffmk:change="added">) button and choose one of proposed libraries.</diffmk:wrapper></para>
+ <para><diffmk:wrapper diffmk:change="changed">You can download necessary JSF implementation libraries provided by Sun and Apache
+ Foundation as well. Click </diffmk:wrapper><property moreinfo="none">Download...</property> (<inlinemediaobject>
+ <imageobject diffmk:change="added">
+ <imagedata fileref="images/create_new_seam/create_seam_23a.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>) button and choose one of proposed libraries.</para>
<figure float="0">
- <title><diffmk:wrapper diffmk:change="changed">Download JSF Implementation Library</diffmk:wrapper></title>
+ <title>Download JSF Implementation Library</title>
<mediaobject>
<imageobject>
<imagedata fileref="images/create_new_seam/create_seam_24.png"></imagedata>
@@ -544,8 +572,8 @@
</imageobject>
</mediaobject>
</figure>
- <para><diffmk:wrapper diffmk:change="changed">Since we are arranging the Seam Web project, the last step we should do is to
- adjust project configurations associated with the Seam.</diffmk:wrapper></para>
+ <para><diffmk:wrapper diffmk:change="changed">Since we are arranging the Seam Web project, the last step we should do is to adjust
+ project configurations associated with the Seam.</diffmk:wrapper></para>
</section>
<section id="seamFacet">
<title>Configure Seam Facet Settings</title>
@@ -566,10 +594,10 @@
</itemizedlist>
<para>For that click on <emphasis>
<property moreinfo="none">Add</property>
- </emphasis> button in the <property moreinfo="none">General</property><diffmk:wrapper diffmk:change="changed"> section. Note, in the
- wizard shown below you can create a Seam runtime only for the version that was
- selected in the </diffmk:wrapper><link linkend="projectFacets">Project Facets</link> wizard (version 1.2
- in our case).</para>
+ </emphasis> button in the <property moreinfo="none">General</property><diffmk:wrapper diffmk:change="changed"> section. Note, in the wizard
+ shown below you can create a Seam runtime only for the version that was selected in the
+ </diffmk:wrapper><link linkend="projectFacets">Project Facets</link><diffmk:wrapper diffmk:change="changed"> wizard (version 1.2 in our
+ case).</diffmk:wrapper></para>
<figure float="0">
<title>Seam Runtime Creation</title>
<mediaobject>
@@ -624,8 +652,8 @@
</imageobject>
</mediaobject>
</figure>
- <para><diffmk:wrapper diffmk:change="changed">On the dialog you'll be asked to enter its name and description. And then
- you should select a proper driver and adjust connection details. Press </diffmk:wrapper><emphasis>
+ <para><diffmk:wrapper diffmk:change="changed">On the dialog you'll be asked to enter its name and description. And then you
+ should select a proper driver and adjust connection details. Press </diffmk:wrapper><emphasis>
<property moreinfo="none">Next</property>
</emphasis> to preview all the adjusted settings and complete the creation of the new
profile.</para>
@@ -639,10 +667,10 @@
</figure>
<para>The next block of settings in the Seam Facet wizard are describing a Database and a
connection to it.</para>
- <para>In the <property moreinfo="none">Code Generation</property><diffmk:wrapper diffmk:change="changed"> section the wizard has already provided the
- names for your </diffmk:wrapper><property moreinfo="none">Session Bean</property>, <property moreinfo="none">Entity Bean</property> and
- <property moreinfo="none">Test</property><diffmk:wrapper diffmk:change="changed"> packages. Of course, you can change them on others
- of your choice.</diffmk:wrapper></para>
+ <para>In the <property moreinfo="none">Code Generation</property><diffmk:wrapper diffmk:change="changed"> section the wizard has already provided
+ the names for your </diffmk:wrapper><property moreinfo="none">Session Bean</property>, <property moreinfo="none">Entity Bean</property><diffmk:wrapper diffmk:change="changed">
+ and </diffmk:wrapper><property moreinfo="none">Test</property><diffmk:wrapper diffmk:change="changed"> packages generation (optional). Of course, you can change
+ them on others of your choice.</diffmk:wrapper></para>
<figure float="0">
<title>Code Generation Section</title>
<mediaobject>
@@ -659,7 +687,7 @@
</chapter>
-<chapter id="mavenized_seam" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/creating_mavenized_seam.xml" xreflabel="mavenized_seam">
+<chapter id="mavenized_seam" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/creating_mavenized_seam.xml" xreflabel="mavenized_seam">
<?dbhtml filename="create_mavenized_seam.html"?>
<chapterinfo>
<keywordset>
@@ -668,136 +696,149 @@
<keyword>JBDS</keyword>
</keywordset>
</chapterinfo>
-
<title>Maven Integration for Seam Projects</title>
- <para>Starting from 3.1 M2 version <property moreinfo="none">JBoss Tools</property> includes new Jboss Maven Integration plug-in which for now allows
- to create mavenized Seam projects and enable Seam tools support for imported Maven projects.</para>
-
+ <para>Starting from 3.1 M2 version <property moreinfo="none">JBoss Tools</property><diffmk:wrapper diffmk:change="changed"> includes new Jboss Maven
+ Integration plug-in which for now allows to create mavenized Seam projects and enable Seam
+ tools support for imported Maven projects.</diffmk:wrapper></para>
<para>The Jboss Maven Integration requires <ulink url="http://m2eclipse.sonatype.org/">m2eclipse</ulink> to be installed.</para>
-
<note>
<title>Note:</title>
- <para>For M2 release of <property moreinfo="none">Jboss Tools</property> it is important to use m2eclipse <ulink url="http://m2eclipse.sonatype.org/update/">stable updatesite</ulink> or the <ulink url="http://m2eclipse.sonatype.org/releases/0.9.9.200906081351">latest integration build</ulink> that M2 was
- developed against. If you want to use the latest development release of m2eclipse you need to use the <ulink url="http://download.jboss.org/jbosstools/updates/nightly/trunk/">nightly builds</ulink> of
- <property moreinfo="none">JBoss Tools</property>.</para>
+ <para>For M2 release of <property moreinfo="none">Jboss Tools</property><diffmk:wrapper diffmk:change="changed"> it is important to use m2eclipse
+ </diffmk:wrapper><ulink url="http://m2eclipse.sonatype.org/update/">stable updatesite</ulink><diffmk:wrapper diffmk:change="changed"> or the
+ </diffmk:wrapper><ulink url="http://m2eclipse.sonatype.org/releases/0.9.9.200906081351"><diffmk:wrapper diffmk:change="changed">latest
+ integration build</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="changed"> that M2 was developed against. If you want to use the
+ latest development release of m2eclipse you need to use the </diffmk:wrapper><ulink url="http://download.jboss.org/jbosstools/updates/nightly/trunk/"><diffmk:wrapper diffmk:change="changed">nightly
+ builds</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="changed"> of </diffmk:wrapper><property moreinfo="none">JBoss Tools</property>.</para>
</note>
-
- <section id="create_mavenized_project">
- <title>Creating Maven ready Seam project</title>
-
- <para>Maven Integration makes the Seam Wizard capable of creating
- Maven ready projects to let Maven get the libraries instead of using the Seam runtime.</para>
-
- <para>To create a mavenized Seam project you should perform the following steps:</para>
-
- <itemizedlist>
- <listitem>
- <para>Navigate to <emphasis>
- <property moreinfo="none">File > New Seam Project</property>.</emphasis> Give the project a meaningful name, specify a target runtime and server
- and select the proper configuration for your Seam project:</para>
-
- <figure float="0">
- <title>Starting the Mavenized Seam Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_mavenized_seam/createMavenizedSeamProject.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
-
- <listitem>
- <para>Click the <emphasis>
- <property moreinfo="none">Modify</property></emphasis> button to enable the <emphasis>
- <property moreinfo="none">Jboss Maven Integration</property></emphasis> facet:</para>
-
- <figure float="0">
- <title>Enabling the Jboss Maven Integration Facet</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_mavenized_seam/jbossMavenIntegrationFacet.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
-
- <listitem>
- <para>On the <property moreinfo="none">JBoss M2 capabilities</property> page you'll be prompted to add the following maven properties:
- groupId, artifactId, version, packaging, name and description. Here it's possible to set a maven version of Seam
- and also decide whether to remove WTP classpath containers (where the path starts with org.eclipse.jst).
- </para>
-
- <figure float="0">
- <title>Adjusting JBoss M2 Capabilities</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_mavenized_seam/jbossM2capabilities.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
-
- <listitem>
- <para>On the <property moreinfo="none">Seam Facet</property> page configure the Seam Facet settings and click <emphasis>
- <property moreinfo="none">Finish</property>:</emphasis></para>
-
- <figure float="0">
- <title>Seam Facet Settings</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_mavenized_seam/seamFacetPage.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- </listitem>
- </itemizedlist>
-
- <para>The organized Seam project contains five projects with the Maven nature, builder, Maven classpath and the <emphasis>
- <property moreinfo="none">pom.xml</property></emphasis> files added:
- projectname, projectname-ear, projectname-ejb, projectname-parent and projectname-test.</para>
-
- <figure float="0">
- <title>Mavenized Seam Project</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/create_mavenized_seam/mavenizedProjectStructure.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
+ <section diffmk:change="added" id="create_mavenized_project">
+ <title>Creating Maven ready Seam project</title>
+ <para><diffmk:wrapper diffmk:change="changed">Maven Integration makes the Seam Wizard capable of creating Maven ready projects to
+ let Maven get the libraries instead of using the Seam runtime.</diffmk:wrapper></para>
+ <para>To create a mavenized Seam project you should perform the following steps:</para>
+ <itemizedlist diffmk:change="added">
+ <listitem diffmk:change="added">
+ <para>Navigate to <emphasis>
+ <property moreinfo="none">File > New Seam Project</property>.</emphasis><diffmk:wrapper diffmk:change="changed"> Give the project
+ a meaningful name, specify a target runtime and server and select the proper
+ configuration for your Seam project:</diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title>Starting the Mavenized Seam Project</title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata fileref="images/create_mavenized_seam/createMavenizedSeamProject.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem diffmk:change="added">
+ <para>Click the <emphasis>
+ <property moreinfo="none">Modify</property></emphasis> button to enable the <emphasis>
+ <property moreinfo="none">Jboss Maven Integration</property></emphasis> facet:</para>
+ <figure diffmk:change="added" float="0">
+ <title>Enabling the Jboss Maven Integration Facet</title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata fileref="images/create_mavenized_seam/jbossMavenIntegrationFacet.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem diffmk:change="added">
+ <para>On the <property moreinfo="none">JBoss M2 capabilities</property><diffmk:wrapper diffmk:change="changed"> page you'll be prompted
+ to add the following maven properties: groupId, artifactId, version, packaging,
+ name and description. Here it's possible to set a maven version of Seam and
+ also decide whether to remove WTP classpath containers (where the path starts
+ with org.eclipse.jst). </diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title>Adjusting JBoss M2 Capabilities</title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata fileref="images/create_mavenized_seam/jbossM2capabilities.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem>
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added"> On the </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">JSF Capabilities</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> page you can choose Maven as
+ libraries provider. This is possible when you use Maven JSF 1.2 Libraries as
+ type of JSF Implementing Library. Also it gives you capability to edit
+ Dependencies and Exclusions for the mavenized Seam project directly from the
+ wizard. </diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Using JSF Implementation libraries provided by Maven</diffmk:wrapper></title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata diffmk:change="added" fileref="images/create_mavenized_seam/seamJSFImplementation.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ <listitem diffmk:change="added">
+ <para>On the <property moreinfo="none">Seam Facet</property><diffmk:wrapper diffmk:change="changed"> page configure the Seam Facet settings
+ and click </diffmk:wrapper><emphasis>
+ <property moreinfo="none">Finish</property>:</emphasis></para>
+ <figure diffmk:change="added" float="0">
+ <title>Seam Facet Settings</title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata fileref="images/create_mavenized_seam/seamFacetPage.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </listitem>
+ </itemizedlist>
+ <para><diffmk:wrapper diffmk:change="changed">The organized Seam project contains five projects with the Maven nature, builder,
+ Maven classpath and the </diffmk:wrapper><emphasis>
+ <property moreinfo="none">pom.xml</property></emphasis><diffmk:wrapper diffmk:change="changed"> files added: projectname, projectname-ear,
+ projectname-ejb, projectname-parent and projectname-test.</diffmk:wrapper></para>
+ <figure diffmk:change="added" float="0">
+ <title>Mavenized Seam Project</title>
+ <mediaobject diffmk:change="added">
+ <imageobject diffmk:change="added">
+ <imagedata fileref="images/create_mavenized_seam/mavenizedProjectStructure.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
</section>
-
<section id="import_maven_project">
<title>Existing Maven Projects Import</title>
-
- <para>Maven Integration includes the Seam Maven configurator which is called when importing a project, changing
- <emphasis>
+ <para><diffmk:wrapper diffmk:change="changed">Maven Integration includes the Seam Maven configurator which is called when importing
+ a project, changing </diffmk:wrapper><emphasis>
<property moreinfo="none">pom.xml</property></emphasis> and/or calling <emphasis>
- <property moreinfo="none">Maven > Update Project Configuration</property>.</emphasis> When importing a Maven Seam project, the Seam Maven configurator
- picks up the settings set up in <emphasis>
- <property moreinfo="none">pom.xml</property></emphasis> and adds to the project the following:</para>
-
+ <property moreinfo="none">Maven > Update Project Configuration</property>.</emphasis><diffmk:wrapper diffmk:change="changed"> When
+ importing a Maven Seam project, the Seam Maven configurator picks up the settings set up
+ in </diffmk:wrapper><emphasis>
+ <property moreinfo="none">pom.xml</property></emphasis><diffmk:wrapper diffmk:change="changed"> and adds to the project the
+ following:</diffmk:wrapper></para>
<itemizedlist>
- <listitem><para>Seam nature</para></listitem>
- <listitem><para>Seam facet and dependent facets to the EJB, EAR and WAR projects</para></listitem>
- <listitem><para>JBoss Maven Integration facet if the Maven project contains a dependency with the
- org.jboss.seam groupId and an artifactId starting with 'jboss-seam'</para></listitem>
- <listitem><para>other required facets (Web Module, Java, JSF, etc.)</para></listitem>
+ <listitem>
+ <para>Seam nature</para>
+ </listitem>
+ <listitem>
+ <para>Seam facet and dependent facets to the EJB, EAR and WAR projects</para>
+ </listitem>
+ <listitem>
+ <para><diffmk:wrapper diffmk:change="changed">JBoss Maven Integration facet if the Maven project contains a dependency with
+ the org.jboss.seam groupId and an artifactId starting with 'jboss-seam'</diffmk:wrapper></para>
+ </listitem>
+ <listitem>
+ <para>other required facets (Web Module, Java, JSF, etc.)</para>
+ </listitem>
</itemizedlist>
-
<para>If the Seam version from <emphasis>
- <property moreinfo="none">pom.xml</property></emphasis> matches a version of a Seam runtime configured in the workspace,
- Seam configurator will set that runtime, otherwise no Seam runtime will be set and you'll have to set it manually under
- <link linkend="project_pref">Seam Settings in the project preferences</link>.</para>
-
- <para>Seam configurator recognizes the Seam artifacts in the following way: the view folder is a web content folder from the WAR project,
- the source folder is the first Eclipse source folder. If there is a folder containing "hot" in the name, it will be chosen as the action source folder.
- Package is the first package that has children or doesn't have any subpackage.
- </para>
-
- <para>Configuring the Seam when importing a Maven project as well as a Seam Runtime, Seam artifacts and some facets could be suspended
- in the JBoss Maven Integration preferences (<emphasis>
- <property moreinfo="none">Window > Preferences > JBoss Tools > JBoss Maven Integration</property></emphasis>).</para>
-
+ <property moreinfo="none">pom.xml</property></emphasis><diffmk:wrapper diffmk:change="changed"> matches a version of a Seam runtime
+ configured in the workspace, Seam configurator will set that runtime, otherwise no Seam
+ runtime will be set and you'll have to set it manually under </diffmk:wrapper><link linkend="project_pref">Seam Settings in the project preferences</link>.</para>
+ <para><diffmk:wrapper diffmk:change="changed">Seam configurator recognizes the Seam artifacts in the following way: the view folder
+ is a web content folder from the WAR project, the source folder is the first Eclipse
+ source folder. If there is a folder containing "hot" in the name, it will be
+ chosen as the action source folder. Package is the first package that has children or
+ doesn't have any subpackage. </diffmk:wrapper></para>
+ <para><diffmk:wrapper diffmk:change="changed">Configuring the Seam when importing a Maven project as well as a Seam Runtime, Seam
+ artifacts and some facets could be suspended in the JBoss Maven Integration preferences
+ (</diffmk:wrapper><emphasis>
+ <property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Window > Preferences > JBoss Tools > JBoss Maven
+ Integration</diffmk:wrapper></property></emphasis>).</para>
<figure float="0">
<title>JBoss Maven Integration Preferences</title>
<mediaobject>
@@ -807,18 +848,17 @@
</mediaobject>
</figure>
</section>
-
<section>
<title>Relevant Resources Links</title>
-
- <para>In the <ulink url="http://in.relation.to/Bloggers/UsingMavenWithJBossTools">Using Maven with JBoss Tools</ulink>
- article written by Max Andersen you'll find references to the
- screencasts on how to use the examples of mavenized Seam projects provided by <property moreinfo="none">JBoss Tools</property>.</para>
+ <para>In the <ulink url="http://in.relation.to/Bloggers/UsingMavenWithJBossTools"><diffmk:wrapper diffmk:change="changed">Using
+ Maven with JBoss Tools</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="changed"> article written by Max Andersen you'll find
+ references to the screencasts on how to use the examples of mavenized Seam projects
+ provided by </diffmk:wrapper><property moreinfo="none">JBoss Tools</property>.</para>
</section>
</chapter>
-<chapter id="directory_str" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/directory_structure.xml" xreflabel="directory_str">
+<chapter id="directory_str" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/directory_structure.xml" xreflabel="directory_str">
<?dbhtml filename="directory_structure.html"?>
<chapterinfo>
<keywordset>
@@ -1022,7 +1062,7 @@
</chapter>
-<chapter id="menus_and_actions" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/seam_menus_and_actions.xml" xreflabel="menus_and_actions">
+<chapter id="menus_and_actions" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/seam_menus_and_actions.xml" xreflabel="menus_and_actions">
<?dbhtml filename="seam_menus_and_actions.html"?>
<chapterinfo>
<keywordset>
@@ -1385,7 +1425,7 @@
</chapter>
-<chapter id="seam_wizards" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/seam_wizards.xml" xreflabel="seam_wizards">
+<chapter id="seam_wizards" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/seam_wizards.xml" xreflabel="seam_wizards">
<?dbhtml filename="seam_wizards.html"?>
<chapterinfo>
<keywordset>
@@ -1727,7 +1767,7 @@
</chapter>
-<chapter id="generate_entities" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/generate_entities.xml" xreflabel="generate_entities">
+<chapter id="generate_entities" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/generate_entities.xml" xreflabel="generate_entities">
<?dbhtml filename="generate_entities.html"?>
<chapterinfo>
<keywordset>
@@ -1740,8 +1780,8 @@
<title>Seam Generate Entities</title>
<para>The main purpose of this chapter is to tell you about Seam Generate Entities.</para>
- <para><diffmk:wrapper diffmk:change="changed">Generate Entities is available directly from Eclipse using Hibernate Tools plugin for the standard seam-gen generation.</diffmk:wrapper></para>
- <para><diffmk:wrapper diffmk:change="changed">The wizard generates a set of CRUD Seam components and web pages based on existing tables in a database or on existing entities in your application.</diffmk:wrapper></para>
+ <para>Generate Entities is available directly from Eclipse using Hibernate Tools plugin for the standard seam-gen generation.</para>
+ <para>The wizard generates a set of CRUD Seam components and web pages based on existing tables in a database or on existing entities in your application.</para>
<figure float="0">
@@ -1753,37 +1793,37 @@
</mediaobject>
</figure>
- <para><diffmk:wrapper diffmk:change="added">By default, the generation mode is set to </diffmk:wrapper><emphasis diffmk:change="added"><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Reverse engineer from database</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></emphasis><diffmk:wrapper diffmk:change="added">
- The reverse engineering from a database could be described in four steps:</diffmk:wrapper></para>
+ <para>By default, the generation mode is set to <emphasis><property moreinfo="none">Reverse engineer from database</property>.</emphasis>
+ The reverse engineering from a database could be described in four steps:</para>
<orderedlist continuation="restarts" inheritnum="ignore">
<listitem><para>The wizard gets in database, extracts the tables and
their connections</para></listitem>
- <listitem><para><diffmk:wrapper diffmk:change="added">On basis of this metainfomation the Entity classes are generated into
- </diffmk:wrapper><literal diffmk:change="added" moreinfo="none">org.domain.project.entity</literal> package</para></listitem>
- <listitem><para>For the entities from step 2 the classes <property moreinfo="none">EntityList</property> and <property moreinfo="none">EntityHome</property><diffmk:wrapper diffmk:change="added"> are generated
- into </diffmk:wrapper><literal diffmk:change="added" moreinfo="none">org.domain.project.session</literal> package</para></listitem>
+ <listitem><para>On basis of this metainfomation the Entity classes are generated into
+ <literal moreinfo="none">org.domain.project.entity</literal> package</para></listitem>
+ <listitem><para>For the entities from step 2 the classes <property moreinfo="none">EntityList</property> and <property moreinfo="none">EntityHome</property> are generated
+ into <literal moreinfo="none">org.domain.project.session</literal> package</para></listitem>
<listitem><para>The xhtml pages are generated.</para></listitem>
</orderedlist>
- <note diffmk:change="added">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Note:</diffmk:wrapper></title>
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">The entities are generated from a database based on the console configuration that is created automatically during a Seam project creation.
- (Read more about </diffmk:wrapper><ulink diffmk:change="added" url="../../hibernatetools/html_single/index.html#console_conf"><diffmk:wrapper diffmk:change="added">console configuration</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="added">). The created console configuration is based on the
- connection profile set on the </diffmk:wrapper><link diffmk:change="added" linkend="seamFacet"><diffmk:wrapper diffmk:change="added">Seam Facets wizard page</diffmk:wrapper></link><diffmk:wrapper diffmk:change="added"> while creating a project.
- Configured connection profile settings are hold in the generated </diffmk:wrapper><literal diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">hibernate-console.properties</diffmk:wrapper></literal><diffmk:wrapper diffmk:change="added">. To change the connection
- profile, double-click the console configuration. It could be found in the </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Hibernate Configurations</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> view
- (</diffmk:wrapper><emphasis diffmk:change="added"><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Window > Show view > Other > Hibernate > Hibernate Configurations</diffmk:wrapper></property></emphasis><diffmk:wrapper diffmk:change="added">
- or just switch to the </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Hibernate</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> perspective).</diffmk:wrapper></para>
+ <note>
+ <title>Note:</title>
+ <para>The entities are generated from a database based on the console configuration that is created automatically during a Seam project creation.
+ (Read more about <ulink url="../../hibernatetools/html_single/index.html#console_conf">console configuration</ulink>). The created console configuration is based on the
+ connection profile set on the <link linkend="seamFacet">Seam Facets wizard page</link> while creating a project.
+ Configured connection profile settings are hold in the generated <literal moreinfo="none">hibernate-console.properties</literal>. To change the connection
+ profile, double-click the console configuration. It could be found in the <property moreinfo="none">Hibernate Configurations</property> view
+ (<emphasis><property moreinfo="none">Window > Show view > Other > Hibernate > Hibernate Configurations</property></emphasis>
+ or just switch to the <property moreinfo="none">Hibernate</property> perspective).</para>
</note>
- <para><diffmk:wrapper diffmk:change="added">
- Checking the </diffmk:wrapper><emphasis diffmk:change="added"><property moreinfo="none">Use existing entities</property></emphasis> mode the wizard executes only 3 and 4 steps. It generates missing classes and
+ <para>
+ Checking the <emphasis><property moreinfo="none">Use existing entities</property></emphasis> mode the wizard executes only 3 and 4 steps. It generates missing classes and
xhtml pages.
</para>
<para>Read the <link linkend="crud_database_application">Generate a CRUD Database Application</link> chapter in order to see how the <property moreinfo="none">Generate Seam Entities</property> wizard can be used.</para>
</chapter>
- <chapter id="seam_editors" role="updated" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/seam_editors.xml" xreflabel="seam_editors">
+<chapter id="seam_editors" role="updated" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/seam_editors.xml" xreflabel="seam_editors">
<?dbhtml filename="seam_editors.html"?>
<chapterinfo>
<keywordset>
@@ -1794,40 +1834,40 @@
</chapterinfo>
<title>Seam Editors</title>
-
-
+
+
<para>This chapter tells about Seam Editors and their features.</para>
-
+
<section>
<title>Visual Page Editor</title>
<para>Visual Page Editor fits perfectly for authoring view Seam pages. The major features of VPE are listed in <link linkend="SeamEditors">Main Features of Seam Editors</link> </para>
<para>You can also read more about Visual Page Editor in <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jsf/html/editors.htm...">Visual Page Editor</ulink> chapter of "Visual Web Tools Reference Guide".</para>
</section>
-
-
-
-
+
+
+
+
<section>
<title>Seam Pages Editor</title>
-
-
+
+
<para>
<property moreinfo="none">Seam Pages Editor</property> provides a handy way to edit the <property moreinfo="none">pages.xml</property> file.
-
+
</para>
-
+
<para>
You can edit the pages.xml file in three modes: Graphical, Tree and Source.
-
+
</para>
<para>
Seam Pages Editor supports synchronization with Package Explorer.This means that while renaming files in the Package Explorer all the changes immediately affect the pages.xml file.
-
+
</para>
<section>
<title>Graphical Mode</title>
-
-
+
+
<para>Graphical mode provides you with a set of visual tools to organize your project pageflow, exception handling etc.</para>
<figure float="0">
<title>Seam Pages Editor: Graphical View</title>
@@ -1837,22 +1877,22 @@
</imageobject>
</mediaobject>
</figure>
-
+
<para>The Graphical part of the editor has some visual elements. The table below shows graphical representation of the elements and explains their meanings. </para>
<table>
- <title>Pages Editor: Graphical View. Visual elements</title>
+ <title>Pages Editor: Graphical View. Visual elements</title>
<tgroup cols="2">
<thead>
<row>
<entry>Element</entry>
-
+
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
- <entry>
+ <entry>
<mediaobject>
<imageobject>
<imagedata fileref="images/seam_editors/element_page.png"></imagedata>
@@ -1863,9 +1903,9 @@
<page>
</code> element.
</para></entry>
- </row>
+ </row>
<row>
- <entry>
+ <entry>
<mediaobject>
<imageobject>
<imagedata fileref="images/seam_editors/element_param.png"></imagedata>
@@ -1877,26 +1917,26 @@
<imagedata fileref="images/seam_editors/icon_plus.png"></imagedata>
</imageobject>
</inlinemediaobject>)
-
-
+
+
on the <code>
<page>
</code> element reveals a box that lists the parameters for the page.</para>
</entry>
-
- </row>
-
+
+ </row>
+
<row>
<entry> <mediaobject>
<imageobject>
<imagedata fileref="images/seam_editors/element_page2.png"></imagedata>
</imageobject>
</mediaobject></entry>
- <entry>
+ <entry>
<para>A red cross in the upper left corner of the page box indicates that the view-id is not found in the project.</para>
</entry>
- </row>
-
+ </row>
+
<row>
<entry><mediaobject>
<imageobject>
@@ -1904,12 +1944,12 @@
</imageobject>
</mediaobject></entry>
<entry> <para>
- A gray box with a dashed border represents a page that has navigation
+ A gray box with a dashed border represents a page that has navigation
(navigation rule) to but the page is not defined in the page.xml file.
</para></entry>
- </row>
-
-
+ </row>
+
+
<row>
<entry> <mediaobject>
<imageobject>
@@ -1917,30 +1957,30 @@
</imageobject>
</mediaobject></entry>
<entry> <para>An <code><exception></code> is represented by a blue box with a orange diamond.</para></entry>
- </row>
-
-
-
-
-
+ </row>
+
+
+
+
+
</tbody>
</tgroup>
</table>
+
+
+ <para>Pageflow relations are shown with gray arrows, when you select a relationship the arrow is changed to orange. </para>
+
+
+
+ <para>On the lefthand side of the Graphical view of <property moreinfo="none">Seam Page Editor</property> you can find a toolbar with a set of icons for the most frequently used commands. </para>
-
- <para>Pageflow relations are shown with gray arrows, when you select a relationship the arrow is changed to orange. </para>
-
-
-
- <para>On the lefthand side of the Graphical view of <property moreinfo="none">Seam Page Editor</property> you can find a toolbar with a set of icons for the most frequently used commands. </para>
-
<table>
- <title>Pages Editor: Graphical View. Commands Icons</title>
+ <title>Pages Editor: Graphical View. Commands Icons</title>
<tgroup cols="2">
<thead>
<row>
<entry>Icon Image</entry>
-
+
<entry>Command</entry>
</row>
</thead>
@@ -1952,12 +1992,12 @@
<imagedata fileref="images/seam_editors/icon_select.png"></imagedata>
</imageobject>
</inlinemediaobject>
-
+
</entry>
<entry>Select a page element</entry>
-
- </row>
-
+
+ </row>
+
<row>
<entry><inlinemediaobject>
<imageobject>
@@ -1965,9 +2005,9 @@
</imageobject>
</inlinemediaobject></entry>
<entry>Marquee a page item</entry>
- </row>
-
-
+ </row>
+
+
<row>
<entry>
<inlinemediaobject>
@@ -1975,31 +2015,31 @@
<imagedata fileref="images/seam_editors/icon_new_link.png"></imagedata>
</imageobject>
</inlinemediaobject>
-
+
</entry>
<entry>Add a page relationship</entry>
- </row>
-
-
+ </row>
+
+
<row>
<entry>
<inlinemediaobject>
<imageobject>
<imagedata fileref="images/seam_editors/icon_exception.png"></imagedata>
</imageobject>
- </inlinemediaobject>
-
+ </inlinemediaobject>
+
</entry>
<entry>Add an exception rule</entry>
- </row>
-
+ </row>
+
</tbody>
</tgroup>
- </table>
-
+ </table>
+
<para>Context menus are also available when you click either on an item or a blank space.</para>
-
-
+
+
<para>A context menu called on a blank space of the diagram provides the following options:</para>
<itemizedlist>
<listitem><para><emphasis role="bold">Page</emphasis> creates a new page element on the diagram</para></listitem>
@@ -2010,28 +2050,28 @@
<para>Rightclicking on a selected
<code><page></code>
element calls a context menu where you can choose the following options if you click on the <emphasis role="bold">New</emphasis> menu item: </para>
-
-
-
+
+
+
<itemizedlist>
<listitem><para><emphasis role="bold">Rule</emphasis> opens the <property moreinfo="none">Add Navigation Rule</property> dialog in which you can browse your project for a view page to set the view-id in the navigation rule and specify <emphasis role="bold">render</emphasis> or <emphasis role="bold">redirect</emphasis> navigation options </para></listitem>
- <listitem><para><emphasis role="bold">Param</emphasis> calls a dialog box where you can define a parameter (using the
- <code><param></code>
- tag) for the
+ <listitem><para><emphasis role="bold">Param</emphasis> calls a dialog box where you can define a parameter (using the
+ <code><param></code>
+ tag) for the
<code><page></code>
element</para></listitem>
</itemizedlist>
-
-
+
+
<section>
<title>Seam Pages Diagram Preferences</title>
-
-
-
- <para>In order to customize the layout of Diagram you can go to
+
+
+
+ <para>In order to customize the layout of Diagram you can go to
<property moreinfo="none">Window > Preferences > JBoss Tools > Web > Seam > Editors > Seam Pages Diagram</property>.
</para>
-
+
<figure float="0">
<title>Preferences of Seam Pages Diagram</title>
<mediaobject>
@@ -2042,15 +2082,15 @@
</figure>
</section>
</section>
-
-
+
+
<section>
<title>Tree Mode</title>
-
+
<para>Tree Mode provides a wider range of options and way to edit and modify the pages.xml file.</para>
-
-
-
+
+
+
<figure float="0">
<title>Seam Pages Editor: Tree View</title>
<mediaobject>
@@ -2059,19 +2099,19 @@
</imageobject>
</mediaobject>
</figure>
-
+
<para>
In this mode all elements and attributes of the page.xml
file can be viewed and edited in a visual, user friendly way.
</para>
-
+
</section>
-
-
+
+
<section>
<title>Outline Support for Seam Pages Editor</title>
-
-
+
+
<para>Seam Pages Editor provides <property moreinfo="none">Outline</property> view support.
You can explore the pages.xml using Outline view in two modes: <property moreinfo="none">Tree</property> ( <inlinemediaobject>
<imageobject>
@@ -2082,11 +2122,11 @@
<imagedata fileref="images/seam_editors/outline_navigation.png"></imagedata>
</imageobject>
</inlinemediaobject> ).</para>
-
+
<para>
- The Diagram Navigation mode of Outline view gives a birds-view of the layout to allow quick navigation for large-scale applications.
+ The Diagram Navigation mode of Outline view gives a birds-view of the layout to allow quick navigation for large-scale applications.
</para>
-
+
<figure float="0">
<title>Outline view: Diagram Navigation mode</title>
<mediaobject>
@@ -2095,12 +2135,12 @@
</imageobject>
</mediaobject>
</figure>
-
-
+
+
<para>The Tree mode shows a tree for every element in the pages.xml file. You can get a quick overview of the whole file. When selecting an element in the Outline view the related element is highlighted in the Graphical, Tree or Source page of Seam Pages Editor.</para>
-
-
-
+
+
+
<figure float="0">
<title>Outline view: Tree mode</title>
<mediaobject>
@@ -2109,28 +2149,28 @@
</imageobject>
</mediaobject>
</figure>
-
-
-
-
+
+
+
+
</section>
-
-
+
+
</section>
-
-
-
-
+
+
+
+
<section>
-
-
+
+
<title>Seam Components Editor</title>
-
+
<para>When editing <property moreinfo="none">components.xml</property> a structured tree editor is available
in addition to pure source editing. It has a graphical view (Tree tab) and source
(Source tab).</para>
-
+
<figure float="0">
<title>component.xml Editor</title>
<mediaobject>
@@ -2139,10 +2179,10 @@
</imageobject>
</mediaobject>
</figure>
-
+
<note>
<title>Note:</title>
-
+
<para>You can view and edit <property moreinfo="none">components.xml</property> and other xml files
directly in the Project Explorer and Properties sheet without opening the
components.xml editor.</para>
@@ -2155,11 +2195,11 @@
</imageobject>
</mediaobject>
</figure>
-
+
</section>
-
-
-
+
+
+
<section id="SeamEditors">
<title>Main Features of Seam Editors</title>
@@ -2243,18 +2283,18 @@
</figure>
</section>
-
+
</section>
<section>
<title>Content Assist for Page Descriptors</title>
-
- <para>Content Assist ( CA ) is available for Page Descriptors,
- <property moreinfo="none">.page.xml</property> and <property moreinfo="none">page.xml</property> files.
- Content Assist lets you easily compose a Page Descriptor file by suggesting elements and attributes. The suggestions are context dependent, which means that CA provides only the elements, attributes and in some cases values for the attributes, suitable in a particular place of your Page Descriptor.
-
+
+ <para>Content Assist ( CA ) is available for Page Descriptors,
+ <property moreinfo="none">.page.xml</property> and <property moreinfo="none">page.xml</property> files.
+ Content Assist lets you easily compose a Page Descriptor file by suggesting elements and attributes. The suggestions are context dependent, which means that CA provides only the elements, attributes and in some cases values for the attributes, suitable in a particular place of your Page Descriptor.
+
</para>
<para>
- Seam Pages Editor also supports code completion in EL-expressions suggesting you possible bean properties and methods.
+ Seam Pages Editor also supports code completion in EL-expressions suggesting you possible bean properties and methods.
</para>
</section>
<section id="OpenOn">
@@ -2291,7 +2331,7 @@
</itemizedlist>
<note>
<title>Note:</title>
-
+
<para>In this section were described only use cases special for Seam applications.For general information please read
<ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jsf/html/editors.htm...">OpenOn section in Visual Web Tools Reference Guide</ulink>.</para>
</note>
@@ -2300,12 +2340,12 @@
<itemizedlist>
<listitem><para>components or properties resolved using an EL expression;</para></listitem>
<listitem><para>all actions described in pages.xml;</para></listitem>
- <listitem><para>other .xhtml files that paths are specified in a current file;</para></listitem>
+ <listitem><para>other .xhtml files that paths are specified in a current file;</para></listitem>
<listitem><para>image files that paths are set in the <emphasis>
- <property moreinfo="none">value</property></emphasis> property.The files will be opened in the default system graphical editor.</para></listitem>
+ <property moreinfo="none">value</property></emphasis> property.The files will be opened in the default system graphical editor.</para></listitem>
</itemizedlist>
</listitem>
- <listitem id="xmlFiles">
+ <listitem id="xmlFiles">
<para>OpenOn is also supported in Page Descriptors (<property moreinfo="none">.page.xml</property> and <property moreinfo="none">pages.xml</property>). OpenOn allows you to navigate to Java beans as well as to view pages.
You can <property moreinfo="none">Ctrl + left click</property> on a bean or on view page file (e.g. XTML file) to navigate to the file you clicked on. </para>
@@ -2317,7 +2357,7 @@
</imageobject>
</mediaobject>
</figure>
- <para>If you use Rule-based authorization with Drools in your Seam application you can apply OpenOn
+ <para>If you use Rule-based authorization with Drools in your Seam application you can apply OpenOn
in <emphasis>
<property moreinfo="none">components.xml</property></emphasis> to open the files containing rule definitions in the <emphasis>
<property moreinfo="none">"rule-files"</property></emphasis> tag.
@@ -2331,7 +2371,7 @@
</mediaobject>
</figure>
<para>You can also use OpenOn to open jBPM components that are described in Seam component descriptor.
- Two places where it works are available: </para>
+ Two places where it works are available: </para>
<itemizedlist>
<listitem><para>inside <emphasis>
<property moreinfo="none"><component></property></emphasis> definition;</para>
@@ -2354,19 +2394,19 @@
</mediaobject>
</figure></listitem>
</itemizedlist>
- </listitem>
- <listitem id="javaFiles">
+ </listitem>
+ <listitem id="javaFiles">
<para>
OpenOn is also supported in seam components where <property moreinfo="none"> In annotation</property> is presented.
- After pressing <property moreinfo="none">Ctrl + left click</property> on the seam component specified in <code>@In </code> you will get the possibility to open the file where the component is declarated as well as
+ After pressing <property moreinfo="none">Ctrl + left click</property> on the seam component specified in <code>@In </code> you will get the possibility to open the file where the component is declarated as well as
all of the seam components where it is used in the next declarations:</para>
<itemizedlist>
<listitem><para>@Out</para></listitem>
<listitem><para>@DataModel</para></listitem>
<listitem><para>@Role</para></listitem>
- <listitem><para>@Roles</para></listitem>
+ <listitem><para>@Roles</para></listitem>
</itemizedlist>
-
+
<figure float="0">
<title>OpenOn in Seam Component</title>
<mediaobject>
@@ -2421,7 +2461,7 @@
on normal Java projects you will have to go and add the Validation builder of your
project . It is available in the properties of your project under
<emphasis><property moreinfo="none">Validation</property>.</emphasis></para>
-
+
<figure float="0">
<title>Enabling the Validation Builder</title>
<mediaobject>
@@ -2430,16 +2470,16 @@
</imageobject>
</mediaobject>
</figure>
-
+
<para>The validations can be run manually by clicking
<emphasis><property moreinfo="none">Validate</property></emphasis> via the context menu on your project (folder or file inside your project) which will
execute all the active WTP validations. Following to the project's preferences under <emphasis>
- <property moreinfo="none">Validation</property></emphasis> it's possible to enable/disable any validator.
+ <property moreinfo="none">Validation</property></emphasis> it's possible to enable/disable any validator.
</para>
-
+
<para>It's also possible to turn off the validation for some resource (a file, folder) inside your project via the <emphasis>
<property moreinfo="none">Exclude Validation</property></emphasis> context menu option.</para>
-
+
<figure float="0">
<title>Excluding Validation for the WebContent Folder</title>
<mediaobject>
@@ -2448,9 +2488,9 @@
</imageobject>
</mediaobject>
</figure>
-
+
<para>As a result, if you've turned off the validation for a folder (or file), it is put to the excluded group of the Validation filters and be ignored during the validation.</para>
-
+
<figure float="0">
<title>Validation Filters</title>
<mediaobject>
@@ -2465,7 +2505,7 @@
</chapter>
-<chapter id="seam_view" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/seam_view.xml" xreflabel="seam_view">
+<chapter id="seam_view" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/seam_view.xml" xreflabel="seam_view">
<?dbhtml filename="seam_view.html"?>
<chapterinfo>
<keywordset>
@@ -2474,126 +2514,126 @@
<keyword>JBDS</keyword>
</keywordset>
</chapterinfo>
-
+
<title>Seam Views</title>
-
+
<section>
<title>Seam Components View</title>
-
+
<para>This chapter introduces you with Seam Components View.</para>
<para>The <property moreinfo="none">Seam Components View</property> is available from Seam perspective. It provides a list of seam components found in a project.</para>
-
+
<figure float="0">
<title>Seam Components View</title>
- <mediaobject>
+ <mediaobject>
<imageobject>
<imagedata fileref="images/seam_view/seam_view_1.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
+
<para>The Seam Components View can show a components default scope in two ways:</para>
-
+
<itemizedlist>
<listitem><para>as labels on each component (click on the triangular symbol at the top of the Seam Components View page and select <emphasis><property moreinfo="none">Scope Presentation > Label</property></emphasis>)</para></listitem>
</itemizedlist>
-
+
<figure float="0">
<title>Label Scope Presentation of Seam Components</title>
- <mediaobject>
+ <mediaobject>
<imageobject>
<imagedata fileref="images/seam_view/seam_view_2.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
+
<itemizedlist>
<listitem><para>as a node per scope where the components are grouped under a node representing its default scope.</para></listitem>
</itemizedlist>
-
+
<figure float="0">
<title>Node Scope Presentation of Seam Components</title>
- <mediaobject>
+ <mediaobject>
<imageobject>
<imagedata fileref="images/seam_view/seam_view_3.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
+
<para>The Seam Packages can be presented in two ways:</para>
-
+
<itemizedlist>
<listitem><para>Flat</para></listitem>
</itemizedlist>
-
+
<figure float="0">
<title>Flat Presentation of Seam Packages</title>
- <mediaobject>
+ <mediaobject>
<imageobject>
<imagedata fileref="images/seam_view/seam_view_4.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
+
<itemizedlist>
<listitem><para>Hierarchical</para></listitem>
</itemizedlist>
-
+
<figure float="0">
<title>Hierarchical Presentation of Seam Packages</title>
- <mediaobject>
+ <mediaobject>
<imageobject>
<imagedata fileref="images/seam_view/seam_view_5.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
+
<para>The Seam Component View can be filtered by choosing <property moreinfo="none">Customize View</property>.</para>
-
+
<figure float="0">
<title>Customize View</title>
- <mediaobject>
+ <mediaobject>
<imageobject>
<imagedata fileref="images/seam_view/seam_view_6.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
- <para>Select the <emphasis><property moreinfo="none">Seam Components from Libraries</property></emphasis> under the Filters tab.
+
+ <para>Select the <emphasis><property moreinfo="none">Seam Components from Libraries</property></emphasis> under the Filters tab.
This will make the view ignore components defined in jars. This will hide the many built-in Seam components and leave only those that are actually defined in the project or have been actively configured via components.xml. Therefore, deselecting the filter will show you all available components.</para>
<para>Selecting the <emphasis><property moreinfo="none">Seam Components from Referenced Projects</property></emphasis> will hide the components that dependent on other project.</para>
-
+
<figure float="0">
<title>Available Seam Component View Customizations</title>
- <mediaobject>
+ <mediaobject>
<imageobject>
<imagedata fileref="images/seam_view/seam_view_7.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
+
</section>
-
+
<section>
<title>Project Explorer integration</title>
-
+
<para>If you don't like to have a view for every piece of information in Eclipse, the content of the Seam Components view is also available as a node in the built-in Project Explorer (not Package Explorer!) view in Eclipse.</para>
-
+
<figure float="0">
<title>Seam Components in Project Explorer</title>
- <mediaobject>
+ <mediaobject>
<imageobject>
<imagedata fileref="images/seam_view/seam_view_8.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
+
</section>
-
+
</chapter>
-<chapter id="seam_preferences" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/seam_preferences.xml" xreflabel="seam_preferences">
+<chapter id="seam_preferences" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/seam_preferences.xml" xreflabel="seam_preferences">
<!-- mark as new -->
<?dbhtml filename="seam_preferences.html"?>
<chapterinfo>
@@ -2676,8 +2716,8 @@
can select whether the Seam validator displays an error, a warning or just ignore
the EL Syntax error.</para>
<note><para>There are references made between each EL and variable name, so you can revalidate a particular EL if a context variable was changed. This makes parsing of each resource with referenced ELs much faster.</para></note>
-
-
+
+
<figure float="0">
<title>Severity Preference for EL Syntax</title>
<mediaobject>
@@ -2686,9 +2726,9 @@
</imageobject>
</mediaobject>
</figure>
-
+
<para>The <emphasis>
- <property moreinfo="none">Revalidate unresolved ELs automatically</property></emphasis> option is enabled by default.
+ <property moreinfo="none">Revalidate unresolved ELs automatically</property></emphasis> option is enabled by default.
If necessary, you can uncheck it. It may increase a performance for big complex projects.</para>
<para>In the upper right corner of the Seam Validator preferences page there is a <emphasis><property moreinfo="none">Configure Project
@@ -2775,8 +2815,8 @@
<tip>
<title>Tip:</title>
- <para><diffmk:wrapper diffmk:change="changed">On the figure above fields for configuring Seam artifacts are unavailable because Seam
- Runtime is not selected.</diffmk:wrapper></para>
+ <para>On the figure above fields for configuring Seam artifacts are unavailable because Seam
+ Runtime is not selected.</para>
</tip>
<para>In Seam Wizards (New Action, Form, Entity, Conversation, Generate Entities) you can
@@ -2806,7 +2846,7 @@
<para>To enable it, you should call the context menu for a Seam project and select <emphasis><property moreinfo="none">JBoss
Tools > Add Custom Capabilities</property>.</emphasis> Then check the needed modules and press
<emphasis><property moreinfo="none">Finish</property>.</emphasis></para>
-
+
<figure float="0">
<title> Custom Capabilities be added to Seam Project</title>
<mediaobject>
@@ -2817,7 +2857,7 @@
</figure>
<para>The next page displays all the updates that have been made to the project.</para>
-
+
<figure float="0">
<title>Adding Custom Capabilities to Seam Project</title>
<mediaobject>
@@ -2826,13 +2866,13 @@
</imageobject>
</mediaobject>
</figure>
-
+
</section>
</chapter>
-<chapter id="seam_refactoring" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/seam_refactoring.xml" xreflabel="seam_refactoring">
+<chapter id="seam_refactoring" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/seam_refactoring.xml" xreflabel="seam_refactoring">
<?dbhtml filename="seam_refactoring.html"?>
<chapterinfo>
<keywordset>
@@ -2842,70 +2882,71 @@
<keyword>rename</keyword>
</keywordset>
</chapterinfo>
- <title><diffmk:wrapper diffmk:change="changed">Seam Refactoring Tools</diffmk:wrapper></title>
- <para><diffmk:wrapper diffmk:change="added">The goal of Seam components refactoring is to make system-wide code changes without affecting the behavior of the program.
- The Seam module of </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">JBoss Tools</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> provides assistance in easily code refactoring.</diffmk:wrapper></para>
-
- <para><diffmk:wrapper diffmk:change="changed">Starting from Jboss Tools M4 refactoring functionality became also available for managed beans, method and properties used in ELs.
- Thus now Seam refactoring tools include the next refactoring operations:</diffmk:wrapper></para>
-
+ <title>Seam Refactoring Tools</title>
+ <para>The goal of Seam components refactoring is to make system-wide code changes without affecting the behavior of the program.
+ The Seam module of <property moreinfo="none">JBoss Tools</property> provides assistance in easily code refactoring.</para>
+
+ <para>Starting from Jboss Tools M4 refactoring functionality became also available for managed beans, method and properties used in ELs.
+ Thus now Seam refactoring tools include the next refactoring operations:</para>
+
<itemizedlist>
- <listitem><para><link diffmk:change="added" linkend="renaming_seam_components"><diffmk:wrapper diffmk:change="added">Renaming Seam components</diffmk:wrapper></link></para></listitem>
- <listitem><para><link diffmk:change="added" linkend="renaming_seam_context_vars"><diffmk:wrapper diffmk:change="added">Renaming Seam context variables in EL</diffmk:wrapper></link></para></listitem>
+ <listitem><para><link linkend="renaming_seam_components">Renaming Seam components</link></para></listitem>
+ <listitem><para><link linkend="renaming_seam_context_vars">Renaming Seam context variables in EL</link></para></listitem>
</itemizedlist>
-
- <para><diffmk:wrapper diffmk:change="added">Refactoring commands are available from the context menus of several views and editors and use a standard Eclipse refactoring wizard.
- For details, see </diffmk:wrapper><link diffmk:change="added" linkend="RefactornigWizard"><diffmk:wrapper diffmk:change="added">"Using the Refactoring Wizard"</diffmk:wrapper></link><diffmk:wrapper diffmk:change="added"> later in this chapter.</diffmk:wrapper></para>
-
- <note diffmk:change="added">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Note:</diffmk:wrapper></title>
- <para><diffmk:wrapper diffmk:change="added">Seam refactoring could be only performed in the file that is not marked as </diffmk:wrapper><emphasis diffmk:change="added"><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">Read only</diffmk:wrapper></property></emphasis><diffmk:wrapper diffmk:change="added"> in its properties.</diffmk:wrapper></para>
+
+ <para>Refactoring commands are available from the context menus of several views and editors and use a standard Eclipse refactoring wizard.
+ For details, see <link linkend="RefactornigWizard">"Using the Refactoring Wizard"</link> later in this chapter.</para>
+
+ <note>
+ <title>Note:</title>
+ <para>Seam refactoring could be only performed in the file that is not marked as <emphasis><property moreinfo="none">Read only</property></emphasis> in its properties.</para>
</note>
-
- <figure diffmk:change="added" float="0">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Properties View for Java File</diffmk:wrapper></title>
- <mediaobject diffmk:change="added">
- <imageobject diffmk:change="added">
- <imagedata diffmk:change="added" fileref="images/seam_refactoring/seam_refactor10.png"></imagedata>
+
+ <figure float="0">
+ <title>Properties View for Java File</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/seam_refactoring/seam_refactor10.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
+
<section id="RefactornigWizard">
- <title><diffmk:wrapper diffmk:change="changed">Using the Refactorinig Wizard</diffmk:wrapper></title>
- <para>This wizard is opened always when the user clicks <property moreinfo="none">Rename Seam Component</property>/<property moreinfo="none">Rename Seam Context Variable</property>/<property moreinfo="none">Rename</property> command in any
- of the mentioned views.
- </para>
-
+ <title>Using the Refactorinig Wizard</title>
+ <para><diffmk:wrapper diffmk:change="added">This wizard is opened always when the user clicks the </diffmk:wrapper><emphasis diffmk:change="added"><property moreinfo="none">Rename Seam Component</property><diffmk:wrapper diffmk:change="added">,</diffmk:wrapper></emphasis>
+ <emphasis diffmk:change="added"><property moreinfo="none">Rename Seam Context Variable</property></emphasis><diffmk:wrapper diffmk:change="added">
+ or </diffmk:wrapper><emphasis diffmk:change="added"><property moreinfo="none">Rename</property></emphasis><diffmk:wrapper diffmk:change="added"> command in any of the views/editors mentioned later in this chapter.
+ </diffmk:wrapper></para>
+
<figure float="0">
- <title>Refactoring Seam wizard</title>
+ <title><diffmk:wrapper diffmk:change="changed">Refactoring Wizard</diffmk:wrapper></title>
<mediaobject>
<imageobject>
<imagedata fileref="images/seam_refactoring/seam_refactor2.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
- <para>In the <property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Seam Components name</diffmk:wrapper></property><diffmk:wrapper diffmk:change="changed"> field you should enter a new name of the component,
- then click </diffmk:wrapper><property moreinfo="none">Next</property> and follow the next wizard steps:
+
+ <para>In the <property moreinfo="none">Seam Components name</property> field you should enter a new name of the component,
+ then click <property moreinfo="none">Next</property> and follow the next wizard steps:
</para>
-
+
<figure float="0">
- <title>Navigating between the differences</title>
+ <title><diffmk:wrapper diffmk:change="changed">Navigating Between the Differences</diffmk:wrapper></title>
<mediaobject>
<imageobject>
<imagedata fileref="images/seam_refactoring/seam_refactor3.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">As you see, when performing a refactoring operation, you can preview all of the changes resulting from a refactoring
- action before you choose to carry them out.</diffmk:wrapper></para>
-
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">The view represents two windows: one with the original source code and the other with refactored one.</diffmk:wrapper></para>
-
- <para><diffmk:wrapper diffmk:change="changed">With the help of
- </diffmk:wrapper><inlinemediaobject> <imageobject>
+
+ <para>As you see, when performing a refactoring operation, you can preview all of the changes resulting from a refactoring
+ action before you choose to carry them out.</para>
+
+ <para>The view represents two windows: one with the original source code and the other with refactored one.</para>
+
+ <para>With the help of
+ <inlinemediaobject> <imageobject>
<imagedata fileref="images/seam_refactoring/butt1.png"></imagedata>
</imageobject></inlinemediaobject>,
<inlinemediaobject> <imageobject>
@@ -2916,10 +2957,10 @@
</imageobject></inlinemediaobject>,
<inlinemediaobject> <imageobject>
<imagedata fileref="images/seam_refactoring/butt4.png"></imagedata>
- </imageobject></inlinemediaobject><diffmk:wrapper diffmk:change="changed"> buttons you can quickly navigate between the differences in the code.
- If you don't agree with some changes you can't undo them but you can remove the class from the list of classes that need refactoring.
- </diffmk:wrapper></para>
-
+ </imageobject></inlinemediaobject> buttons you can quickly navigate between the differences in the code.
+ If you don't agree with some changes you can't undo them but you can remove the class from the list of classes that need refactoring.
+ </para>
+
<figure float="0">
<title>List of classes that need refactoring
</title>
@@ -2929,111 +2970,265 @@
</imageobject>
</mediaobject>
</figure>
-
- <para>To apply the changes click <emphasis><property moreinfo="none">Finish</property><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></emphasis></para>
-
- <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">Renaming the selected seam component also corrects all references to the
+
+ <para>To apply the changes click <emphasis><property moreinfo="none">Finish</property>.</emphasis></para>
+
+ <para><diffmk:wrapper diffmk:change="changed">Renaming the selected seam component corrects all references to the
component (also in other files in the project). Renaming a type doesn't allow to rename
similarly named variables and methods.
</diffmk:wrapper></para>
</section>
-
- <section id="renaming_seam_components">
- <title><diffmk:wrapper diffmk:change="changed">Renaming Seam Components</diffmk:wrapper></title>
-
+
+ <section id="renaming_seam_components">
+ <title>Renaming Seam Components</title>
+
<para>Renaming a Seam component could be performed in the:</para>
-
+
<itemizedlist>
<listitem><para><link linkend="JavaEditor">Java editor</link></para></listitem>
<listitem><para><link linkend="SeamComponents">Seam Components view</link></para></listitem>
<listitem><para><link linkend="components_xml_editor">Tree view of the components.xml editor</link></para></listitem>
</itemizedlist>
-
+
<section id="JavaEditor">
- <title><diffmk:wrapper diffmk:change="changed">Renaming Seam Components in the Java Editor</diffmk:wrapper></title>
- <para><diffmk:wrapper diffmk:change="changed">If you want to rename certain seam component using Java Editor,first of all it's necessary to open it.
- If you don't know ,where the seam component is declared,use </diffmk:wrapper><link linkend="open_seam_component">Open Seam Components icon</link><diffmk:wrapper diffmk:change="changed">.
-
- </diffmk:wrapper></para>
- <para>To open the rename Seam Component command in Java Editor it's necessary to left click the file <emphasis><property moreinfo="none">>Seam Refactor>Rename Seam Component</property></emphasis><diffmk:wrapper diffmk:change="changed">.
- </diffmk:wrapper></para>
+ <title>Renaming Seam Components in the Java Editor</title>
+ <para><diffmk:wrapper diffmk:change="changed">If you want to rename certain seam component using Java editor, first of all it's necessary to open it.
+ If you don't know, where the seam component is declared, use </diffmk:wrapper><link linkend="open_seam_component"><diffmk:wrapper diffmk:change="changed">Open Seam Components</diffmk:wrapper></link><diffmk:wrapper diffmk:change="changed"> icon.</diffmk:wrapper></para>
+ <para><diffmk:wrapper diffmk:change="changed">To rename a Seam component in the Java editor it's necessary to select the component, left click the file and then select
+ </diffmk:wrapper><emphasis><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Seam Refactor > Rename Seam Component</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></emphasis>
+ </para>
<figure float="0">
- <title>Opening Refactoring wizard in Java Editor</title>
+ <title><diffmk:wrapper diffmk:change="changed">Opening Refactoring Wizard in Java Editor</diffmk:wrapper></title>
<mediaobject>
<imageobject>
<imagedata fileref="images/seam_refactoring/seam_refactor1.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
+
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">For details, see also the movie,
+ </diffmk:wrapper><ulink diffmk:change="added" url="http://docs.jboss.org/tools/movies/demos/rename_seam_components_java/rena..."><diffmk:wrapper diffmk:change="added">"Renaming a Seam component in the Java Editor"</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></para>
</section>
-
+
<section id="SeamComponents">
- <title><diffmk:wrapper diffmk:change="changed">Renaming Seam Components in the Seam Components View</diffmk:wrapper></title>
- <para>To open <property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Refactoring</diffmk:wrapper></property><diffmk:wrapper diffmk:change="changed"> wizard in the </diffmk:wrapper><property moreinfo="none">Seam Components</property><diffmk:wrapper diffmk:change="changed"> view
- you should left click the component you wants to open and choose </diffmk:wrapper><property moreinfo="none">Rename Seam Component</property> option.</para>
-
+ <title>Renaming Seam Components in the Seam Components View</title>
+ <para><diffmk:wrapper diffmk:change="changed">To open the </diffmk:wrapper><property moreinfo="none">Refactoring</property> wizard in the <property moreinfo="none">Seam Components</property><diffmk:wrapper diffmk:change="changed"> view
+ you should left click the component you want to open and choose </diffmk:wrapper><property moreinfo="none">Rename Seam Component</property> option.</para>
+
<figure float="0">
- <title><diffmk:wrapper diffmk:change="changed">Opening Refactoring Wizard in Seam Components View</diffmk:wrapper></title>
+ <title>Opening Refactoring Wizard in Seam Components View</title>
<mediaobject>
<imageobject>
<imagedata fileref="images/seam_refactoring/seam_refactor5.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
+
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">For details, see also the movie,
+ </diffmk:wrapper><ulink diffmk:change="added" url="http://docs.jboss.org/tools/movies/demos/rename_seam_components_comp_view..."><diffmk:wrapper diffmk:change="added">"Renaming a Seam component in the Seam Components view"</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></para>
</section>
-
- <section id="components_xml_editor">
- <title><diffmk:wrapper diffmk:change="changed">Renaming Seam Components in the Seam Components Editor</diffmk:wrapper></title>
- <para>When you open <literal diffmk:change="added" moreinfo="none">components.xml</literal><diffmk:wrapper diffmk:change="added"> file using </diffmk:wrapper><property diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">JBossTools XML Editor</diffmk:wrapper></property><diffmk:wrapper diffmk:change="changed">, open the
- </diffmk:wrapper><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Refactoring</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added"> wizard in the Tree tab by left-clicking the component in
- </diffmk:wrapper><property moreinfo="none">components</property><diffmk:wrapper diffmk:change="changed"> area and choosing </diffmk:wrapper><property moreinfo="none">Rename</property><diffmk:wrapper diffmk:change="changed"> option.</diffmk:wrapper></para>
-
+
+ <section id="components_xml_editor">
+ <title>Renaming Seam Components in the Seam Components Editor</title>
+ <para>When you open <literal moreinfo="none">components.xml</literal> file using <property moreinfo="none"><diffmk:wrapper diffmk:change="changed">JBoss Tools XML Editor</diffmk:wrapper></property>, open the
+ <property moreinfo="none">Refactoring</property> wizard in the Tree tab by left-clicking the component in
+ <property moreinfo="none">components</property> area and choosing <property moreinfo="none">Rename</property> option.</para>
+
<figure float="0">
- <title><diffmk:wrapper diffmk:change="changed">Opening Refactoring Wizard in </diffmk:wrapper><emphasis><property moreinfo="none">components.xml</property></emphasis><diffmk:wrapper diffmk:change="changed"> File</diffmk:wrapper></title>
+ <title>Opening Refactoring Wizard in <emphasis><property moreinfo="none">components.xml</property></emphasis> File</title>
<mediaobject>
<imageobject>
<imagedata fileref="images/seam_refactoring/seam_refactor6.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
- </section>
- </section>
- <section diffmk:change="added" id="renaming_seam_context_vars">
- <title diffmk:change="added"><diffmk:wrapper diffmk:change="added">Renaming Seam Context Variables in EL</diffmk:wrapper></title>
+
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">For details, see also the movie,
+ </diffmk:wrapper><ulink diffmk:change="added" url="http://docs.jboss.org/tools/movies/demos/rename_seam_components_comp_xml/..."><diffmk:wrapper diffmk:change="added">"Renaming a Seam component in the components.xml file"</diffmk:wrapper></ulink><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></para>
+ </section>
+
+ </section>
+
+ <section id="renaming_seam_context_vars">
+ <title>Renaming Seam Context Variables in EL</title>
+
+ <para>Renaming a Seam context variables in EL could be executed in <literal moreinfo="none">.java</literal>, <literal moreinfo="none">.xml</literal>, <literal moreinfo="none">.jsp</literal>,
+ <literal moreinfo="none">.xhtml</literal> and <literal moreinfo="none">.properties</literal> files in Seam projects using
+ the context menu command <emphasis><property moreinfo="none">Seam Refactor > Rename Seam Context Variable</property>.</emphasis></para>
- <para><diffmk:wrapper diffmk:change="added">Renaming a Seam context variables in EL could be executed in </diffmk:wrapper><literal diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">.java</diffmk:wrapper></literal><diffmk:wrapper diffmk:change="added">, </diffmk:wrapper><literal diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">.xml</diffmk:wrapper></literal><diffmk:wrapper diffmk:change="added">, </diffmk:wrapper><literal diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">.jsp</diffmk:wrapper></literal><diffmk:wrapper diffmk:change="added">,
- </diffmk:wrapper><literal diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">.xhtml</diffmk:wrapper></literal><diffmk:wrapper diffmk:change="added"> and </diffmk:wrapper><literal diffmk:change="added" moreinfo="none"><diffmk:wrapper diffmk:change="added">.properties</diffmk:wrapper></literal><diffmk:wrapper diffmk:change="added"> files in Seam projects using
- the context menu command </diffmk:wrapper><emphasis diffmk:change="added"><property moreinfo="none"><diffmk:wrapper diffmk:change="changed">Seam Refactor > Rename Seam Context Variable</diffmk:wrapper></property><diffmk:wrapper diffmk:change="added">.</diffmk:wrapper></emphasis></para>
-
<figure float="0">
- <title><diffmk:wrapper diffmk:change="changed">Refactoring Seam Context Variable in .properties File</diffmk:wrapper></title>
+ <title>Refactoring Seam Context Variable in .properties File</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/seam_refactoring/seam_refactor9.png"/>
+ <imagedata fileref="images/seam_refactoring/seam_refactor9.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
<figure float="0">
- <title><diffmk:wrapper diffmk:change="changed">Opening Refactoring wizard in components.xml file</diffmk:wrapper></title>
+ <title>Opening Refactoring wizard in components.xml file</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/seam_refactoring/seam_refactor7.png"/>
+ <imagedata fileref="images/seam_refactoring/seam_refactor7.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
-
+
<figure float="0">
- <title><diffmk:wrapper diffmk:change="changed">Opening Refactoring wizard in .html file</diffmk:wrapper></title>
+ <title>Opening Refactoring wizard in .html file</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/seam_refactoring/seam_refactor8.png"/>
+ <imagedata fileref="images/seam_refactoring/seam_refactor8.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
+
+ <para diffmk:change="added"><diffmk:wrapper diffmk:change="added">For details, see also a set of movies about renaming Seam context variables in EL in different locations:</diffmk:wrapper></para>
+ <itemizedlist diffmk:change="added">
+ <listitem diffmk:change="added">
+ <para diffmk:change="added"><ulink diffmk:change="added" url="http://docs.jboss.org/tools/movies/demos/rename_context_variables_java/re..."><diffmk:wrapper diffmk:change="added">In the Java editor</diffmk:wrapper></ulink></para>
+ </listitem>
+ <listitem diffmk:change="added">
+ <para diffmk:change="added"><ulink diffmk:change="added" url="http://docs.jboss.org/tools/movies/demos/rename_context_variables_propert..."><diffmk:wrapper diffmk:change="added">In the JBoss Tools Properties Editor</diffmk:wrapper></ulink></para>
+ </listitem>
+ <listitem diffmk:change="added">
+ <para diffmk:change="added"><ulink diffmk:change="added" url="http://docs.jboss.org/tools/movies/demos/rename_context_variables_xml/ren..."><diffmk:wrapper diffmk:change="added">In the XML editor</diffmk:wrapper></ulink></para>
+ </listitem>
+ <listitem diffmk:change="added">
+ <para diffmk:change="added"><ulink diffmk:change="added" url="http://docs.jboss.org/tools/movies/demos/rename_context_variables_vpe/ren..."><diffmk:wrapper diffmk:change="added">In the Visual Page Editor</diffmk:wrapper></ulink></para>
+ </listitem>
+ </itemizedlist>
</section>
</chapter>
-<chapter id="crud_database_application" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/crud_database_application.xml" xreflabel="crud_database_application">
+
+
+
+
+<chapter id="adding_seam_support_to_ear_project" role="new" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/adding_seam_support_to_ear_project.xml" xreflabel="adding_seam_support_to _ear_project">
+ <?dbhtml filename="adding_seam_support_to _ear_project.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>EAR</keyword>
+ <keyword>Seam</keyword>
+ <keyword></keyword>
+ <keyword></keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Adding Seam support to EAR project</title>
+ <para>From this chapter you will find out how to add Seam support to EAR project</para>
+ <para>For example you have several WTP projects:</para>
+
+ <itemizedlist>
+ <listitem><para> seamproject-ear (You can create WTP EAR project using New -> Project -> Java EE -> Enterprise Application Project wizard)</para></listitem>
+ <listitem><para> seamproject-ejb (You can create WTP EJB project using New -> Project -> EJB -> EJB Project wizard)</para></listitem>
+ <listitem><para> seamproject-war (You can create WTP WEB project using New -> Project -> Web -> Dynamic Web Project wizard)</para></listitem>
+ </itemizedlist>
+
+ <tip><title>Tip</title>
+ <para>You can add as many EJBs modules as you want just doing the same for each EJB project.</para></tip>
+
+ <figure float="0">
+ <title>WTP Projects</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/adding_seam_support_to_project/wtp_projects.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Make sure EJB and WAR are included in EAR as modules (Properties for seamproject-ear -> Java EE Module Dependencies)</para>
+
+ <figure float="0">
+ <title>Java EE Module Dependencies</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/adding_seam_support_to_project/java_ee_module_dependencies.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Make sure there is jboss-seam.jar in application.xml as well:</para>
+
+ <figure float="0">
+ <title>Java EE Module Dependencies</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/adding_seam_support_to_project/application_xml_with_jboss-seam_jar.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+
+ <para>Then include libs from EAR to EJB Manifest Class-Path (Properties for seamproject-ejb -> Java EE Module Dependencies)</para>
+
+ <figure float="0">
+ <title>Including Libs from EAR to EJB Manifest Class-Path</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/adding_seam_support_to_project/including_libs_from_ear_to_ejb_manifest_class-path.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Include libs from EAR and seamproject-ejb.jar to WAR Manifest Class-Path (Properties for seamproject-war -> Java EE Module Dependencies)</para>
+
+ <figure float="0">
+ <title>Including Libs from EAR and seamproject-ejb.jar to WAR Manifest Class-Path</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/adding_seam_support_to_project/including_libs_from_ear_to_war_manifest_class-path.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>Thus we have set our WTP EAR/EJB/WAR projects and now we are ready to add Seam support to them:</para>
+
+ <para>First you have to add Seam support to WAR project: Properties for seamproject-war -> Seam Settings</para>
+
+
+ <figure float="0">
+ <title>Adding Seam Support to WAR Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/adding_seam_support_to_project/adding_seam_support_to_war_project.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+
+ <para>Set seamproject-war as Main Seam project. All other settings mostly are used by New Seam Entity/Action/Form/Conversation/... Wizards. Thus you can set them as you wish.</para>
+
+ <para>Then you can add Seam support to EJB project: Properties for seamproject-war -> Seam Settings</para>
+
+ <figure float="0">
+ <title>Adding Seam Support to EJB Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/adding_seam_support_to_project/adding_seam_support_to_ejb_project.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>It&s important to set seamproject-war project as main Seam project there.</para>
+ <para>It will allow Seam Tools to use one common Seam model for seamproject-ejb and seamproject-war projects.</para>
+
+ <para>The last step is to clean/build the projects</para>
+
+ <para>That is all. You have added Seam support to your EAR project. </para>
+
+ <figure float="0">
+ <title>Added Seam Support to EAR Project</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/adding_seam_support_to_project/added_seam_support_to_ear_project.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+</chapter>
+
+<chapter id="crud_database_application" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/crud_database_application.xml" xreflabel="crud_database_application">
<?dbhtml filename="crud_database_application.html"?>
<chapterinfo>
<keywordset>
@@ -3516,7 +3711,8 @@
</chapter>
-<chapter id="crud_application_walkthrough" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/crud_application_walkthrough.xml" xreflabel="crud_application_walkthrough">
+
+<chapter id="crud_application_walkthrough" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/crud_application_walkthrough.xml" xreflabel="crud_application_walkthrough">
<?dbhtml filename="crud_application_walkthrough.html"?>
<chapterinfo>
<keywordset>
@@ -3647,7 +3843,7 @@
</chapter>
-<chapter id="testNG" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/seam/docs/reference/en/modules/testng.xml" xreflabel="testNG">
+<chapter id="testNG" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/testng.xml" xreflabel="testNG">
<?dbhtml filename="testNG.html"?>
<chapterinfo>
<keywordset>
@@ -3742,27 +3938,27 @@
</listitem>
</itemizedlist>
- <figure>
+ <figure float="0">
<title>Seam-test Project</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_5.png"/>
+ <imagedata fileref="images/testng/testng_5.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
<itemizedlist>
<listitem>
- <para>Add Seam Action to your project via <emphasis><property>File > New > Seam
+ <para>Add Seam Action to your project via <emphasis><property moreinfo="none">File > New > Seam
Action</property>.</emphasis></para>
</listitem>
</itemizedlist>
- <figure>
+ <figure float="0">
<title>Seam Action Creation</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_6.png"/>
+ <imagedata fileref="images/testng/testng_6.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
@@ -3774,28 +3970,28 @@
</listitem>
</itemizedlist>
- <figure>
+ <figure float="0">
<title>New Seam Action Wizard</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_7.png"/>
+ <imagedata fileref="images/testng/testng_7.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
<itemizedlist>
<listitem>
- <para>When Action is created you will see <property>actionPage.xhtml</property> in
- Package Explorer view. <property>ActionBean.java</property> will be
+ <para>When Action is created you will see <property moreinfo="none">actionPage.xhtml</property> in
+ Package Explorer view. <property moreinfo="none">ActionBean.java</property> will be
automatically opened in Java Editor.</para>
</listitem>
</itemizedlist>
- <figure>
+ <figure float="0">
<title>Created Action</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_8.png" scale="70"/>
+ <imagedata fileref="images/testng/testng_8.png" scale="70"></imagedata>
</imageobject>
</mediaobject>
</figure>
@@ -3803,28 +3999,28 @@
<itemizedlist>
<listitem>
- <para>Select <property>ActionLocalTest.xml</property> in Seam-test project and run
- the test with right click <emphasis><property>Run As > TestNG
+ <para>Select <property moreinfo="none">ActionLocalTest.xml</property> in Seam-test project and run
+ the test with right click <emphasis><property moreinfo="none">Run As > TestNG
Suite</property>.</emphasis></para>
</listitem>
</itemizedlist>
<tip><para>OpenOn is available in testNG XML files opened in JBoss XML Editor</para></tip>
- <figure>
+ <figure float="0">
<title>Running TestNG</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_9.png"/>
+ <imagedata fileref="images/testng/testng_9.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
<para>The test process will start and its output will be written in Console View.</para>
- <figure>
+ <figure float="0">
<title>Test is Finished</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_10.png" scale="70"/>
+ <imagedata fileref="images/testng/testng_10.png" scale="70"></imagedata>
</imageobject>
</mediaobject>
</figure>
@@ -3833,20 +4029,20 @@
<itemizedlist>
<listitem>
<para>After running TestNG you will have the test results in <emphasis>
- <property>test-output</property>
+ <property moreinfo="none">test-output</property>
</emphasis> folder in Seam-test project (press F5 to refresh the Package
- Explorer view). Open <property>index.html</property> file with Web Browser or
+ Explorer view). Open <property moreinfo="none">index.html</property> file with Web Browser or
simply use the TestNG view.</para>
</listitem>
</itemizedlist>
<para>The below view shows a successful run of the test.</para>
- <figure>
+ <figure float="0">
<title>Viewing the Test Results</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_11.png" scale="70"/>
+ <imagedata fileref="images/testng/testng_11.png" scale="70"></imagedata>
</imageobject>
</mediaobject>
</figure>
@@ -3854,24 +4050,24 @@
<para>You can see the test results in Web Browser.</para>
- <figure>
+ <figure float="0">
<title>Test Results in Browser</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_12.png" scale="70"/>
+ <imagedata fileref="images/testng/testng_12.png" scale="70"></imagedata>
</imageobject>
</mediaobject>
</figure>
<para>After clicking on <emphasis>
- <property>ActionLocal Tests</property>
+ <property moreinfo="none">ActionLocal Tests</property>
</emphasis> link you will see the Results for ActionLocal Tests.</para>
- <figure>
+ <figure float="0">
<title>Test Information</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_13.png" scale="70"/>
+ <imagedata fileref="images/testng/testng_13.png" scale="70"></imagedata>
</imageobject>
</mediaobject>
</figure>
@@ -3879,11 +4075,11 @@
<para>Select a result on the left-hand pane and its details will be displayed on the
right-hand one.</para>
- <figure>
+ <figure float="0">
<title>ActionLocal Test Details</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/testng/testng_14.png"/>
+ <imagedata fileref="images/testng/testng_14.png"></imagedata>
</imageobject>
</mediaobject>
</figure>
@@ -3891,80 +4087,83 @@
<para>Thus with Seam tooling you can easily take advantage of TestNG framework. As you can
see, it generates its own TestNG project as a separate module within which you can
easily monitor the tests execution and their output.</para>
-
+
</section>
</chapter>
-<chapter id="seam_faq" xreflabel="seam_faq">
+
+
+<chapter id="seam_faq" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/seam/docs/reference/en/modules/seam_faq.xml" xreflabel="seam_faq">
<?dbhtml filename="vwt_faq.html"?>
<title>FAQ</title>
-
+
<section id="seam_question_1">
<title>How to get Code Assist for Seam specific resources in an externally generated
project?</title>
-
+
<para>To get Code Assist for Seam specific resources in an externally generated project, you
should enable Seam features in Project Preferences. Right click an imported project and
navigate <emphasis>
- <property>Properties > Seam Settings</property>.</emphasis> Check <emphasis>
- <property>Seam support</property>
+ <property moreinfo="none">Properties > Seam Settings</property>.</emphasis> Check <emphasis>
+ <property moreinfo="none">Seam support</property>
</emphasis> box to enable all available <link linkend="project_pref">Seam
Settings</link>.</para>
</section>
-
+
<section id="seam_question_2">
<title>How to import an example Seam project from jboss-eap directory?</title>
-
+
<para>To import an example Seam project from <emphasis>
- <property>jboss-eap</property>
+ <property moreinfo="none">jboss-eap</property>
</emphasis> into your working directory, you should perform the following steps:</para>
-
+
<itemizedlist>
<listitem>
<para>Go to <emphasis>
- <property>New > Other > Java Project from Existing Buildfile</property>
+ <property moreinfo="none">New > Other > Java Project from Existing Buildfile</property>
</emphasis></para>
</listitem>
-
+
<listitem>
<para>Point to the <emphasis>
- <property>build.xml</property>
+ <property moreinfo="none">build.xml</property>
</emphasis> of any chosen project by pressing <emphasis>
- <property>Browse</property>
+ <property moreinfo="none">Browse</property>
</emphasis> button</para>
</listitem>
-
+
<listitem>
<para>Hit <emphasis>
- <property>Finish</property>
+ <property moreinfo="none">Finish</property>
</emphasis> to open the project</para>
</listitem>
</itemizedlist>
-
+
<para>As these seam examples are non WTP projects, next you should enable Seam support for
them. To do that, right click the project and go to <emphasis>
- <property>Properties > Seam Settings</property>.</emphasis></para>
+ <property moreinfo="none">Properties > Seam Settings</property>.</emphasis></para>
</section>
-
+
<section id="seam_question_3">
<title>How to change the deploy folders for Seam source code from src/hot and src/main?</title>
-
+
<para>You should right-click the project, select <emphasis>
- <property>Properties > Java Build Path</property>,</emphasis> then switch to the <emphasis>
- <property>Source tab</property>,</emphasis> select the output folder for <emphasis>
- <property>src/hot</property></emphasis> (<emphasis>
- <property>src/main</property>)</emphasis> and click <emphasis>
- <property>Edit</property></emphasis> to change their output location.</para>
-
+ <property moreinfo="none">Properties > Java Build Path</property>,</emphasis> then switch to the <emphasis>
+ <property moreinfo="none">Source tab</property>,</emphasis> select the output folder for <emphasis>
+ <property moreinfo="none">src/hot</property></emphasis> (<emphasis>
+ <property moreinfo="none">src/main</property>)</emphasis> and click <emphasis>
+ <property moreinfo="none">Edit</property></emphasis> to change their output location.</para>
+
<para>In conclusion, the main goal of this document is to get you know with a full featureset
- that <property>JBoss Tools</property> provides to support Seam development. Thus if you have
- some questions, comments or suggestions on the topic, please fell free to ask in the <ulink
- url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss
+ that <property moreinfo="none">JBoss Tools</property> provides to support Seam development. Thus if you have
+ some questions, comments or suggestions on the topic, please fell free to ask in the
+ <ulink url="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss
Tools Forum</ulink>. You can also influence on how you want to see JBoss Tools docs in
- future leaving your vote on the article <ulink
- url="http://wiki.jboss.org/wiki/JBossToolsDocsFuture"
- >Overview of the improvements required by JBossTools/JBDS Docs users</ulink>. </para>
-
+ future leaving your vote on the article <ulink url="http://wiki.jboss.org/wiki/JBossToolsDocsFuture">Overview of the improvements required by JBossTools/JBDS Docs users</ulink>. </para>
+
<para>A set of movies on Seam tooling is available on <ulink url="http://docs.jboss.org/tools/movies">Seam movies page</ulink>.</para>
</section>
</chapter>
-</book>
\ No newline at end of file
+
+ <!-- TODO: drools used in this section is not available for eclipse .3.3 &business_application; -->
+
+</book>
14 years, 4 months
JBoss Tools SVN: r20335 - trunk/jsf/docs/jsf_tools_tutorial/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2010-02-17 14:42:47 -0500 (Wed, 17 Feb 2010)
New Revision: 20335
Modified:
trunk/jsf/docs/jsf_tools_tutorial/en/master.xml
trunk/jsf/docs/jsf_tools_tutorial/en/master_output.xml
Log:
<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:9pt;font-family:Sans Serif">
<p>https://jira.jboss.org/jira/browse/JBDS-1104 - Updated versions,corrected master_output file</p>
</body></html>
Modified: trunk/jsf/docs/jsf_tools_tutorial/en/master.xml
===================================================================
--- trunk/jsf/docs/jsf_tools_tutorial/en/master.xml 2010-02-17 19:34:54 UTC (rev 20334)
+++ trunk/jsf/docs/jsf_tools_tutorial/en/master.xml 2010-02-17 19:42:47 UTC (rev 20335)
@@ -44,22 +44,22 @@
<author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina(a)exadel.com</email></author>
<copyright>
- <year>2007</year>
+ <year>2007</year>
<year>2008</year>
- <year>2009</year>
+ <year>2009</year>
<year>2010</year>
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 3.1.0.CR1
+ Version: 3.1.0.CR2
</releaseinfo>
<abstract>
<title/>
<para>
- <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/struts_tools_tutoria...">PDF version</ulink>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jsf_tools_tutorial/p...">PDF version</ulink>
</para>
</abstract>
Modified: trunk/jsf/docs/jsf_tools_tutorial/en/master_output.xml
===================================================================
--- trunk/jsf/docs/jsf_tools_tutorial/en/master_output.xml 2010-02-17 19:34:54 UTC (rev 20334)
+++ trunk/jsf/docs/jsf_tools_tutorial/en/master_output.xml 2010-02-17 19:42:47 UTC (rev 20335)
@@ -23,847 +23,849 @@
<!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>JSF Tools Tutorial</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/struts_tools_tutoria...">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_tutorial/en/modules/introduction.xml" xreflabel="introduction">
- <?dbhtml filename="introduction.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>Eclipse</keyword>
- <keyword>Java</keyword>
- <keyword>JBoss</keyword>
- </keywordset>
- </chapterinfo>
- <title>Introduction</title>
- <para>The following chapters describe how to deal with classic/old style of JSF development. We
- recommend users to use <ulink url="../../seam/html_single/index.html">JBoss
- Seam</ulink> to simplify development, but until then you can read about classical JSF
- usage here.</para>
-
- <para>Thus, in this document we are going to show you how to create a simple <property moreinfo="none">JSF application
- </property>using <property moreinfo="none">JBoss Tools</property> plugins for Eclipse. The completed
- application will ask a user to enter a name and click a button. The resulting new page
- will display the familiar message, "Hello <name>!" This
- tutorial will show you how to create and run such an application from the beginning along the
- way demonstrating some of the powerful features of <property moreinfo="none">JBoss Tools</property>.</para>
- <section><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="2">
-
- <colspec align="left" colnum="1" colwidth="2*"></colspec>
- <colspec colnum="2" colwidth="4*"></colspec>
-
-
- <thead>
- <row>
- <entry>Feature</entry>
- <entry>Benefit</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>
-
- </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>
-
- </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>
-
- </row>
-
- <row>
- <entry>Support for Managed Beans</entry>
- <entry>Adding new managed beans, generating code for attributes, properties
- and getter/setter methods.</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>
-
- </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>
-
- </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_application" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_tutorial/en/modules/jsf_application.xml" xreflabel="jsf_application">
- <?dbhtml filename="jsf_application.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>JSF application</keyword>
- <keyword>Java</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Creating a Simple JSF Application</title>
-
- <para>Firstly, we assume that you have already launched Eclipse with <property moreinfo="none">JBoss Tools</property>
- plug-ins installed and also that the <property moreinfo="none">Web Development perspective</property> is the current
- one. (If not, make it active by selecting <emphasis>
- <property moreinfo="none">Window > Open Perspective > Web Development</property>
- </emphasis> from the menu bar or by selecting <emphasis>
- <property moreinfo="none">Window > Open Perspective > Other...</property>
- </emphasis> from the menu bar and then selecting <emphasis>
- <property moreinfo="none">Web Development</property>
- </emphasis> from the Select Perspective dialog box.)</para>
-
- <section id="setting_up_the_project">
- <?dbhtml filename="SettingUpTheProject.html"?>
- <title>Setting Up the Project</title>
- <para>Now we are going to create a new project for the application.</para>
- <itemizedlist>
- <listitem>
- <para>For that go to the menu bar and select <emphasis>
- <property moreinfo="none">File > New > Project...</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">JBoss Tools Web > JSF > JSF Project</property>
- </emphasis> in the New Project dialog box</para>
- </listitem>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Next</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Enter "jsfHello" as the project name.</para>
- </listitem>
- <listitem>
- <para>Leave everything else as is, and click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
-
- </itemizedlist>
- </section>
-
- <section id="TheJSFApplicationConfigurationFile">
- <?dbhtml filename="TheJSFApplicationConfigurationFile.html"?>
- <title>JSF Configuration File</title>
- <para>A jsfHello node should appear in the upper-left Package Explorer view.</para>
- <figure float="0">
- <title>Package Explorer View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_1.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Click the plus sign next to <emphasis>
- <property moreinfo="none">jsfHello</property>
- </emphasis> to reveal the child nodes</para>
- </listitem>
- <listitem>
- <para>Click the plus sign next to <emphasis>
- <property moreinfo="none">WebContent</property>
- </emphasis> under jsfHello</para>
- </listitem>
- <listitem>
- <para>Click the plus sign next to <emphasis>
- <property moreinfo="none">WEB-INF</property>
- </emphasis> under WebContent</para>
- </listitem>
-
- <listitem>
- <para>Then double-click on the <property moreinfo="none">faces-config.xml</property> node to display
- the JSF application configuration file editor</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>Configuration File Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_2.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
-
- </section>
-</chapter>
-
-
-<chapter id="adding_navigation" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_tutorial/en/modules/adding_navigation.xml" xreflabel="adding_navigation">
- <?dbhtml filename="adding_navigation.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>JSF application</keyword>
- <keyword>Java</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Adding Navigation to the Application</title>
-
- <para>In our simple application, the flow is defined as a single navigation rule connecting
- two views (presentation files). At this point, we will create the placeholders for the
- two JSP presentation files and then the navigation rule to connect them as views. Later,
- we will complete the coding for the JSP presentation files. We can do all of this in the
- Diagram mode of the configuration file editor.</para>
- <section id="AddingTwoViewsJSPPages">
- <?dbhtml filename="AddingTwoViewsJSPPages.html"?>
- <title>Adding Two Views (JSP Pages)</title>
- <itemizedlist>
- <listitem>
- <para>Right-click anywhere on the diagram and select <emphasis>
- <property moreinfo="none">New View...</property>
- </emphasis> from the pop-up menu</para>
- </listitem>
- <listitem>
- <para>In the dialog box, type <emphasis>
- <property moreinfo="none">pages/inputname</property>
- </emphasis> as the value for From-view-id</para>
- </listitem>
- <listitem>
- <para>Leave everything else as is</para>
- </listitem>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- <para>If you look in the Package Explorer view you should see a <emphasis>
- <property moreinfo="none">pages</property>
- </emphasis> folder under WebContent. Opening it will reveal the JSP file you
- just created</para>
- </listitem>
- <listitem>
- <para>Back on the diagram, right-click anywhere and select <emphasis>
- <property moreinfo="none">New View...</property>
- </emphasis> from the pop-up menu</para>
- </listitem>
- <listitem>
- <para>In the dialog box, type <emphasis>
- <property moreinfo="none">pages/greeting</property>
- </emphasis> as the value for From-view-id</para>
- </listitem>
- <listitem>
- <para>Leave everything else as is</para>
- </listitem>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
-
- </section>
- <section id="CreatingTheTransitionNavigationRule">
- <?dbhtml filename="CreatingTheTransitionNavigationRule.html"?>
- <title>Creating the Transition (Navigation Rule)</title>
- <itemizedlist>
- <listitem>
- <para>In the diagram, select the connection icon third from the top along
- the upper left side of the diagram (<inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_3.png"></imagedata>
- </imageobject>
- </inlinemediaobject>) to get an arrow cursor with a two-pronged plug at the arrow's bottom.</para>
- </listitem>
- </itemizedlist>
-
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">pages/inputname</property>
- </emphasis> page icon and then click on the <emphasis>
- <property moreinfo="none">pages/greeting</property>
- </emphasis> page icon</para>
- </listitem>
-
- </itemizedlist>
- <para>A transition should appear between the two icons.</para>
- <figure float="0">
- <title>Transition Between Two Icons</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_4.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">File > Save</property>
- </emphasis> from the menu bar</para>
- </listitem>
- </itemizedlist>
- </section>
-
-</chapter>
-
-<chapter id="adding_managed_bean" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_tutorial/en/modules/adding_managed_bean.xml" xreflabel="adding_managed_bean">
- <?dbhtml filename="adding_managed_bean.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Developer Studio</keyword>
- <keyword>JSF application</keyword>
- <keyword>Java</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Adding a Managed Bean to the Application</title>
- <para>To store data in the application, we will use a managed bean.</para>
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">Tree</property>
- </emphasis> tab at the bottom of the editing window</para>
- </listitem>
- <listitem>
- <para>Select the <emphasis>
- <property moreinfo="none">Managed Beans</property>
- </emphasis> node and then click the <emphasis>
- <property moreinfo="none">Add...</property>
- </emphasis> button displayed along the right side of the editor window</para>
- </listitem>
- <listitem>
- <para>Type in <emphasis>
- <property moreinfo="none">jsfHello.PersonBean</property>
- </emphasis> for Class and <emphasis>
- <property moreinfo="none">personBean</property>
- </emphasis> for Name. Leave Scope as is and Generate Source Code as is
- (checked)</para>
- </listitem>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>personBean will now be selected and three sections of information: <emphasis>
- <property moreinfo="none">Managed Bean</property>
- </emphasis>, <emphasis>
- <property moreinfo="none">Properties</property>
- </emphasis>, and <emphasis>
- <property moreinfo="none">Advanced</property>
- </emphasis>, will be displayed about it. Under the Properties section, click the <emphasis>
- <property moreinfo="none">Add...</property>
- </emphasis> button</para>
- </listitem>
- <listitem>
- <para>Type in <emphasis>
- <property moreinfo="none">name</property>
- </emphasis> for Property-Name. Leave everything else as is. (When Property-
- Class is not filled in, String is the assumed type)</para>
- </listitem>
- <listitem>
- <para>Click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>Select the <emphasis>
- <property moreinfo="none">personBean</property>
- </emphasis> node in the tree</para>
- </listitem>
- </itemizedlist>
- <para>You should see this now:</para>
- <figure float="0">
- <title>Tree View in Config Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_5.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">File > Save</property>
- </emphasis> from the menu bar</para>
- </listitem>
- </itemizedlist>
- <para>You have now registered the <emphasis>
- <property moreinfo="none">managed bean</property>
- </emphasis> and created a <emphasis>
- <property moreinfo="none">stub-coded class</property>
- </emphasis> file for it.</para>
-
- </chapter>
-
-<chapter id="jsp_view_files" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_tutorial/en/modules/jsp_view_files.xml" xreflabel="jsp_view_files">
- <?dbhtml filename="jsp_view_files.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>JSF application</keyword>
- <keyword>Java</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Editing the JSP View Files</title>
-
- <para>Now we will finish editing the JSP files for our two "views" using
- JSP Visual Page.</para>
- <section id="Inputname.jsp">
- <title>inputname.jsp</title>
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">Diagram</property>
- </emphasis> tab for the configuration file editor</para>
- </listitem>
- <listitem>
- <para>Open the editor for this first JSP file by double-clicking on the <emphasis>
- <property moreinfo="none">/pages/inputname. jsp</property>
- </emphasis> icon</para>
- </listitem>
- </itemizedlist>
-
- <para>The Visual Page Editor will open in a screen split between source code along the
- top and a WYSIWIG view along the bottom:</para>
- <figure float="0">
- <title>Visual Page Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_6.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <para>Some JSF code is already in the file, because we have chosen a template to create
- a page.</para>
- <itemizedlist>
- <listitem>
- <para>Select the <emphasis>
- <property moreinfo="none">Visual</property>
- </emphasis> tab, so we can work with the editor completely in its WYSIWYG
- mode</para>
- </listitem>
- <listitem>
- <para>To the right of the editor, in the JBoss Tools Palette, expand the <emphasis>
- <property moreinfo="none">JSF HTML</property>
- </emphasis> palette folder by selecting it</para>
- </listitem>
- </itemizedlist>
- <figure float="0">
- <title>JBoss Tools Palette</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_7.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Click on <emphasis>
- <property moreinfo="none">form</property>
- </emphasis> within this folder, drag the cursor over to the editor, and drop
- it inside the red box in the editor</para>
- </listitem>
- <listitem>
- <para>Another red box will appear inside the first red box</para>
- </listitem>
- <listitem>
- <para>Right-click on the innermost box and select <emphasis role="bold">
- <property moreinfo="none"><h:form></property>
- </emphasis> Attributes from the menu</para>
- </listitem>
- <listitem>
- <para>In the value field next to id, type <emphasis>
- <property moreinfo="none">greeting</property>
- </emphasis> and click on the <emphasis>
- <property moreinfo="none">Close</property>
- </emphasis> button</para>
- </listitem>
- <listitem>
- <para>Type "Please enter name:" inside the boxes</para>
- </listitem>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">inputText</property>
- </emphasis> within the JSF HTML palette folder and drag it into the
- innermost box in the editor after "Please enter
- name:"</para>
- </listitem>
- <listitem>
- <para>In the attributes dialog, click in the <emphasis>
- <property moreinfo="none">value</property>
- </emphasis> field next to the value attribute and click on the <property moreinfo="none">...
- </property>button</para>
- </listitem>
- <listitem>
- <para>Then, select the <emphasis>
- <property moreinfo="none">Managed Beans > personBean > name</property>
- </emphasis> node and click on the <emphasis>
- <property moreinfo="none">Ok</property>
- </emphasis> button</para>
- </listitem>
- <listitem>
- <para>Back in the attributes dialog, select the <emphasis>
- <property moreinfo="none">Advanced</property>
- </emphasis> tab, type in <emphasis>
- <property moreinfo="none">name</property>
- </emphasis> as the value for the <emphasis role="italic">
- <property moreinfo="none">"id"</property>
- </emphasis> attribute, and then click on the <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button</para>
- </listitem>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">commandButton</property>
- </emphasis> within the JSF HTML palette folder and drag it into the
- innermost box in the editor after the input box</para>
- </listitem>
- <listitem>
- <para>In the attributes dialog, click in the value field next to the <emphasis role="italic">
- <property moreinfo="none">"action"</property>
- </emphasis> attribute and click on the <property moreinfo="none">...
- </property>button</para>
- </listitem>
- <listitem>
- <para>Then, select the <emphasis>
- <property moreinfo="none">View Actions > greeting</property>
- </emphasis> node and click on the <emphasis>
- <property moreinfo="none">OK</property>
- </emphasis> button</para>
- </listitem>
- <listitem>
- <para>Back in the attributes dialog box, type in "Say Hello"
- as the value for the value attribute ("Say Hello") and
- then click on the <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button</para>
- </listitem>
- </itemizedlist>
- <para>The source coding should be something like this now:</para>
- <programlisting format="linespecific" role="XML"><![CDATA[<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
-<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
-<html>
-<head>
-<title></title>
-</head>
-<body>
-<f:view>
-<h:form id="greeting">
-Please enter name:
-<h:inputText id="name" value="#{personBean.name}"/>
-<h:commandButton value=" Say Hello " action="greeting"/>
-</h:form>
-</f:view>
-</body>
-</html>
-]]></programlisting>
- <para>The editor should look like this:</para>
- <figure float="0">
- <title>Visual Page Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_8.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Save the file by selecting <emphasis>
- <property moreinfo="none">File > Save</property>
- </emphasis> from the menu bar</para>
- </listitem>
- </itemizedlist>
- </section>
- <section id="Greeting.jsp">
- <title>greeting.jsp</title>
- <itemizedlist>
- <listitem>
- <para>Click on the <emphasis>
- <property moreinfo="none">faces-config.xml</property>
- </emphasis> tab to bring the diagram back</para>
- </listitem>
- <listitem>
- <para>Open the editor for the second file by double-clicking on the <emphasis>
- <property moreinfo="none">/pages/greeting.jsp</property>
- </emphasis> icon</para>
- </listitem>
- <listitem>
- <para>Select the <emphasis>
- <property moreinfo="none">Visual</property>
- </emphasis> tab, so we can work with the editor completely in its WYSIWYG
- mode</para>
- </listitem>
- <listitem>
- <para>Type "Hello "(note space after Hello) into the
- box</para>
- </listitem>
- <listitem>
- <para>Select <emphasis>
- <property moreinfo="none">outputText</property>
- </emphasis> within the JSF HTML palette folder and drag it into the
- innermost box in the editor after "Hello"</para>
- </listitem>
- <listitem>
- <para>In the attributes dialog, click in <emphasis>
- <property moreinfo="none">value</property>
- </emphasis> field next to the value attribute and click on the
- <property moreinfo="none">...</property> (Browse) button</para>
- </listitem>
- <listitem>
- <para>Then, select the <emphasis>
- <property moreinfo="none">Managed Beans > personBean > name</property>
- </emphasis> node, click on the <emphasis>
- <property moreinfo="none">Ok</property>
- </emphasis> button, and then click on the <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis> button</para>
- </listitem>
- <listitem>
- <para>Right after the output field, type an <emphasis>
- <property moreinfo="none">exclamation point</property>
- </emphasis> (<emphasis>
- <property moreinfo="none">!</property>
- </emphasis>)</para>
- </listitem>
- </itemizedlist>
- <para>The source coding should be something like this now:</para>
- <programlisting format="linespecific" role="XML"><![CDATA[<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
-<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
-<html>
-<head>
-<title></title>
-</head>
-<body>
-<f:view>
-Hello <h:outputText value="#{personBean.name}"/>!
-</f:view>
-</body>
-</html>
-]]></programlisting>
- <itemizedlist>
- <listitem>
- <para>Save the file</para>
- </listitem>
- </itemizedlist>
- </section>
- </chapter>
-
-<chapter id="start_page" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_tutorial/en/modules/start_page.xml" xreflabel="start_page">
- <?dbhtml filename="start_page.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>JSF application</keyword>
- <keyword>Java</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Creating the Start Page</title>
- <para>You also need to create a start page as an entry point into the application.</para>
- <itemizedlist>
- <listitem>
- <para>In the Package Explorer view to the left, right-click <emphasis>
- <property moreinfo="none">jsfHello > WebContent</property>
- </emphasis> and select <emphasis>
- <property moreinfo="none">New > JSP File</property>
- </emphasis></para>
- </listitem>
- <listitem>
- <para>For Name type in <emphasis>
- <property moreinfo="none">index</property>
- </emphasis>, for Template select <emphasis>
- <property moreinfo="none">JSPRedirect</property>
- </emphasis> and click <emphasis>
- <property moreinfo="none">Finish</property>
- </emphasis></para>
- </listitem>
- </itemizedlist>
- <para>A JSP editor will open up on the newly created file.</para>
-
- <itemizedlist>
- <listitem>
- <para>In the Source part of the split screen, type <emphasis>
- <property moreinfo="none">/pages/inputname.jsf</property>
- </emphasis> in between the quotes for the page attribute</para>
- </listitem>
- </itemizedlist>
- <para>The source coding should look like this now:</para>
- <programlisting format="linespecific" role="XML"><![CDATA[<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head></head>
-<body>
-<jsp:forward page="/pages/inputname.jsf" />
-</body>
-</html>
-]]></programlisting>
-
- <para>Note the <emphasis>
- <property moreinfo="none">.jsf</property>
- </emphasis> extension for the file name. This is a mapping defined in the web.xml file
- for the project for invoking <property moreinfo="none">JavaServer Faces</property> when you run the
- application.</para>
- <itemizedlist>
- <listitem>
- <para>Select<emphasis>
- <property moreinfo="none"> File > Save</property>
- </emphasis> from the menu bar</para>
- </listitem>
- </itemizedlist>
- </chapter>
-
-<chapter id="running_application" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_tutorial/en/modules/running_application.xml" xreflabel="running_application">
- <?dbhtml filename="running_application.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>JSF application</keyword>
- <keyword>Java</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Running the Application</title>
- <para>Everything is now ready for running our application by using the JBoss engine. For
- controlling JBoss server there is JBoss Server view:</para>
- <figure float="0">
- <title>JBoss Server View</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_9.png"></imagedata>
- </imageobject>
- </mediaobject>
- </figure>
- <itemizedlist>
- <listitem>
- <para>Start up JBoss by clicking on the icon in JBoss Server view. (If JBoss is
- already running, stop it by clicking on the red icon and then start it again.
- Remember, the JSF run-time requires restarting the servlet engine when any
- changes have been made.) After the messages in the Console tabbed view stop
- scrolling, JBoss is available</para>
- </listitem>
-
- <listitem>
- <para>Click the Run icon(<inlinemediaobject>
- <imageobject>
- <imagedata fileref="images/jsf_application/jsf_application_10.png"></imagedata>
- </imageobject>
- </inlinemediaobject>) or right click your project folder and select <emphasis>
- <property moreinfo="none">Run As > Run on Server</property>
- </emphasis>:</para>
- </listitem>
- </itemizedlist>
-
- <para>This is the equivalent of launching the browser and typing <emphasis>
- <property moreinfo="none">http://localhost:8080/jsfHello</property>
- </emphasis> into your browser. Our <property moreinfo="none">JSF application</property> should now
- appear.</para>
- </chapter>
-
-<chapter id="relevant_resources" xml:base="file:///home/ochikvina/WORK/for_compare/jbosstools-3.1.0.CR1/jsf/docs/jsf_tools_tutorial/en/modules/relevant_resources.xml" xreflabel="relevant_resources">
- <?dbhtml filename="relevant_resources.html"?>
- <chapterinfo>
- <keywordset>
- <keyword>JBoss Tools</keyword>
- <keyword>JSF application</keyword>
- <keyword>Java</keyword>
- </keywordset>
- </chapterinfo>
-
- <title>Other Relevant Resources on the topic</title>
- <para>JSF on Sun: <ulink url="http://java.sun.com/javaee/javaserverfaces/">JavaServer Faces
- Technology</ulink></para>
- <para>Core JSF: <ulink url="http://www.horstmann.com/corejsf/">Core JavaServer Faces</ulink></para>
- <para>API: <ulink url="http://java.sun.com/javaee/javaserverfaces/1.1/docs/api/index.html">JSF
- API</ulink></para>
- <para>JSF Tags: <ulink url="http://www.horstmann.com/corejsf/jsf-tags.html">JSF Core
- Tags</ulink></para>
- <para>HTML Tags Reference: <ulink url="http://www.exadel.com/tutorial/jsf/jsftags-guide.html">JSF HTML Tags Reference</ulink></para>
- <para>JSF Central: <ulink url="http://www.jsfcentral.com/">JSF Central - Your JavaServer Faces
- Community</ulink></para>
- <para>FAQ: <ulink url="http://wiki.java.net/bin/view/Projects/JavaServerFacesSpecFaq">JSF
- FAQ</ulink></para>
- <para>Download: <ulink url="http://java.sun.com/javaee/javaserverfaces/download.html">JavaServer
- Faces Technology - Download</ulink></para>
-
- <para>In summary, with this tutorial you should now know how to organize JSF sample application
- using the wizards provided by <property moreinfo="none">JBoss Tools</property>, configure its stuff and
- finally run it on the <property moreinfo="none">JBoss Server</property>.</para>
-
- <para>Find out more features on JSF tooling in our <ulink url="../../jsf_tools_ref_guide/html_single/index.html">JSF Tools
- Reference Guide</ulink>. If you have questions and 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 Tutorial</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>
+
+ <copyright>
+ <year>2007</year>
+ <year><diffmk:wrapper diffmk:change="added">2008</diffmk:wrapper></year>
+ <year diffmk:change="added">2009</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2010</diffmk:wrapper></year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+
+ <releaseinfo><diffmk:wrapper diffmk:change="changed">
+ Version: 3.1.0.CR2
+ </diffmk:wrapper></releaseinfo>
+
+
+<abstract>
+ <title></title>
+ <para>
+ <ulink url="http://download.jboss.org/jbosstools/nightly-docs/en/jsf_tools_tutorial/p...">PDF version</ulink>
+ </para>
+</abstract>
+
+
+ </bookinfo>
+
+ <toc></toc>
+
+
+
+<chapter id="introduction" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/jsf/docs/jsf_tools_tutorial/en/modules/introduction.xml" xreflabel="introduction">
+ <?dbhtml filename="introduction.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>Eclipse</keyword>
+ <keyword>Java</keyword>
+ <keyword>JBoss</keyword>
+ </keywordset>
+ </chapterinfo>
+ <title>Introduction</title>
+ <para>The following chapters describe how to deal with classic/old style of JSF development. We
+ recommend users to use <ulink url="../../seam/html_single/index.html">JBoss
+ Seam</ulink> to simplify development, but until then you can read about classical JSF
+ usage here.</para>
+
+ <para>Thus, in this document we are going to show you how to create a simple <property moreinfo="none">JSF application
+ </property>using <property moreinfo="none">JBoss Tools</property> plugins for Eclipse. The completed
+ application will ask a user to enter a name and click a button. The resulting new page
+ will display the familiar message, "Hello <name>!" This
+ tutorial will show you how to create and run such an application from the beginning along the
+ way demonstrating some of the powerful features of <property moreinfo="none">JBoss Tools</property>.</para>
+ <section><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="2">
+
+ <colspec align="left" colnum="1" colwidth="2*"></colspec>
+ <colspec colnum="2" colwidth="4*"></colspec>
+
+
+ <thead>
+ <row>
+ <entry>Feature</entry>
+ <entry>Benefit</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>
+
+ </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>
+
+ </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>
+
+ </row>
+
+ <row>
+ <entry>Support for Managed Beans</entry>
+ <entry>Adding new managed beans, generating code for attributes, properties
+ and getter/setter methods.</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>
+
+ </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>
+
+ </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_application" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/jsf/docs/jsf_tools_tutorial/en/modules/jsf_application.xml" xreflabel="jsf_application">
+ <?dbhtml filename="jsf_application.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>JSF application</keyword>
+ <keyword>Java</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Creating a Simple JSF Application</title>
+
+ <para>Firstly, we assume that you have already launched Eclipse with <property moreinfo="none">JBoss Tools</property>
+ plug-ins installed and also that the <property moreinfo="none">Web Development perspective</property> is the current
+ one. (If not, make it active by selecting <emphasis>
+ <property moreinfo="none">Window > Open Perspective > Web Development</property>
+ </emphasis> from the menu bar or by selecting <emphasis>
+ <property moreinfo="none">Window > Open Perspective > Other...</property>
+ </emphasis> from the menu bar and then selecting <emphasis>
+ <property moreinfo="none">Web Development</property>
+ </emphasis> from the Select Perspective dialog box.)</para>
+
+ <section id="setting_up_the_project">
+ <?dbhtml filename="SettingUpTheProject.html"?>
+ <title>Setting Up the Project</title>
+ <para>Now we are going to create a new project for the application.</para>
+ <itemizedlist>
+ <listitem>
+ <para>For that go to the menu bar and select <emphasis>
+ <property moreinfo="none">File > New > Project...</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">JBoss Tools Web > JSF > JSF Project</property>
+ </emphasis> in the New Project dialog box</para>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Next</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Enter "jsfHello" as the project name.</para>
+ </listitem>
+ <listitem>
+ <para>Leave everything else as is, and click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+
+ </itemizedlist>
+ </section>
+
+ <section id="TheJSFApplicationConfigurationFile">
+ <?dbhtml filename="TheJSFApplicationConfigurationFile.html"?>
+ <title>JSF Configuration File</title>
+ <para>A jsfHello node should appear in the upper-left Package Explorer view.</para>
+ <figure float="0">
+ <title>Package Explorer View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_1.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Click the plus sign next to <emphasis>
+ <property moreinfo="none">jsfHello</property>
+ </emphasis> to reveal the child nodes</para>
+ </listitem>
+ <listitem>
+ <para>Click the plus sign next to <emphasis>
+ <property moreinfo="none">WebContent</property>
+ </emphasis> under jsfHello</para>
+ </listitem>
+ <listitem>
+ <para>Click the plus sign next to <emphasis>
+ <property moreinfo="none">WEB-INF</property>
+ </emphasis> under WebContent</para>
+ </listitem>
+
+ <listitem>
+ <para>Then double-click on the <property moreinfo="none">faces-config.xml</property> node to display
+ the JSF application configuration file editor</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>Configuration File Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_2.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ </section>
+</chapter>
+
+
+<chapter id="adding_navigation" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/jsf/docs/jsf_tools_tutorial/en/modules/adding_navigation.xml" xreflabel="adding_navigation">
+ <?dbhtml filename="adding_navigation.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>JSF application</keyword>
+ <keyword>Java</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Adding Navigation to the Application</title>
+
+ <para>In our simple application, the flow is defined as a single navigation rule connecting
+ two views (presentation files). At this point, we will create the placeholders for the
+ two JSP presentation files and then the navigation rule to connect them as views. Later,
+ we will complete the coding for the JSP presentation files. We can do all of this in the
+ Diagram mode of the configuration file editor.</para>
+ <section id="AddingTwoViewsJSPPages">
+ <?dbhtml filename="AddingTwoViewsJSPPages.html"?>
+ <title>Adding Two Views (JSP Pages)</title>
+ <itemizedlist>
+ <listitem>
+ <para>Right-click anywhere on the diagram and select <emphasis>
+ <property moreinfo="none">New View...</property>
+ </emphasis> from the pop-up menu</para>
+ </listitem>
+ <listitem>
+ <para>In the dialog box, type <emphasis>
+ <property moreinfo="none">pages/inputname</property>
+ </emphasis> as the value for From-view-id</para>
+ </listitem>
+ <listitem>
+ <para>Leave everything else as is</para>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ <para>If you look in the Package Explorer view you should see a <emphasis>
+ <property moreinfo="none">pages</property>
+ </emphasis> folder under WebContent. Opening it will reveal the JSP file you
+ just created</para>
+ </listitem>
+ <listitem>
+ <para>Back on the diagram, right-click anywhere and select <emphasis>
+ <property moreinfo="none">New View...</property>
+ </emphasis> from the pop-up menu</para>
+ </listitem>
+ <listitem>
+ <para>In the dialog box, type <emphasis>
+ <property moreinfo="none">pages/greeting</property>
+ </emphasis> as the value for From-view-id</para>
+ </listitem>
+ <listitem>
+ <para>Leave everything else as is</para>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+
+ </section>
+ <section id="CreatingTheTransitionNavigationRule">
+ <?dbhtml filename="CreatingTheTransitionNavigationRule.html"?>
+ <title>Creating the Transition (Navigation Rule)</title>
+ <itemizedlist>
+ <listitem>
+ <para>In the diagram, select the connection icon third from the top along
+ the upper left side of the diagram (<inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_3.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>) to get an arrow cursor with a two-pronged plug at the arrow's bottom.</para>
+ </listitem>
+ </itemizedlist>
+
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">pages/inputname</property>
+ </emphasis> page icon and then click on the <emphasis>
+ <property moreinfo="none">pages/greeting</property>
+ </emphasis> page icon</para>
+ </listitem>
+
+ </itemizedlist>
+ <para>A transition should appear between the two icons.</para>
+ <figure float="0">
+ <title>Transition Between Two Icons</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_4.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">File > Save</property>
+ </emphasis> from the menu bar</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+
+</chapter>
+
+<chapter id="adding_managed_bean" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/jsf/docs/jsf_tools_tutorial/en/modules/adding_managed_bean.xml" xreflabel="adding_managed_bean">
+ <?dbhtml filename="adding_managed_bean.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Developer Studio</keyword>
+ <keyword>JSF application</keyword>
+ <keyword>Java</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Adding a Managed Bean to the Application</title>
+ <para>To store data in the application, we will use a managed bean.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">Tree</property>
+ </emphasis> tab at the bottom of the editing window</para>
+ </listitem>
+ <listitem>
+ <para>Select the <emphasis>
+ <property moreinfo="none">Managed Beans</property>
+ </emphasis> node and then click the <emphasis>
+ <property moreinfo="none">Add...</property>
+ </emphasis> button displayed along the right side of the editor window</para>
+ </listitem>
+ <listitem>
+ <para>Type in <emphasis>
+ <property moreinfo="none">jsfHello.PersonBean</property>
+ </emphasis> for Class and <emphasis>
+ <property moreinfo="none">personBean</property>
+ </emphasis> for Name. Leave Scope as is and Generate Source Code as is
+ (checked)</para>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>personBean will now be selected and three sections of information: <emphasis>
+ <property moreinfo="none">Managed Bean</property>
+ </emphasis>, <emphasis>
+ <property moreinfo="none">Properties</property>
+ </emphasis>, and <emphasis>
+ <property moreinfo="none">Advanced</property>
+ </emphasis>, will be displayed about it. Under the Properties section, click the <emphasis>
+ <property moreinfo="none">Add...</property>
+ </emphasis> button</para>
+ </listitem>
+ <listitem>
+ <para>Type in <emphasis>
+ <property moreinfo="none">name</property>
+ </emphasis> for Property-Name. Leave everything else as is. (When Property-
+ Class is not filled in, String is the assumed type)</para>
+ </listitem>
+ <listitem>
+ <para>Click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>Select the <emphasis>
+ <property moreinfo="none">personBean</property>
+ </emphasis> node in the tree</para>
+ </listitem>
+ </itemizedlist>
+ <para>You should see this now:</para>
+ <figure float="0">
+ <title>Tree View in Config Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_5.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">File > Save</property>
+ </emphasis> from the menu bar</para>
+ </listitem>
+ </itemizedlist>
+ <para>You have now registered the <emphasis>
+ <property moreinfo="none">managed bean</property>
+ </emphasis> and created a <emphasis>
+ <property moreinfo="none">stub-coded class</property>
+ </emphasis> file for it.</para>
+
+ </chapter>
+
+<chapter id="jsp_view_files" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/jsf/docs/jsf_tools_tutorial/en/modules/jsp_view_files.xml" xreflabel="jsp_view_files">
+ <?dbhtml filename="jsp_view_files.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>JSF application</keyword>
+ <keyword>Java</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Editing the JSP View Files</title>
+
+ <para>Now we will finish editing the JSP files for our two "views" using
+ JSP Visual Page.</para>
+ <section id="Inputname.jsp">
+ <title>inputname.jsp</title>
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">Diagram</property>
+ </emphasis> tab for the configuration file editor</para>
+ </listitem>
+ <listitem>
+ <para>Open the editor for this first JSP file by double-clicking on the <emphasis>
+ <property moreinfo="none">/pages/inputname. jsp</property>
+ </emphasis> icon</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>The Visual Page Editor will open in a screen split between source code along the
+ top and a WYSIWIG view along the bottom:</para>
+ <figure float="0">
+ <title>Visual Page Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_6.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para>Some JSF code is already in the file, because we have chosen a template to create
+ a page.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Select the <emphasis>
+ <property moreinfo="none">Visual</property>
+ </emphasis> tab, so we can work with the editor completely in its WYSIWYG
+ mode</para>
+ </listitem>
+ <listitem>
+ <para>To the right of the editor, in the JBoss Tools Palette, expand the <emphasis>
+ <property moreinfo="none">JSF HTML</property>
+ </emphasis> palette folder by selecting it</para>
+ </listitem>
+ </itemizedlist>
+ <figure float="0">
+ <title>JBoss Tools Palette</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_7.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Click on <emphasis>
+ <property moreinfo="none">form</property>
+ </emphasis> within this folder, drag the cursor over to the editor, and drop
+ it inside the red box in the editor</para>
+ </listitem>
+ <listitem>
+ <para>Another red box will appear inside the first red box</para>
+ </listitem>
+ <listitem>
+ <para>Right-click on the innermost box and select <emphasis role="bold">
+ <property moreinfo="none"><h:form></property>
+ </emphasis> Attributes from the menu</para>
+ </listitem>
+ <listitem>
+ <para>In the value field next to id, type <emphasis>
+ <property moreinfo="none">greeting</property>
+ </emphasis> and click on the <emphasis>
+ <property moreinfo="none">Close</property>
+ </emphasis> button</para>
+ </listitem>
+ <listitem>
+ <para>Type "Please enter name:" inside the boxes</para>
+ </listitem>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">inputText</property>
+ </emphasis> within the JSF HTML palette folder and drag it into the
+ innermost box in the editor after "Please enter
+ name:"</para>
+ </listitem>
+ <listitem>
+ <para>In the attributes dialog, click in the <emphasis>
+ <property moreinfo="none">value</property>
+ </emphasis> field next to the value attribute and click on the <property moreinfo="none">...
+ </property>button</para>
+ </listitem>
+ <listitem>
+ <para>Then, select the <emphasis>
+ <property moreinfo="none">Managed Beans > personBean > name</property>
+ </emphasis> node and click on the <emphasis>
+ <property moreinfo="none">Ok</property>
+ </emphasis> button</para>
+ </listitem>
+ <listitem>
+ <para>Back in the attributes dialog, select the <emphasis>
+ <property moreinfo="none">Advanced</property>
+ </emphasis> tab, type in <emphasis>
+ <property moreinfo="none">name</property>
+ </emphasis> as the value for the <emphasis role="italic">
+ <property moreinfo="none">"id"</property>
+ </emphasis> attribute, and then click on the <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button</para>
+ </listitem>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">commandButton</property>
+ </emphasis> within the JSF HTML palette folder and drag it into the
+ innermost box in the editor after the input box</para>
+ </listitem>
+ <listitem>
+ <para>In the attributes dialog, click in the value field next to the <emphasis role="italic">
+ <property moreinfo="none">"action"</property>
+ </emphasis> attribute and click on the <property moreinfo="none">...
+ </property>button</para>
+ </listitem>
+ <listitem>
+ <para>Then, select the <emphasis>
+ <property moreinfo="none">View Actions > greeting</property>
+ </emphasis> node and click on the <emphasis>
+ <property moreinfo="none">OK</property>
+ </emphasis> button</para>
+ </listitem>
+ <listitem>
+ <para>Back in the attributes dialog box, type in "Say Hello"
+ as the value for the value attribute ("Say Hello") and
+ then click on the <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button</para>
+ </listitem>
+ </itemizedlist>
+ <para>The source coding should be something like this now:</para>
+ <programlisting format="linespecific" role="XML"><![CDATA[<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
+<html>
+<head>
+<title></title>
+</head>
+<body>
+<f:view>
+<h:form id="greeting">
+Please enter name:
+<h:inputText id="name" value="#{personBean.name}"/>
+<h:commandButton value=" Say Hello " action="greeting"/>
+</h:form>
+</f:view>
+</body>
+</html>
+]]></programlisting>
+ <para>The editor should look like this:</para>
+ <figure float="0">
+ <title>Visual Page Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_8.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Save the file by selecting <emphasis>
+ <property moreinfo="none">File > Save</property>
+ </emphasis> from the menu bar</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section id="Greeting.jsp">
+ <title>greeting.jsp</title>
+ <itemizedlist>
+ <listitem>
+ <para>Click on the <emphasis>
+ <property moreinfo="none">faces-config.xml</property>
+ </emphasis> tab to bring the diagram back</para>
+ </listitem>
+ <listitem>
+ <para>Open the editor for the second file by double-clicking on the <emphasis>
+ <property moreinfo="none">/pages/greeting.jsp</property>
+ </emphasis> icon</para>
+ </listitem>
+ <listitem>
+ <para>Select the <emphasis>
+ <property moreinfo="none">Visual</property>
+ </emphasis> tab, so we can work with the editor completely in its WYSIWYG
+ mode</para>
+ </listitem>
+ <listitem>
+ <para>Type "Hello "(note space after Hello) into the
+ box</para>
+ </listitem>
+ <listitem>
+ <para>Select <emphasis>
+ <property moreinfo="none">outputText</property>
+ </emphasis> within the JSF HTML palette folder and drag it into the
+ innermost box in the editor after "Hello"</para>
+ </listitem>
+ <listitem>
+ <para>In the attributes dialog, click in <emphasis>
+ <property moreinfo="none">value</property>
+ </emphasis> field next to the value attribute and click on the
+ <property moreinfo="none">...</property> (Browse) button</para>
+ </listitem>
+ <listitem>
+ <para>Then, select the <emphasis>
+ <property moreinfo="none">Managed Beans > personBean > name</property>
+ </emphasis> node, click on the <emphasis>
+ <property moreinfo="none">Ok</property>
+ </emphasis> button, and then click on the <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis> button</para>
+ </listitem>
+ <listitem>
+ <para>Right after the output field, type an <emphasis>
+ <property moreinfo="none">exclamation point</property>
+ </emphasis> (<emphasis>
+ <property moreinfo="none">!</property>
+ </emphasis>)</para>
+ </listitem>
+ </itemizedlist>
+ <para>The source coding should be something like this now:</para>
+ <programlisting format="linespecific" role="XML"><![CDATA[<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
+<html>
+<head>
+<title></title>
+</head>
+<body>
+<f:view>
+Hello <h:outputText value="#{personBean.name}"/>!
+</f:view>
+</body>
+</html>
+]]></programlisting>
+ <itemizedlist>
+ <listitem>
+ <para>Save the file</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ </chapter>
+
+<chapter id="start_page" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/jsf/docs/jsf_tools_tutorial/en/modules/start_page.xml" xreflabel="start_page">
+ <?dbhtml filename="start_page.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>JSF application</keyword>
+ <keyword>Java</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Creating the Start Page</title>
+ <para>You also need to create a start page as an entry point into the application.</para>
+ <itemizedlist>
+ <listitem>
+ <para>In the Package Explorer view to the left, right-click <emphasis>
+ <property moreinfo="none">jsfHello > WebContent</property>
+ </emphasis> and select <emphasis>
+ <property moreinfo="none">New > JSP File</property>
+ </emphasis></para>
+ </listitem>
+ <listitem>
+ <para>For Name type in <emphasis>
+ <property moreinfo="none">index</property>
+ </emphasis>, for Template select <emphasis>
+ <property moreinfo="none">JSPRedirect</property>
+ </emphasis> and click <emphasis>
+ <property moreinfo="none">Finish</property>
+ </emphasis></para>
+ </listitem>
+ </itemizedlist>
+ <para>A JSP editor will open up on the newly created file.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>In the Source part of the split screen, type <emphasis>
+ <property moreinfo="none">/pages/inputname.jsf</property>
+ </emphasis> in between the quotes for the page attribute</para>
+ </listitem>
+ </itemizedlist>
+ <para>The source coding should look like this now:</para>
+ <programlisting format="linespecific" role="XML"><![CDATA[<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head></head>
+<body>
+<jsp:forward page="/pages/inputname.jsf" />
+</body>
+</html>
+]]></programlisting>
+
+ <para>Note the <emphasis>
+ <property moreinfo="none">.jsf</property>
+ </emphasis> extension for the file name. This is a mapping defined in the web.xml file
+ for the project for invoking <property moreinfo="none">JavaServer Faces</property> when you run the
+ application.</para>
+ <itemizedlist>
+ <listitem>
+ <para>Select<emphasis>
+ <property moreinfo="none"> File > Save</property>
+ </emphasis> from the menu bar</para>
+ </listitem>
+ </itemizedlist>
+ </chapter>
+
+<chapter id="running_application" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/jsf/docs/jsf_tools_tutorial/en/modules/running_application.xml" xreflabel="running_application">
+ <?dbhtml filename="running_application.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>JSF application</keyword>
+ <keyword>Java</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Running the Application</title>
+ <para>Everything is now ready for running our application by using the JBoss engine. For
+ controlling JBoss server there is JBoss Server view:</para>
+ <figure float="0">
+ <title>JBoss Server View</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_9.png"></imagedata>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <itemizedlist>
+ <listitem>
+ <para>Start up JBoss by clicking on the icon in JBoss Server view. (If JBoss is
+ already running, stop it by clicking on the red icon and then start it again.
+ Remember, the JSF run-time requires restarting the servlet engine when any
+ changes have been made.) After the messages in the Console tabbed view stop
+ scrolling, JBoss is available</para>
+ </listitem>
+
+ <listitem>
+ <para>Click the Run icon(<inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/jsf_application/jsf_application_10.png"></imagedata>
+ </imageobject>
+ </inlinemediaobject>) or right click your project folder and select <emphasis>
+ <property moreinfo="none">Run As > Run on Server</property>
+ </emphasis>:</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>This is the equivalent of launching the browser and typing <emphasis>
+ <property moreinfo="none">http://localhost:8080/jsfHello</property>
+ </emphasis> into your browser. Our <property moreinfo="none">JSF application</property> should now
+ appear.</para>
+ </chapter>
+
+<chapter id="relevant_resources" xml:base="file:///home/vchukhutsina/repos/ochik_jboss/jsf/docs/jsf_tools_tutorial/en/modules/relevant_resources.xml" xreflabel="relevant_resources">
+ <?dbhtml filename="relevant_resources.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>JBoss Tools</keyword>
+ <keyword>JSF application</keyword>
+ <keyword>Java</keyword>
+ </keywordset>
+ </chapterinfo>
+
+ <title>Other Relevant Resources on the topic</title>
+ <para>JSF on Sun: <ulink url="http://java.sun.com/javaee/javaserverfaces/">JavaServer Faces
+ Technology</ulink></para>
+ <para>Core JSF: <ulink url="http://www.horstmann.com/corejsf/">Core JavaServer Faces</ulink></para>
+ <para>API: <ulink url="http://java.sun.com/javaee/javaserverfaces/1.1/docs/api/index.html">JSF
+ API</ulink></para>
+ <para>JSF Tags: <ulink url="http://www.horstmann.com/corejsf/jsf-tags.html">JSF Core
+ Tags</ulink></para>
+ <para>HTML Tags Reference: <ulink url="http://www.exadel.com/tutorial/jsf/jsftags-guide.html">JSF HTML Tags Reference</ulink></para>
+ <para>JSF Central: <ulink url="http://www.jsfcentral.com/">JSF Central - Your JavaServer Faces
+ Community</ulink></para>
+ <para>FAQ: <ulink url="http://wiki.java.net/bin/view/Projects/JavaServerFacesSpecFaq">JSF
+ FAQ</ulink></para>
+ <para>Download: <ulink url="http://java.sun.com/javaee/javaserverfaces/download.html">JavaServer
+ Faces Technology - Download</ulink></para>
+
+ <para>In summary, with this tutorial you should now know how to organize JSF sample application
+ using the wizards provided by <property moreinfo="none">JBoss Tools</property>, configure its stuff and
+ finally run it on the <property moreinfo="none">JBoss Server</property>.</para>
+
+ <para>Find out more features on JSF tooling in our <ulink url="../../jsf_tools_ref_guide/html_single/index.html">JSF Tools
+ Reference Guide</ulink>. If you have questions and 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>
14 years, 4 months
JBoss Tools SVN: r20334 - trunk/documentation/whatsnew/hibernate.
by jbosstools-commits@lists.jboss.org
Author: vyemialyanchyk
Date: 2010-02-17 14:34:54 -0500 (Wed, 17 Feb 2010)
New Revision: 20334
Modified:
trunk/documentation/whatsnew/hibernate/hibernate-news-3.3.0.CR2.html
Log:
Modified: trunk/documentation/whatsnew/hibernate/hibernate-news-3.3.0.CR2.html
===================================================================
--- trunk/documentation/whatsnew/hibernate/hibernate-news-3.3.0.CR2.html 2010-02-17 19:33:14 UTC (rev 20333)
+++ trunk/documentation/whatsnew/hibernate/hibernate-news-3.3.0.CR2.html 2010-02-17 19:34:54 UTC (rev 20334)
@@ -1,242 +1,242 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Language" content="en-us" />
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<link rel="stylesheet" href="../whatsnew.css"/>
-<title>Hibernate tools 3.3.0.CR2 What's New</title>
-</head>
-<body>
-<h1>Hibernate tools 3.3.0.CR2 What's New</h1>
-
-<p align="right"><a href="../index.html">< Main Index</a> <a href="../maven/maven-news-1.0.0.CR1.html">Maven Tools ></a></p>
-
-<table border="0" cellpadding="10" cellspacing="0" width="80%">
-
- <tr>
- <td colspan="2">
- <hr/>
- <h3>Source Editing</h3>
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Persistence XML editor</b></td>
- <td valign="top">
- <p>'Browse' button changed to 'Setup' which allows to select an existing configuration file or create a new one.</p>
-
- <img src="images/setup_button.png" />
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5643">Releated jira</a></small></p>
- </td>
- </tr>
- <tr>
- <td colspan="2">
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3"
- id="itemname3"></a><b>Validator problem</b></td>
- <td valign="top">
-
- <p>Configuration file location validated by a validator. The validator checks the configuration file's path specified in persistence.xml is valid. It showed an error when relative path was used.</p>
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5641">Releated jira</a></small></p>
- </td>
- </tr>
-
- <tr>
- <td colspan="2">
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3"
- id="itemname3"></a><b>Reverse engineering editor</b></td>
- <td valign="top">
-
- <p>At the 'Table & Columns' tab was a checkbox 'Exclude column from reverse engineering'
- which added the attribute 'exclude' to 'key-column' element. But according to DTD the element
- doesn't have the attribute. Wrong ui was removed.</p>
- <img src="images/removed_ui.png" />
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5824">Releated jira</a></small></p>
- </td>
- </tr>
-
- <tr>
- <td colspan="2">
- <hr/>
- <h3>Hibernate Mapping Wizard</h3>
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Filter empty packages</b></td>
- <td valign="top">
-
- <p>At New Hibernate Mapping Wizard in 'Add Package' dialog empty packages(without java classes) are not shown now.</p>
- <img src="images/removed_empty_packages.png" />
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5411">Releated jira</a></small></p>
- </td>
- </tr>
-
- <tr>
- <td colspan="2">
- <hr/>
- <h3>Refactoring</h3>
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Code Generation Configurations</b></td>
- <td valign="top">
-
- <p>The code generation configurations now listen to the Refactoring changes.
- Allowing to output directory, template directory, reverse engineering file paths
- to be changed automatically.</p>
- <img src="images/main_tab.png" />
- <p>Also output directory set for each exporter are updated automatically.</p>
- <img src="images/exporters_tab.png" />
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5499">Releated jira</a></small></p>
- </td>
- </tr>
-
- <tr>
- <td colspan="2">
- <hr/>
- <h3>Move to Hibernate 3.3.2</h3>
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Hibernate Tools are using Hibernate 3.3.2</b></td>
- <td valign="top">
-
- <p>Hibernate Tools where moved to use Hibernate 3.3.2 instead of Hibernate 3.2.x.</p>
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5706">Releated jira</a></small></p>
- </td>
- </tr>
-
- <tr>
- <td colspan="2">
- <hr/>
- <h3>Close console configuration</h3>
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Ability to close Hibernate Console Configuration</b></td>
- <td valign="top">
-
- <p>The ability to explicitly close the database connection and unlock all jars which are used by Hibernate Console Configuration.</p>
- <img src="images/close_console_config.png" />
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5031">Releated jira</a></small></p>
- </td>
- </tr>
-
- <tr>
- <td colspan="2">
- <hr/>
- <h3>"HQL Editor" and "Hibernate Criteria Editor"</h3>
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Stick results to one tab</b></td>
- <td valign="top">
-
- <p>Make "HQL Editor" & "Hibernate Criteria Editor" "sticky" with respect to some tab in "Hibernate Query Result" view</p>
- <img src="images/stick_results_to_one_tab.png" />
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-4451">Releated jira</a></small></p>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Rename query result tab</b></td>
- <td valign="top">
-
- <p>In case of too long query - add possibility to rename query tabs</p>
- <img src="images/rename_query_result_tab.png" />
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-4450">Releated jira</a></small></p>
- </td>
- </tr>
-
- <tr>
- <td colspan="2">
- <hr/>
- <h3>Unify interface for "Generate Hibernate/JPA annotations" refactoring and "Hibernate XML Mapping file (hbm.xml)" wizard</h3>
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Unify interface</b></td>
- <td valign="top">
-
- <p>Now "Generate Hibernate/JPA annotations" refactoring and "Hibernate XML Mapping file (hbm.xml)" wizard
- has similar UI. Possible to view changes for existing hbm.xml files.
- </p>
-
- <p>"Generate Hibernate/JPA annotations" refactoring page 1</p>
- <img src="images/generate_jpa_page_1.png" />
- <p>"Generate Hibernate/JPA annotations" refactoring page 2</p>
- <img src="images/generate_jpa_page_2.png" />
- <p>"Generate Hibernate/JPA annotations" refactoring page 3</p>
- <img src="images/generate_jpa_page_3.png" />
-
- <p>"Hibernate XML Mapping file (hbm.xml)" wizard page 1</p>
- <img src="images/generate_hbm_xml_page_1.png" />
- <p>"Hibernate XML Mapping file (hbm.xml)" wizard page 2</p>
- <img src="images/generate_hbm_xml_page_2.png" />
- <p>"Hibernate XML Mapping file (hbm.xml)" wizard page 3</p>
- <img src="images/generate_hbm_xml_page_3.png" />
-
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5330">Releated jira</a></small></p>
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5408">Releated jira</a></small></p>
- </td>
- </tr>
-
- <tr>
- <td colspan="2">
- <hr/>
- <h3>Diagram Viewer show properties for selected item</h3>
- <hr/>
- </td>
- </tr>
-
- <tr>
- <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Properties for selected item</b></td>
- <td valign="top">
-
- <p>Association properties</p>
- <img src="images/association-properties.jpg" />
- <p>Class mapping properties</p>
- <img src="images/classmapping-properties.jpg" />
- <p>Diagram properties</p>
- <img src="images/diagram-properties.jpg" />
- <p>Entity properties</p>
- <img src="images/entity-properties.jpg" />
- <p>Foreign key constraint properties</p>
- <img src="images/foreignkeyconstraint-properties.jpg" />
- <p>Property mapping properties</p>
- <img src="images/propertymapping-properties.jpg" />
- <p>Table properties</p>
- <img src="images/table-properties.jpg" />
- <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5341">Releated jira</a></small></p>
- </td>
- </tr>
-
-</table>
-</body>
-</html>
-
-
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Language" content="en-us" />
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<link rel="stylesheet" href="../whatsnew.css"/>
+<title>Hibernate tools 3.3.0.CR2 What's New</title>
+</head>
+<body>
+<h1>Hibernate tools 3.3.0.CR2 What's New</h1>
+
+<p align="right"><a href="../index.html">< Main Index</a> <a href="../maven/maven-news-1.0.0.CR1.html">Maven Tools ></a></p>
+
+<table border="0" cellpadding="10" cellspacing="0" width="80%">
+
+ <tr>
+ <td colspan="2">
+ <hr/>
+ <h3>Source Editing</h3>
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Persistence XML editor</b></td>
+ <td valign="top">
+ <p>'Browse' button changed to 'Setup' which allows to select an existing configuration file or create a new one.</p>
+
+ <img src="images/setup_button.png" />
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5643">Releated jira</a></small></p>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2">
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3"
+ id="itemname3"></a><b>Validator problem</b></td>
+ <td valign="top">
+
+ <p>Configuration file location validated by a validator. The validator checks the configuration file's path specified in persistence.xml is valid. It showed an error when relative path was used.</p>
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5641">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="2">
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3"
+ id="itemname3"></a><b>Reverse engineering editor</b></td>
+ <td valign="top">
+
+ <p>At the 'Table & Columns' tab was a checkbox 'Exclude column from reverse engineering'
+ which added the attribute 'exclude' to 'key-column' element. But according to DTD the element
+ doesn't have the attribute. Wrong ui was removed.</p>
+ <img src="images/removed_ui.png" />
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5824">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="2">
+ <hr/>
+ <h3>Hibernate Mapping Wizard</h3>
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Filter empty packages</b></td>
+ <td valign="top">
+
+ <p>At New Hibernate Mapping Wizard in 'Add Package' dialog empty packages(without java classes) are not shown now.</p>
+ <img src="images/removed_empty_packages.png" />
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5411">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="2">
+ <hr/>
+ <h3>Refactoring</h3>
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Code Generation Configurations</b></td>
+ <td valign="top">
+
+ <p>The code generation configurations now listen to the Refactoring changes.
+ Allowing to output directory, template directory, reverse engineering file paths
+ to be changed automatically.</p>
+ <img src="images/main_tab.png" />
+ <p>Also output directory set for each exporter are updated automatically.</p>
+ <img src="images/exporters_tab.png" />
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5499">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="2">
+ <hr/>
+ <h3>Move to Hibernate 3.3.2</h3>
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Hibernate Tools are using Hibernate 3.3.2</b></td>
+ <td valign="top">
+
+ <p>Hibernate Tools where moved to use Hibernate 3.3.2 instead of Hibernate 3.2.x.</p>
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5706">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="2">
+ <hr/>
+ <h3>Close console configuration</h3>
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Ability to close Hibernate Console Configuration</b></td>
+ <td valign="top">
+
+ <p>The ability to explicitly close the database connection and unlock all jars which are used by Hibernate Console Configuration.</p>
+ <img src="images/close_console_config.png" />
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5031">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="2">
+ <hr/>
+ <h3>"HQL Editor" and "Hibernate Criteria Editor"</h3>
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Stick results to one tab</b></td>
+ <td valign="top">
+
+ <p>Make "HQL Editor" & "Hibernate Criteria Editor" "sticky" with respect to some tab in "Hibernate Query Result" view</p>
+ <img src="images/stick_results_to_one_tab.png" />
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-4451">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Rename query result tab</b></td>
+ <td valign="top">
+
+ <p>In case of too long query - add possibility to rename query tabs</p>
+ <img src="images/rename_query_result_tab.png" />
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-4450">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="2">
+ <hr/>
+ <h3>Unify interface for "Generate Hibernate/JPA annotations" refactoring and "Hibernate XML Mapping file (hbm.xml)" wizard</h3>
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Unify interface</b></td>
+ <td valign="top">
+
+ <p>Now "Generate Hibernate/JPA annotations" refactoring and "Hibernate XML Mapping file (hbm.xml)" wizard
+ has similar UI. Possible to view changes for existing hbm.xml files.
+ </p>
+
+ <p>"Generate Hibernate/JPA annotations" refactoring page 1</p>
+ <img src="images/generate_jpa_page_1.png" />
+ <p>"Generate Hibernate/JPA annotations" refactoring page 2</p>
+ <img src="images/generate_jpa_page_2.png" />
+ <p>"Generate Hibernate/JPA annotations" refactoring page 3</p>
+ <img src="images/generate_jpa_page_3.png" />
+
+ <p>"Hibernate XML Mapping file (hbm.xml)" wizard page 1</p>
+ <img src="images/generate_hbm_xml_page_1.png" />
+ <p>"Hibernate XML Mapping file (hbm.xml)" wizard page 2</p>
+ <img src="images/generate_hbm_xml_page_2.png" />
+ <p>"Hibernate XML Mapping file (hbm.xml)" wizard page 3</p>
+ <img src="images/generate_hbm_xml_page_3.png" />
+
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5330">Releated jira</a></small></p>
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5408">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+ <tr>
+ <td colspan="2">
+ <hr/>
+ <h3>Diagram Viewer show properties for selected item</h3>
+ <hr/>
+ </td>
+ </tr>
+
+ <tr>
+ <td valign="top" align="right"><a name="itemname3" id="itemname3"></a><b>Properties for selected item</b></td>
+ <td valign="top">
+
+ <p>Association properties</p>
+ <img src="images/association-properties.jpg" />
+ <p>Class mapping properties</p>
+ <img src="images/classmapping-properties.jpg" />
+ <p>Diagram properties</p>
+ <img src="images/diagram-properties.jpg" />
+ <p>Entity properties</p>
+ <img src="images/entity-properties.jpg" />
+ <p>Foreign key constraint properties</p>
+ <img src="images/foreignkeyconstraint-properties.jpg" />
+ <p>Property mapping properties</p>
+ <img src="images/propertymapping-properties.jpg" />
+ <p>Table properties</p>
+ <img src="images/table-properties.jpg" />
+ <p><small><a href="https://jira.jboss.org/jira/browse/JBIDE-5341">Releated jira</a></small></p>
+ </td>
+ </tr>
+
+</table>
+</body>
+</html>
+
+
Property changes on: trunk/documentation/whatsnew/hibernate/hibernate-news-3.3.0.CR2.html
___________________________________________________________________
Name: svn:mime-type
+ text/html
Name: svn:eol-style
+ native
14 years, 4 months
JBoss Tools SVN: r20333 - trunk/jsf/docs/jsf_tools_ref_guide/en.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2010-02-17 14:33:14 -0500 (Wed, 17 Feb 2010)
New Revision: 20333
Modified:
trunk/jsf/docs/jsf_tools_ref_guide/en/master.xml
trunk/jsf/docs/jsf_tools_ref_guide/en/master_output.xml
Log:
<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:9pt;font-family:Sans Serif">
<p>https://jira.jboss.org/jira/browse/JBDS-1104 - Updated versions,corrected master_output file</p>
</body></html>
Modified: trunk/jsf/docs/jsf_tools_ref_guide/en/master.xml
===================================================================
--- trunk/jsf/docs/jsf_tools_ref_guide/en/master.xml 2010-02-17 19:27:34 UTC (rev 20332)
+++ trunk/jsf/docs/jsf_tools_ref_guide/en/master.xml 2010-02-17 19:33:14 UTC (rev 20333)
@@ -45,14 +45,14 @@
<author><firstname>Svetlana</firstname><surname>Mukhina</surname><email>smukhina(a)exadel.com</email></author>
<copyright>
- <year>2007</year>
+ <year>2007</year>
<year>2008</year>
- <year>2009</year>
+ <year>2009</year>
<year>2010</year>
<holder>JBoss by Red Hat</holder>
</copyright>
<releaseinfo>
- Version: 3.1.0.CR1
+ Version: 3.1.0.CR2
</releaseinfo>
<abstract>
@@ -74,4 +74,4 @@
&managed_beans;
&creation_and_registration;
&jsf_project_verification;
-</book>
+</book>
Modified: trunk/jsf/docs/jsf_tools_ref_guide/en/master_output.xml
===================================================================
--- trunk/jsf/docs/jsf_tools_ref_guide/en/master_output.xml 2010-02-17 19:27:34 UTC (rev 20332)
+++ trunk/jsf/docs/jsf_tools_ref_guide/en/master_output.xml 2010-02-17 19:33:14 UTC (rev 20333)
@@ -26,1960 +26,1962 @@
<!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>
- <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>
+]><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>
+
+ <copyright>
+ <year>2007</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2008</diffmk:wrapper></year>
+ <year>2009</year>
+ <year diffmk:change="added"><diffmk:wrapper diffmk:change="added">2010</diffmk:wrapper></year>
+ <holder>JBoss by Red Hat</holder>
+ </copyright>
+ <releaseinfo><diffmk:wrapper diffmk:change="changed">
+ Version: 3.1.0.CR2
+ </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/vchukhutsina/repos/ochik_jboss/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/vchukhutsina/repos/ochik_jboss/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/vchukhutsina/repos/ochik_jboss/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/vchukhutsina/repos/ochik_jboss/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/vchukhutsina/repos/ochik_jboss/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/vchukhutsina/repos/ochik_jboss/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/vchukhutsina/repos/ochik_jboss/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/vchukhutsina/repos/ochik_jboss/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>
14 years, 4 months