gatein SVN: r2674 - portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US.
by do-not-reply@jboss.org
Author: benlc
Date: 2010-04-16 03:41:09 -0400 (Fri, 16 Apr 2010)
New Revision: 2674
Modified:
portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/ClusteringConfiguration.xml
portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/DatabaseConfiguration.xml
portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/EMailServiceConfiguration.xml
portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Getting_Started.xml
portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Installation.xml
portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Post_Installation.xml
portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Test_Your_Installation.xml
portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Uninstall_JBoss.xml
Log:
'committing minor changes and review request comments'
Modified: portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/ClusteringConfiguration.xml
===================================================================
--- portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/ClusteringConfiguration.xml 2010-04-16 07:16:34 UTC (rev 2673)
+++ portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/ClusteringConfiguration.xml 2010-04-16 07:41:09 UTC (rev 2674)
@@ -16,31 +16,87 @@
<section id="sect-Reference_Guide-Clustering_Configuration-Overview">
<title>Overview</title>
- <para>EPP has been developed to support high availability and high horizontal and vertical scalability.
- The setup instructions has been kept to the minimal, but a good understanding of clustering services in
- EAP and JBoss Cache would be reuired for optimal settings.
+ <para>&PRODUCT; has been developed to support high availability and high horizontal and vertical scalability.
+ The setup instructions have been kept to a minimum, however, a good understanding of clustering services in
+ &JBEAP; and JBoss Cache would be required in order to configure the optimal settings.
</para>
</section>
<section id="sect-Reference_Guide-Clustering_Configuration-Prerequisite">
- <title>Prerequisite</title>
- <para>As EPP requires the clustering services to run, only the <literal>all</literal>
- and <literal>configuration</literal> can be used.</para>
- <para>A rapid shared filesystem is also required such as a Storage Area Network (SAN).</para>
- <para>Databases should be shared among the various nodes of the cluster and configured to point to the same instances.</para>
+ <title>Prerequisites</title>
+ <para>As &PRODUCT; requires the clustering services to run, only the <literal>all</literal>
+ and <remark>production?</remark> configuration can be used. Additionally the following prerequisites
+ should be met:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ a rapid shared filesystem is required such as a Storage Area Network (SAN) and;
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ databases should be shared among the various nodes of the cluster and configured to point to the same instances.
+ </para>
+ </listitem>
+ </itemizedlist>
</section>
<section id="sect-Reference_Guide-Clustering_Properties">
<title>configuration.properties</title>
- <para>Edit $EPP_HOME/jboss-as/server/$CONFIG/conf/gatein/configuration.properties to edit:</para>
+ <para>Edit the following entries in the <filename>$JBOSS_HOME/jboss-as/server/$CONFIG/conf/gatein/configuration.properties</filename> file:</para>
<itemizedlist>
- <listitem><para><literal>gatein.jcr.storage.data.dir</literal> to specify the location of the shared filesystem</para></listitem>
- <listitem><para><literal>gatein.jcr.index.data.dir</literal> to specify the location on a shared filesystem to store data</para></listitem>
- <listitem><para><literal>gatein.jcr.changefilterclass</literal> must be changed to org.exoplatform.services.jcr.impl.core.query.jbosscache.JBossCacheIndexChangesFilter</para></listitem>
- <listitem><para><literal>gatein.jcr.config.type</literal> must be changed to cluster</para></listitem>
+ <listitem>
+ <para>
+ <literal>gatein.jcr.storage.data.dir;</literal>
+ <itemizedlist>
+ <listitem>
+ <para>
+ to specify the location of the shared filesystem.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>gatein.jcr.index.data.dir;</literal>
+ <itemizedlist>
+ <listitem>
+ <para>
+ to specify the location on a shared filesystem to store data.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>gatein.jcr.changefilterclass;</literal>
+ <itemizedlist>
+ <listitem>
+ <para>
+ this must be changed to org.exoplatform.services.jcr.impl.core.query.jbosscache.JBossCacheIndexChangesFilter.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>gatein.jcr.config.type;</literal>
+ <itemizedlist>
+ <listitem>
+ <para>
+ this must be changed to cluster.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </listitem>
</itemizedlist>
<para>
- The default property file would look like:
+ The default property file would look like the following:
<programlisting># Data
gatein.data.dir=/mnt/shared/mylocation
@@ -63,7 +119,17 @@
<section id="sect-Reference_Guide-Clustering_Running">
<title>Running with the cluster profile</title>
- <para>To run the portal ready for clustering, you would need to start all nodes with the extra profile like:
- <literal>run.sh -c all -Dexo.profiles=cluster</literal> (Or run.bat -c all -Dexo.profiles=cluster on Windows)</para>
+ <para>To run the portal ready for clustering, you would need to start all nodes with the extra profile.</para>
+ <formalpara><title>In Linux</title>
+ <para>
+ <literal>run.sh -c all -Dexo.profiles=cluster</literal>
+ </para>
+ </formalpara>
+
+ <formalpara><title>In Windows</title>
+ <para>
+ <literal>run.bat -c all -Dexo.profiles=cluster</literal>
+ </para>
+ </formalpara>
</section>
</section>
\ No newline at end of file
Modified: portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/DatabaseConfiguration.xml
===================================================================
--- portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/DatabaseConfiguration.xml 2010-04-16 07:16:34 UTC (rev 2673)
+++ portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/DatabaseConfiguration.xml 2010-04-16 07:41:09 UTC (rev 2674)
@@ -18,23 +18,23 @@
<para>
A relational database management system (RDBMS) Java Database Connectivity (JDBC) connector is required for &PRODUCT; to communicate with a database.
- &PRODUCT; comes bundled with Hypersonic SQL (HSQL) database so that users can get up and running quickly without having to initially set up
+ &PRODUCT; comes bundled with the Hypersonic SQL (HSQL) database so that users can get up and running quickly without having to initially set up
a database. However, HSQL should not be used in a production environment.
</para>
<para>&PRODUCT; has two different database dependencies. One is the
- identity service configuration, which depends on the Hibernate. The other
- database dependency is Java content repository (JCR) service, which
- depends on the native JDBC API and it can integrate with any existing
- datasource implementation.</para>
+ identity service configuration, which depends on Hibernate. The other
+ database dependency is the Java content repository (JCR) service, which
+ depends on the native JDBC API. JCR has the capability to integrate with
+ any existing datasource implementation.</para>
<para>When you start the portal for the first time,
it will automatically create the proper schema (assuming that the
database user has the appropriate permissions).</para>
<note><para>&PRODUCT; assumes the default encoding for your database is
- <literal>latin1</literal> . You will need to change this parameter for
- your database in order to work properly.</para></note>
+ <literal>latin1</literal> . You will need to change this parameter in
+ order for your database to work correctly.</para></note>
</section>
<section id="sect-Reference_Guide-Database_Configuration-JCR_database_configuration">
@@ -42,9 +42,11 @@
<para>To configure the database used by JCR you will need to edit the
datasource descriptor located at
- $JBOSS_HOME/server/default/deploy/gatein-ds.xml:<programlisting><no-tx-datasource>
+ $JBOSS_HOME/server/<remark>$CONFIG</remark>/deploy/gatein-ds.xml:<programlisting><no-tx-datasource>
<jndi-name>gatein-jcr</jndi-name>
- <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}gatein${/}hypersonic${/}gatein-jcr-localDB</connection-url>
+ <connection-url>
+ jdbc:hsqldb:${jboss.server.data.dir}${/}gatein${/}hypersonic${/}gatein-jcr-localDB
+ </connection-url>
<driver-class>org.hsqldb.jdbcDriver</driver-class>
<user-name>sa</user-name>
<password></password>
@@ -55,19 +57,20 @@
<prepared-statement-cache-size>32</prepared-statement-cache-size>
</no-tx-datasource></programlisting></para>
- <para>And edit the values of driver-class, connection-url, usern-ame and
- password with the values for your database (Please refer to your database
+ <para>Edit the values of driver-class, connection-url, user-name and
+ password to match the specific values for your database (Please refer to your database
JDBC driver documentation).</para>
- <para>In the case of HSQL the databases are created automatically, for any
- other database you will need to create a database.</para>
-
+ <para>In the case of HSQL, the databases are created automatically. For any
+ other database you will need to firstly create the database.</para>
+
<para>Make sure the user has rights to create tables on the database and
- to update them as during the first startup they will be automatically
+ to update them as, during the first startup, they will be automatically
created.</para>
- <para>Also add the JDBC driver into the classpath, for instance in
- $JBOSS_HOME/server/default/lib</para>
+ <para>Add the JDBC driver to the classpath, by copying the relevant
+ <filename><connector-type>-<version>-bin.jar</filename> to the
+ <filename>$JBOSS_HOME/server/$CONFIG/lib</filename> directory.</para>
</section>
@@ -75,16 +78,18 @@
<section>
<title>Configuring the database for the default identity store</title>
- <para>By default users are stored in database. To change the database to
- store users, you will need to edit the file:</para>
+ <para><remark>Users are stored in the HSQL database by default. To change the database to
+ which users are stored, you will need to edit the file:</remark></para>
- <para><programlisting>$JBOSS_HOME/server/default/deploy/gatein-ds.xml</programlisting></para>
+ <para><programlisting>$JBOSS_HOME/server/<remark>$CONFIG</remark>/deploy/gatein-ds.xml</programlisting></para>
- <para>You will find the same kind of configuration as For JCR:</para>
+ <para>This file contains the same configuration details as JCR:</para>
<para><programlisting> <no-tx-datasource>
<jndi-name>gatein-jcr</jndi-name>
- <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}gatein${/}hypersonic${/}gatein-jcr-localDB</connection-url>
+ <connection-url>
+ jdbc:hsqldb:${jboss.server.data.dir}${/}gatein${/}hypersonic${/}gatein-jcr-localDB
+ </connection-url>
<driver-class>org.hsqldb.jdbcDriver</driver-class>
<user-name>sa</user-name>
<password></password>
@@ -161,8 +166,13 @@
</listitem>
<listitem>
<para>
- Use the <command>CREATE DATABASE</command> command to create a new gateinjcr database. Note: the rest of this guide, and configuration examples following here after, assume the database names to be gatein-jcr and gatein-idm. If you change the database names, please change the name in all gatein-dsl.xml:
+ Use the <command>CREATE DATABASE</command> command to create a new gateinjcr database.
</para>
+ <note><title>Note: Database names</title>
+ <para>
+ The remainder of this guide, and the configuration examples that follow assume the database names to be gatein-jcr and gatein-idm. If you change the database names, please change the name in all of the gatein-dsl.xml files (for each server configuration used).
+ </para>
+ </note>
<para>
<screen>
mysql> CREATE DATABASE gatein-idm;
@@ -217,7 +227,7 @@
IDENTIFIED BY '<replaceable>gateinpassword</replaceable>' WITH GRANT OPTION;
</screen>
</para>
- <note><title>Note: Changed Password?</title>
+ <note><title>Note: Changed password?</title>
<para>
If you changed the portal user's password, remember to also change the password in the MySQL Datasource descriptor.
</para>
@@ -247,9 +257,14 @@
<itemizedlist>
<listitem>
<para>
- In this example the database name is <literal>gateinjcr</literal>. (And <literal>gateinidm</literal> for the other datasource)
+ In this example the database name is <literal>gateinjcr</literal> for the first datasource listed in <filename>gatein-ds.xml</filename>.
</para>
</listitem>
+ <listitem>
+ <para>
+ The database name for the second datasource is <literal>gateinidm</literal>. See the example <filename>gatein-ds.xml</filename> file provided.
+ </para>
+ </listitem>
</itemizedlist>
</para>
</listitem>
@@ -267,11 +282,11 @@
</listitem>
<listitem>
<para>
- <computeroutput><password><replaceable>gateinpassword</replaceable></password></computeroutput>;
+ <computeroutput><password><replaceable>PASSWORD</replaceable></password></computeroutput>;
<itemizedlist>
<listitem>
<para>
- This example uses the <literal>portalpassword</literal> password. Enter this or the password chosen at <xref linkend="form-Portal_EAP-Using_a_MySQL_Database-Creating_a_MySQL_Database"></xref>.
+ This example uses the <literal>gateinpassword</literal> password. Enter this or the password chosen at <xref linkend="form-Portal_EAP-Using_a_MySQL_Database-Creating_a_MySQL_Database"></xref>.
</para>
</listitem>
</itemizedlist>
Modified: portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/EMailServiceConfiguration.xml
===================================================================
--- portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/EMailServiceConfiguration.xml 2010-04-16 07:16:34 UTC (rev 2673)
+++ portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/EMailServiceConfiguration.xml 2010-04-16 07:41:09 UTC (rev 2674)
@@ -20,7 +20,7 @@
<title>Configuring the outgoing e-mail account</title>
<para>The e-mail service can use any SMTP account configured in
- $JBOSS_HOME/server/default/conf/gatein/configuration.properties</para>
+ $JBOSS_HOME/server/<remark>$CONFIG</remark>/conf/gatein/configuration.properties</para>
<para>The relevant section looks like:</para>
@@ -34,11 +34,11 @@
gatein.email.smtp.socketFactory.port=465
gatein.email.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory</programlisting>
- <para>It is preconfigured for GMail, so that any GMail account can easily be used (simply use the full GMail address
- as username, and fill-in the password.</para>
+ <para>The email service is preconfigured for GMail, so that any GMail account can be used with minimal configuration. Simply enter the full GMail address
+ as the username and fill in the corresponding password.</para>
<para>In corporate environments you will want to use your corporate SMTP gateway. When using it over SSL,
- like in default configuration, you may need to configure a certificate truststore, containing your SMTP server's
+ such as in the default configuration, you may need to configure a certificate truststore containing your SMTP server's
public certificate. Depending on the key sizes, you may then also need to install Java Cryptography Extension (JCE)
Unlimited Strength Jurisdiction Policy Files for your Java Runtime Environment.</para>
</section>
Modified: portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Getting_Started.xml
===================================================================
--- portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Getting_Started.xml 2010-04-16 07:16:34 UTC (rev 2673)
+++ portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Getting_Started.xml 2010-04-16 07:41:09 UTC (rev 2674)
@@ -15,16 +15,18 @@
<section id="Pre_Requisites-EAP">
<title>Enterprise Application Platform</title>
<para>The Enterprise Portal Platform 5.0 is built upon the Enterprise Application Platform 5.0.
- For more details about the underlying platform such as difference between the 4.3 and 5.0 versions, please refer to
+ For more details about the underlying platform such as the difference between the 4.3 and 5.0 versions, please refer to
the EAP installation guide available at: <ulink url="http://www.redhat.com/docs/en-US/JBoss_Enterprise_Application_Platform/"></ulink>
</para>
</section>
<section id="Pre_Requisites-Hardware_and_Operating_System_Requirements">
<title>System Requirements</title>
+ <para><remark>Add hardware requirements as per this section of this doc?</remark></para>
+ <para><ulink url="http://www.redhat.com/docs/en-US/JBoss_Enterprise_Application_Platform/4...."></ulink>?</para>
<para>For the latest information on supported Operating System / JVM combinations and supported Database platforms, please refer to <ulink url="http://www.jboss.com/products/platforms/portals/testedconfigurations/">http://www.jboss.com/products/platforms/portals/testedconfigurations/</ulink>.
</para>
<para>
- The following is a list of certified operating systems and JVM version combination:
+ The following is a list of certified operating systems and JVM version combinations:
</para>
<indexterm>
<primary>System Requirements</primary>
@@ -37,7 +39,8 @@
<tgroup cols="2">
<colspec colnum="1" colname="OS" colwidth="1*"></colspec>
<colspec colnum="2" colname="JVM" colwidth="1*"></colspec>
- <tbody>
+
+ <thead>
<row>
<entry>
<emphasis>Operating System</emphasis>
@@ -46,6 +49,8 @@
<emphasis>JVM Version</emphasis>
</entry>
</row>
+ </thead>
+ <tbody>
<row>
<entry>
RHEL 5 x86
@@ -141,7 +146,7 @@
<tgroup cols="2">
<colspec colnum="1" colname="DB" colwidth="1*"></colspec>
<colspec colnum="2" colname="DB_driver" colwidth="1*"></colspec>
- <tbody>
+ <thead>
<row>
<entry>
<emphasis>Database</emphasis>
@@ -150,6 +155,8 @@
<emphasis>Database driver</emphasis>
</entry>
</row>
+ </thead>
+ <tbody>
<row>
<entry>
MySQL 5.1
@@ -248,12 +255,14 @@
<tgroup cols="1">
<colspec colnum="1" colname="LDAP" colwidth="1*"></colspec>
- <tbody>
+ <thead>
<row>
<entry>
<emphasis>Directory Server</emphasis>
</entry>
</row>
+ </thead>
+ <tbody>
<row>
<entry>
OpenDS 1.2
@@ -469,7 +478,7 @@
</programlisting>
<para>
- Make sure the Sun version [<literal>jre-1.6.0-sun</literal> in this case] is selected (marked with a '+' in the output), or select it by entering its number as prompted.
+ Make sure the Sun version - <literal>jre-1.6.0-sun</literal> in this case - is selected (marked with a '+' in the output), or select it by entering its number as prompted.
</para>
</listitem>
<listitem>
Modified: portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Installation.xml
===================================================================
--- portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Installation.xml 2010-04-16 07:16:34 UTC (rev 2673)
+++ portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Installation.xml 2010-04-16 07:41:09 UTC (rev 2674)
@@ -20,7 +20,7 @@
<para>
To install from a zip file, simply unzip the downloaded file to a directory of your choice. You can unzip the platform on any operating system that supports the zip format. Six types of server configurations will be included in your installation - minimal, default, production, all, standard and web.
- The Getting Started Guide of &JBEAP; explain in detail the different server configuration file sets.
+ The Getting Started Guide of &JBEAP; explains in detail the different server configuration file sets.
<itemizedlist>
<listitem>
@@ -42,7 +42,7 @@
<section id="server-config-differences">
<title>Choosing a server configuration</title>
<para>
- The important differences as far as Portal is concerned are:
+ The important differences between the Portal and &JBEAP; server configurations are:
<itemizedlist>
<listitem>
@@ -52,7 +52,7 @@
</listitem>
<listitem>
<para>
- the <literal>default</literal> server configuration includes non-clustered Portal components. This archive (gatein.ear) is located in the <literal>deploy</literal> folder. <remark>This is the server configuration that is started when no other configuration is specified</remark>
+ the <literal>default</literal> server configuration includes non-clustered Portal components. <!-- This archive (gatein.ear) is located in the <literal>deploy</literal> folder. --><remark>This is the server configuration that is started when no other configuration is specified</remark>
</para>
</listitem>
<listitem>
@@ -62,11 +62,17 @@
</listitem>
<listitem>
<para>
- the <literal>production</literal> server configuration includes Portal component and clustering services. It is preconfigured with default settings which would be more accurate for a production environment.
+ the <literal>production</literal> server configuration includes Portal components and clustering services. It is preconfigured with default settings which would be more accurate for a production environment.
</para>
</listitem>
</itemizedlist>
</para>
+ <para><remark>Added the note below to account for all gatein.ear archives.</remark></para>
+ <note><title>Note: gatein.ear archive</title>
+ <para>
+ The getein.ear archive, which contains the Portal components, is located in the deploy folder of the <literal>default</literal>, <literal>all</literal> and <literal>production</literal> server configurations.
+ </para>
+ </note>
</section>
</chapter>
Modified: portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Post_Installation.xml
===================================================================
--- portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Post_Installation.xml 2010-04-16 07:16:34 UTC (rev 2673)
+++ portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Post_Installation.xml 2010-04-16 07:41:09 UTC (rev 2674)
@@ -28,19 +28,45 @@
On Microsoft Windows
</title>
<para>
- Create an environment variable called <literal>JBOSS_HOME</literal> that points to the installation directory, for example: C:\Program Files\jboss-epp-5.0\jboss-as\. In order to run the server from the command line add the <filename>bin</filename> directory to your path, for example: C:\Program Files\jboss-epp-5.0\jboss-as\bin. To do this, open the Control Panel from the Start Menu, switch to Classic View if necessary, open the System Control Panel applet, select the Advanced Tab, and click on the Environment Variables button.
+ Create an environment variable called <literal>JBOSS_HOME</literal> that points to the installation directory, for example: C:\Program Files\jboss-epp-5.0\jboss-as\. In order to run the server from the command line add the <filename>bin</filename> directory to your path, for example: <literal>C:\Program Files\jboss-epp-5.0\jboss-as\bin</literal>. To do this:
+ <orderedlist>
+ <listitem>
+ <para>
+ Open the Control Panel from the Start Menu, switching to Classic View if necessary.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Open the System Control Panel applet.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Select the Advanced Tab
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Click on the Environment Variables button.
+ </para>
+ </listitem>
+ </orderedlist>
</para>
</formalpara>
</section>
<section id="Adjust_Memory_Settings">
<title>Adjust memory settings</title>
+ <para>
+ The server will start in the <literal><remark>default</remark></literal> configuration when started without specifying a configuration (such as by passing <command>-c <configuration></command> to the run script). <remark>It is recommended that large applications be run using the <literal>production</literal> configuration.</remark>
+ </para>
+ <para><remark>Note to Reviewer</remark></para>
+ <para>
+ When I run the server without specifying a configuration parameter I get <screen>16:20:52,778 INFO [ServerImpl] Server Name: default</screen>
+ </para>
+ <para><remark>End Note to Reviewer</remark></para>
<para>
- The default configuration for the server to start with, if no other configuration is specified, is the production configuration.
- </para>
- <para>
- To avoid memory issues, adjust the memory settings before deploying the applications. You can do this by updating <literal>JAVA_OPTS</literal> settings in the file <filename>JBOSS_DIST/jboss-as/bin/run.conf</filename>. Those are the default values
- and are usually sufficient:
+ In the event of memory issues, adjust the memory settings before deploying the applications. You can do this by updating <literal>JAVA_OPTS</literal> settings in the file <filename>JBOSS_DIST/jboss-as/bin/run.conf</filename>. The default values listed in the sample below are usually sufficient:
<programlisting>
-Xms1303m -Xmx1303m -XX:MaxPermSize=256m ....
</programlisting>
@@ -58,7 +84,7 @@
</para>
<important><title>Default admin user configuration</title>
<para>
- It is recommended that the admin=admin username and password configuration, which is commented out by default, not be used for a production server. The admin user is included as an example of the user/password definition format only.
+ It is recommended that the admin=admin username and password configuration, which is commented out by default, not be used for a production server. The admin user is included as an example of the username/password definition format only.
</para>
</important>
@@ -96,12 +122,10 @@
<formalpara>
<title>Set SuckerPassword for JBoss Messaging:</title>
<para>
- JBoss Messaging makes internal connections between nodes in order to redistribute messages between clustered destinations. These connections are made with the user name of a special reserved user whose password is specified by this parameter <literal>SuckerPassword</literal> in the Server Peer configuration file:
- <programlisting>
- <remark>$JBOSS_HOME/server/$CONFIG/deploy/messaging/messaging-jboss-beans.xml</remark>
- </programlisting>
+ JBoss Messaging makes internal connections between nodes in order to redistribute messages between clustered destinations. These connections are made with the user name of a special reserved user whose password is specified by the <literal>suckerPassword</literal> attribute in the Server Peer configuration file:
+ <programlisting>$JBOSS_HOME/server/$CONFIG/deploy/messaging/messaging-jboss-beans.xml</programlisting>
Where <literal>$JBOSS_HOME</literal> is the install directory and <literal>$CONFIG</literal> is the server configuration being used.
- To avoid a security risk, you MUST specify the value of the attribute <literal>SuckerPassword</literal>, failing which the default value will be used. Any one who knows the default password will be able to gain access to any destinations on the server. The following fragment should be uncommented and modified:
+ To avoid a security risk, you MUST specify the value of the <literal>SuckerPassword</literal> attribute, failing which the default value will be used. Any one who knows the default password will be able to gain access to any destinations on the server. The following fragment should be uncommented and modified:
<programlisting><bean name="SecurityStore"
class="org.jboss.jms.server.jbosssx.JBossASSecurityMetadataStore">
<! default security configuration >
@@ -116,13 +140,27 @@
</programlisting>
</para>
</formalpara>
+ <para><remark>Note to Reviewer</remark></para>
+ <para>
+ <filename>/server/$CONFIG/deploy/messaging/messaging-service.xml</filename>
+ </para>
+ <screen><!-- The password used by the message sucker connections to create connections.
+ THIS SHOULD ALWAYS BE CHANGED AT INSTALL TIME TO SECURE SYSTEM
+ <attribute name="SuckerPassword"></attribute></screen>
+ <para>
+ Question 1: Should this file also have the SuckerPassword set?
+ </para>
+ <para>
+ Question 2: Should I document this?
+ </para>
+ <para><remark>End Note to Reviewer</remark></para>
</section>
<section id="Disabling_Authentication">
<title>Disabling Authentication</title>
<para>
- By default, authentication is disabled, if enabled here are the explanations to turn them off again.
- All specified paths in the sections below are relative to <literal>$JBOSS_HOME</literal>.
+ Authentication is disabled by default. Once enabled, it is possible to disable authentication for specific services by following the instructions in this section.
+ All paths specified in the sub-sections below are relative to <literal>$JBOSS_HOME</literal>.
</para>
<formalpara>
<title>Disabling Authentication for JXM Console:</title>
Modified: portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Test_Your_Installation.xml
===================================================================
--- portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Test_Your_Installation.xml 2010-04-16 07:16:34 UTC (rev 2673)
+++ portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Test_Your_Installation.xml 2010-04-16 07:41:09 UTC (rev 2674)
@@ -68,9 +68,9 @@
...
16:59:44,345 INFO [JMXKernel] Legacy JMX core initialized
</programlisting>
- <note>
+ <note><title>Note: Production server log file</title>
<para>
- Note that there is no "Server Started" message shown at the console when the server is started using the <literal>production</literal> profile. This message may be observed in the <filename>server.log</filename> file located in the <filename>server/production/log</filename> subdirectory.
+ There is no "Server Started" message shown at the console when the server is started using the <literal>production</literal> profile. This message may be observed in the <filename>server.log</filename> file located in the <filename>server/production/log</filename> subdirectory.
</para>
</note>
Modified: portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Uninstall_JBoss.xml
===================================================================
--- portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Uninstall_JBoss.xml 2010-04-16 07:16:34 UTC (rev 2673)
+++ portal/branches/EPP_5_0_0_Branch_Docs/Enterprise_Portal_Platform_Installation_Guide/en-US/Uninstall_JBoss.xml 2010-04-16 07:41:09 UTC (rev 2674)
@@ -5,9 +5,9 @@
]>
<chapter id="Uninstall_JBoss">
- <title>Uninstall EPP</title>
+ <title>Uninstall &PRODUCT;</title>
<para>
- As JBoss Enterprise Portal Platform was installed from a zipfile, you may uninstall it by simply deleting the &PRODUCT; installed directory.
+ As JBoss Enterprise Portal Platform was installed from a zip file, you may uninstall it by simply deleting the &PRODUCT; directory installed on your system.
</para>
</chapter>
14 years, 5 months
gatein SVN: r2673 - portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/portal.
by do-not-reply@jboss.org
Author: hoang_to
Date: 2010-04-16 03:16:34 -0400 (Fri, 16 Apr 2010)
New Revision: 2673
Modified:
portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/portal/UIPortalComposer.java
Log:
GTNPORTAL-558: Concurrency-related issues
Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/portal/UIPortalComposer.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/portal/UIPortalComposer.java 2010-04-16 07:11:14 UTC (rev 2672)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/portal/UIPortalComposer.java 2010-04-16 07:16:34 UTC (rev 2673)
@@ -21,6 +21,7 @@
import org.exoplatform.portal.application.PortalRequestContext;
import org.exoplatform.portal.config.DataStorage;
+import org.exoplatform.portal.config.StaleModelException;
import org.exoplatform.portal.config.UserPortalConfig;
import org.exoplatform.portal.config.UserPortalConfigService;
import org.exoplatform.portal.config.model.Page;
@@ -199,8 +200,16 @@
return;
}
- dataStorage.save(portalConfig);
-
+ try
+ {
+ dataStorage.save(portalConfig);
+ }
+ catch (StaleModelException ex)
+ {
+ //Temporary solution for concurrency-related issue. The StaleModelException should be
+ //caught in the ApplicationLifecycle
+ rebuildUIPortal(uiPortalApp, editPortal, dataStorage);
+ }
uiPortalApp.getUserPortalConfig().setPortal(portalConfig);
UserPortalConfig userPortalConfig = configService.getUserPortalConfig(ownerUser, remoteUser);
if (userPortalConfig != null)
@@ -242,6 +251,17 @@
skinService.invalidatePortalSkinCache(editPortal.getName(), editPortal.getSkin());
}
+ private void rebuildUIPortal(UIPortalApplication uiPortalApp, UIPortal uiPortal, DataStorage storage) throws Exception
+ {
+ PortalConfig portalConfig = storage.getPortalConfig(uiPortal.getOwnerType(), uiPortal.getOwner());
+ UserPortalConfig userPortalConfig = uiPortalApp.getUserPortalConfig();
+ userPortalConfig.setPortal(portalConfig);
+ uiPortal.getChildren().clear();
+ PortalDataMapper.toUIPortal(uiPortal, userPortalConfig);
+
+ uiPortalApp.putCachedUIPortal(uiPortal);
+
+ }
/**
* Check the <code>editPortal</code> whether it is existing in database or not
*
@@ -434,30 +454,22 @@
UISiteBody siteBody = uiWorkingWS.findFirstComponentOfType(UISiteBody.class);
UIPortal uiPortal = (UIPortal)siteBody.getUIComponent();
- String uri = null;
if (uiPortal == null)
{
siteBody.setUIComponent(editPortal);
}
- // uiEditWS.setUIComponent(null);
- // uiWorkingWS.removeChild(UIEditInlineWorkspace.class);
- uiWorkingWS.getChild(UIEditInlineWorkspace.class).setRendered(false);
+ uiEditWS.setRendered(false);
uiPortal = (UIPortal)siteBody.getUIComponent();
uiPortalApp.setSessionOpen(PortalProperties.SESSION_ALWAYS.equals(uiPortal.getSessionAlive()));
-
uiPortalApp.setModeState(UIPortalApplication.NORMAL_MODE);
uiWorkingWS.setRenderedChild(UIPortalApplication.UI_VIEWING_WS_ID);
prContext.setFullRender(true);
- if (uri == null)
- {
- uri = uiPortal.getSelectedNode() != null ? uiPortal.getSelectedNode().getUri() : null;
- }
-
+ String uri = (uiPortal.getSelectedNode() != null)? (uiPortal.getSelectedNode().getUri()) : null;
+
if (uiComposer.isPortalExist(editPortal))
{
- // Update portalconfig from db
DataStorage storage = uiPortalApp.getApplicationComponent(DataStorage.class);
PortalConfig pConfig =
storage.getPortalConfig(uiPortal.getSelectedNavigation().getOwnerType(), uiPortal
@@ -705,7 +717,15 @@
// Perform model update
DataStorage dataService = uiWorkingWS.getApplicationComponent(DataStorage.class);
- dataService.save(page);
+ try
+ {
+ dataService.save(page);
+ }
+ catch (StaleModelException ex)
+ {
+ //Temporary solution to concurrency-related issue
+ //This catch block should be put in an appropriate ApplicationLifecyclec
+ }
uiToolPanel.setUIComponent(null);
// Synchronize model object with UIPage object, that seems redundant but in fact
14 years, 5 months
gatein SVN: r2672 - portal/trunk/testsuite/selenium-snifftests/src/main/java/org/exoplatform/portal/selenium.
by do-not-reply@jboss.org
Author: mvanco(a)redhat.com
Date: 2010-04-16 03:11:14 -0400 (Fri, 16 Apr 2010)
New Revision: 2672
Modified:
portal/trunk/testsuite/selenium-snifftests/src/main/java/org/exoplatform/portal/selenium/SeleniumTestCaseGenerator.java
Log:
UI Tests: fixed generator - wrong representation of waitForTextNotPresent
Modified: portal/trunk/testsuite/selenium-snifftests/src/main/java/org/exoplatform/portal/selenium/SeleniumTestCaseGenerator.java
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/main/java/org/exoplatform/portal/selenium/SeleniumTestCaseGenerator.java 2010-04-16 06:51:03 UTC (rev 2671)
+++ portal/trunk/testsuite/selenium-snifftests/src/main/java/org/exoplatform/portal/selenium/SeleniumTestCaseGenerator.java 2010-04-16 07:11:14 UTC (rev 2672)
@@ -267,7 +267,7 @@
sb.append("TestCase.assertEquals(\"");
sb.append(param2);
sb.append("\", selenium.getTitle());\n");
- } else if (param1.equals("waitForElementNotPresent") || param1.equals("waitForTextNotPresent")) {
+ } else if (param1.equals("waitForElementNotPresent")) {
sb.append("for (int second = 0;; second++) {\n");
sb.append(getTimeoutMessage(param1));
sb.append("try {\nif (!selenium.isElementPresent(\"");
@@ -290,7 +290,15 @@
sb.append(param2);
sb.append("\")) \nbreak; }\n catch (Exception e) {}\n");
sb.append("Thread.sleep(1000);\n");
- sb.append("}\n");
+ sb.append("}\n");
+ } else if (param1.equals("waitForTextNotPresent")) {
+ sb.append("for (int second = 0;; second++) {\n");
+ sb.append(getTimeoutMessage(param1));
+ sb.append("try {\n if (!selenium.isTextPresent(\"");
+ sb.append(param2);
+ sb.append("\")) \nbreak; }\n catch (Exception e) {}\n");
+ sb.append("Thread.sleep(1000);\n");
+ sb.append("}\n");
} else if (param1.equals("waitForTable")) {
sb.append("for (int second = 0;; second++) {\n");
sb.append(getTimeoutMessage(param1));
14 years, 5 months
gatein SVN: r2671 - components/sso/trunk/agent/src/main/java/org/gatein/sso/agent/filter.
by do-not-reply@jboss.org
Author: sohil.shah(a)jboss.com
Date: 2010-04-16 02:51:03 -0400 (Fri, 16 Apr 2010)
New Revision: 2671
Added:
components/sso/trunk/agent/src/main/java/org/gatein/sso/agent/filter/CASLogoutFilter.java
Log:
GTNPORTAL-996 - GateIn+JOSSO integration: Problems with logout
Added: components/sso/trunk/agent/src/main/java/org/gatein/sso/agent/filter/CASLogoutFilter.java
===================================================================
--- components/sso/trunk/agent/src/main/java/org/gatein/sso/agent/filter/CASLogoutFilter.java (rev 0)
+++ components/sso/trunk/agent/src/main/java/org/gatein/sso/agent/filter/CASLogoutFilter.java 2010-04-16 06:51:03 UTC (rev 2671)
@@ -0,0 +1,75 @@
+/*
+* JBoss, a division of Red Hat
+* Copyright 2006, Red Hat Middleware, LLC, and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.gatein.sso.agent.filter;
+
+import java.net.URLEncoder;
+import javax.servlet.http.HttpServletRequest;
+
+//Works for GateIn Portal Logout URL = {AnyURL}?portal:componentId=UIPortal&portal:action=Logout
+
+/**
+ * Usage:
+ *
+ * Add the following to portal.war/WEB-INF/web.xml
+ *
+ * <filter>
+ * <filter-name>CASLogoutFilter</filter-name>
+ * <filter-class>org.gatein.sso.agent.filter.CASLogoutFilter</filter-class>
+ * <init-param>
+ * <!-- This should point to your CAS authentication server -->
+ * <param-name>LOGOUT_URL</param-name>
+ * <param-value>http://localhost:8888/cas/logout</param-value>
+ * </init-param>
+ * </filter>
+ *
+ * <filter-mapping>
+ * <filter-name>CASLogoutFilter</filter-name>
+ * <url-pattern>/*</url-pattern>
+ * </filter-mapping>
+ *
+ *
+ *
+ */
+
+
+/**
+ * @author <a href="mailto:sshah@redhat.com">Sohil Shah</a>
+ */
+public class CASLogoutFilter extends AbstractLogoutFilter
+{
+ protected String getRedirectUrl(HttpServletRequest httpRequest)
+ {
+ try
+ {
+ String parameters = URLEncoder.encode(
+ "portal:componentId=UIPortal&portal:action=Logout", "UTF-8");
+
+ String redirectUrl = this.logoutUrl+"?url="+httpRequest.getRequestURL()+"?"+parameters;
+
+ return redirectUrl;
+ }
+ catch(Exception e)
+ {
+ throw new RuntimeException(e);
+ }
+ }
+}
14 years, 5 months
gatein SVN: r2670 - in portal/trunk: web/eXoResources/src/main/webapp/javascript/eXo/portal and 1 other directories.
by do-not-reply@jboss.org
Author: thuy.nguyen
Date: 2010-04-16 00:02:51 -0400 (Fri, 16 Apr 2010)
New Revision: 2670
Modified:
portal/trunk/portlet/web/src/main/webapp/skin/portal/webui/component/UISiteMap/DefaultStylesheet.css
portal/trunk/web/eXoResources/src/main/webapp/javascript/eXo/portal/UIPortal.js
portal/trunk/web/portal/src/main/webapp/groovy/webui/core/UISitemapTree.gtmpl
Log:
GTNPORTAL-937: Problem with sitemap on IE7, GTNPORTAL-952: GateIn logo on SiteMap is obstructed
Modified: portal/trunk/portlet/web/src/main/webapp/skin/portal/webui/component/UISiteMap/DefaultStylesheet.css
===================================================================
--- portal/trunk/portlet/web/src/main/webapp/skin/portal/webui/component/UISiteMap/DefaultStylesheet.css 2010-04-15 23:53:06 UTC (rev 2669)
+++ portal/trunk/portlet/web/src/main/webapp/skin/portal/webui/component/UISiteMap/DefaultStylesheet.css 2010-04-16 04:02:51 UTC (rev 2670)
@@ -66,15 +66,15 @@
}
.UISitemap .ExpandAll {
- background: url('DefaultSkin/background/ExpandAllIcon.gif') no-repeat left center; /* orientation=lt */
- background: url('DefaultSkin/background/ExpandAllIcon-rt.gif') no-repeat right center; /* orientation=rt */
+ background: url('DefaultSkin/background/ExpandAllIcon.gif') no-repeat left center; /* orientation=lt */
+ background: url('DefaultSkin/background/ExpandAllIcon-rt.gif') no-repeat right center; /* orientation=rt */
padding: 0px 20px;
cursor: pointer;
}
.UISitemap .SitemapContent {
- background: url('DefaultSkin/background/RootTree.gif') no-repeat left top; /* orientation=lt */
- background: url('DefaultSkin/background/RootTree-rt.gif') no-repeat right top; /* orientation=rt */
+ background: url('DefaultSkin/background/RootTree.gif') no-repeat left top; /* orientation=lt */
+ background: url('DefaultSkin/background/RootTree-rt.gif') no-repeat right top; /* orientation=rt */
padding-top: 8px;
margin: 20px 0px;
}
@@ -82,6 +82,7 @@
.UISitemap .SitemapContent .UISiteTree a {
font-weight: bold;
display: block;
+ float: left;
}
.UISitemap .SitemapContent .UISiteTree a:hover {
@@ -89,13 +90,13 @@
}
.UISitemap .UISiteTree .Node {
- line-height: 25px;
+ line-height: 24px;
background: url('DefaultSkin/background/Dotted.gif') repeat-y 4px top; /* orientation=lt */
background: url('DefaultSkin/background/Dotted-rt.gif') repeat-y 99.6% top; /* orientation=rt */
}
.UISitemap .UISiteTree .LastNode {
- line-height: 14px;
+ line-height: 24px;
background: url('DefaultSkin/background/LastNode.gif') no-repeat 4px top; /* orientation=lt */
background: url('DefaultSkin/background/LastNode-rt.gif') no-repeat 99.6% top; /* orientation=rt */
}
@@ -127,12 +128,10 @@
padding: 4px 20px 4px 0px; /* orientation=rt */
background-position: left center; /* orientation=lt */
background-position: right center; /* orientation=rt */
- background-color: white;
width: auto;
}
.UISitemap .ChildrenContainer {
- padding-top: 33px;
padding-left: 31px; /* orientation=lt */
padding-right: 31px; /* orientation=rt */
float: none;
Modified: portal/trunk/web/eXoResources/src/main/webapp/javascript/eXo/portal/UIPortal.js
===================================================================
--- portal/trunk/web/eXoResources/src/main/webapp/javascript/eXo/portal/UIPortal.js 2010-04-15 23:53:06 UTC (rev 2669)
+++ portal/trunk/web/eXoResources/src/main/webapp/javascript/eXo/portal/UIPortal.js 2010-04-16 04:02:51 UTC (rev 2670)
@@ -557,10 +557,10 @@
var className = element.className;
if(!subGroup) return false;
if(subGroup.style.display == "none") {
- if (className.indexOf("ExpandIcon") == 0) element.className = "CollapseIcon FloatLeft" ;
+ if (className.indexOf("ExpandIcon") == 0) element.className = "CollapseIcon ClearFix" ;
subGroup.style.display = "block" ;
} else {
- if (className.indexOf("CollapseIcon") == 0) element.className = "ExpandIcon FloatLeft" ;
+ if (className.indexOf("CollapseIcon") == 0) element.className = "ExpandIcon ClearFix" ;
subGroup.style.display = "none" ;
}
return true;
Modified: portal/trunk/web/portal/src/main/webapp/groovy/webui/core/UISitemapTree.gtmpl
===================================================================
--- portal/trunk/web/portal/src/main/webapp/groovy/webui/core/UISitemapTree.gtmpl 2010-04-15 23:53:06 UTC (rev 2669)
+++ portal/trunk/web/portal/src/main/webapp/groovy/webui/core/UISitemapTree.gtmpl 2010-04-16 04:02:51 UTC (rev 2670)
@@ -49,28 +49,28 @@
if(treeNode.isHasChild()) {
if (treeNode.isExpanded()) {
println """
- <div class="$lastNode Node ClearFix">
- <div class="CollapseIcon FloatLeft" onclick="eXo.portal.UIPortal.collapseExpand(this);$actionCollapse">
+ <div class="$lastNode Node">
+ <div class="CollapseIcon ClearFix" onclick="eXo.portal.UIPortal.collapseExpand(this);$actionCollapse">
""";
if(treeNode.getNode().getPageReference() == null) println "<a class='NodeIcon DefaultPageIcon' href='javascript:void(0);'>$label</a>";
else println "<a class='NodeIcon DefaultPageIcon' href='$actionLink'>$label</a>";
println """
</div>
- <div class="ChildrenContainer FloatLeft" style="display: block">
+ <div class="ChildrenContainer" style="display: block">
""";
renderNodes(treeNode, portalUri, useAjax);
} else {
println """
- <div class="$lastNode Node ClearFix">
- <div class="ExpandIcon FloatLeft" onclick="if(eXo.portal.UIPortal.collapseExpand(this)){$actionExpand}">
+ <div class="$lastNode Node">
+ <div class="ExpandIcon ClearFix" onclick="if(eXo.portal.UIPortal.collapseExpand(this)){$actionExpand}">
""";
if(treeNode.getNode().getPageReference() == null) println "<a class='NodeIcon DefaultPageIcon' href='javascript:void(0);'>$label</a>";
else println "<a class='NodeIcon DefaultPageIcon' href='$actionLink'>$label</a>";
println """
</div>
- <div class="ChildrenContainer FloatLeft" style="display: none">
+ <div class="ChildrenContainer" style="display: none">
""";
}
@@ -84,7 +84,7 @@
println """
<div class="$lastNode Node ClearFix">
<div class="NullItem">
- <div class="">
+ <div class="ClearFix">
<a class="NodeIcon DefaultPageIcon" href="$actionLink">$label</a>
</div>
</div>
14 years, 5 months
gatein SVN: r2669 - in portal/trunk/docs/reference-guide/en: images/WSRP and 1 other directories.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2010-04-15 19:53:06 -0400 (Thu, 15 Apr 2010)
New Revision: 2669
Added:
portal/trunk/docs/reference-guide/en/images/WSRP/config_missing.png
portal/trunk/docs/reference-guide/en/images/WSRP/config_wsdl.png
portal/trunk/docs/reference-guide/en/images/WSRP/remote_portlets.png
portal/trunk/docs/reference-guide/en/images/WSRP/remote_portlets_category.png
Removed:
portal/trunk/docs/reference-guide/en/images/WSRP/bea.png
portal/trunk/docs/reference-guide/en/images/WSRP/bea_insider.png
portal/trunk/docs/reference-guide/en/images/WSRP/config_self.png
portal/trunk/docs/reference-guide/en/images/WSRP/config_usewsdl.png
portal/trunk/docs/reference-guide/en/images/WSRP/portlets.png
portal/trunk/docs/reference-guide/en/images/WSRP/result.png
Modified:
portal/trunk/docs/reference-guide/en/Reference_Guide.ent
portal/trunk/docs/reference-guide/en/images/WSRP/config_create.png
portal/trunk/docs/reference-guide/en/images/WSRP/config_end.png
portal/trunk/docs/reference-guide/en/images/WSRP/config_init.png
portal/trunk/docs/reference-guide/en/images/WSRP/config_refresh.png
portal/trunk/docs/reference-guide/en/images/WSRP/producer_blank.png
portal/trunk/docs/reference-guide/en/images/WSRP/producer_default.png
portal/trunk/docs/reference-guide/en/images/WSRP/producer_email.png
portal/trunk/docs/reference-guide/en/images/WSRP/producer_registration.png
portal/trunk/docs/reference-guide/en/modules/WSRP.xml
Log:
- Added WSRP_VERSION and PORTAL_VERSION entities to refer to component versions if needed. Should be interpolated at build time I guess, as some of the other entities...
- Started updating WSRP's documentation:
+ Finished UI consumer configuration section.
+ Fixed a bunch of errors with listitems and notes. Still need to fix examples.
+ Started updating producer configuration screenshots.
+ Fixed format in screenshot: png -> PNG.
Modified: portal/trunk/docs/reference-guide/en/Reference_Guide.ent
===================================================================
--- portal/trunk/docs/reference-guide/en/Reference_Guide.ent 2010-04-15 20:21:00 UTC (rev 2668)
+++ portal/trunk/docs/reference-guide/en/Reference_Guide.ent 2010-04-15 23:53:06 UTC (rev 2669)
@@ -4,3 +4,5 @@
<!ENTITY BOOKID "Reference Guide">
<!ENTITY YEAR "2010">
<!ENTITY HOLDER "Red Hat, Inc">
+<!ENTITY WSRP_VERSION "1.1.0-GA">
+<!ENTITY PORTAL_VERSION "3.0.1-GA">
Deleted: portal/trunk/docs/reference-guide/en/images/WSRP/bea.png
===================================================================
(Binary files differ)
Deleted: portal/trunk/docs/reference-guide/en/images/WSRP/bea_insider.png
===================================================================
(Binary files differ)
Modified: portal/trunk/docs/reference-guide/en/images/WSRP/config_create.png
===================================================================
(Binary files differ)
Modified: portal/trunk/docs/reference-guide/en/images/WSRP/config_end.png
===================================================================
(Binary files differ)
Modified: portal/trunk/docs/reference-guide/en/images/WSRP/config_init.png
===================================================================
(Binary files differ)
Added: portal/trunk/docs/reference-guide/en/images/WSRP/config_missing.png
===================================================================
(Binary files differ)
Property changes on: portal/trunk/docs/reference-guide/en/images/WSRP/config_missing.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: portal/trunk/docs/reference-guide/en/images/WSRP/config_refresh.png
===================================================================
(Binary files differ)
Deleted: portal/trunk/docs/reference-guide/en/images/WSRP/config_self.png
===================================================================
(Binary files differ)
Deleted: portal/trunk/docs/reference-guide/en/images/WSRP/config_usewsdl.png
===================================================================
(Binary files differ)
Added: portal/trunk/docs/reference-guide/en/images/WSRP/config_wsdl.png
===================================================================
(Binary files differ)
Property changes on: portal/trunk/docs/reference-guide/en/images/WSRP/config_wsdl.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: portal/trunk/docs/reference-guide/en/images/WSRP/portlets.png
===================================================================
(Binary files differ)
Modified: portal/trunk/docs/reference-guide/en/images/WSRP/producer_blank.png
===================================================================
(Binary files differ)
Modified: portal/trunk/docs/reference-guide/en/images/WSRP/producer_default.png
===================================================================
(Binary files differ)
Modified: portal/trunk/docs/reference-guide/en/images/WSRP/producer_email.png
===================================================================
(Binary files differ)
Modified: portal/trunk/docs/reference-guide/en/images/WSRP/producer_registration.png
===================================================================
(Binary files differ)
Added: portal/trunk/docs/reference-guide/en/images/WSRP/remote_portlets.png
===================================================================
(Binary files differ)
Property changes on: portal/trunk/docs/reference-guide/en/images/WSRP/remote_portlets.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: portal/trunk/docs/reference-guide/en/images/WSRP/remote_portlets_category.png
===================================================================
(Binary files differ)
Property changes on: portal/trunk/docs/reference-guide/en/images/WSRP/remote_portlets_category.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: portal/trunk/docs/reference-guide/en/images/WSRP/result.png
===================================================================
(Binary files differ)
Modified: portal/trunk/docs/reference-guide/en/modules/WSRP.xml
===================================================================
--- portal/trunk/docs/reference-guide/en/modules/WSRP.xml 2010-04-15 20:21:00 UTC (rev 2668)
+++ portal/trunk/docs/reference-guide/en/modules/WSRP.xml 2010-04-15 23:53:06 UTC (rev 2669)
@@ -5,13 +5,8 @@
]>
<chapter id="wsrp">
<title>Web Services for Remote Portlets (WSRP)</title>
- <para>
- Commented WSRP section out - not ready and breaking Publican builds.
- </para>
- <para>
- Will re-include once completed.
- </para>
-<!-- Commented as section not ready. Breaking Publican build. <sect1>
+
+ <sect1>
<title>Introduction</title>
<para>The Web Services for Remote Portlets specification defines a web service interface for accessing and
interacting with interactive presentation-oriented web services. It has been produced through the efforts of
@@ -21,11 +16,15 @@
<para>Scenarios that motivate WSRP functionality include:
<itemizedlist>
- <listitem>Content hosts, such as portal servers, providing Portlets as presentation-oriented web services
- that can be used by aggregation engines.
+ <listitem>
+ <para>Content hosts, such as portal servers, providing Portlets as presentation-oriented web services
+ that can be used by aggregation engines.
+ </para>
</listitem>
- <listitem>Aggregating frameworks, including portal servers, consuming presentation-oriented web services
- offered by content providers and integrating them into the framework.
+ <listitem>
+ <para>Aggregating frameworks, including portal servers, consuming presentation-oriented web services
+ offered by content providers and integrating them into the framework.
+ </para>
</listitem>
</itemizedlist>
</para>
@@ -70,8 +69,10 @@
Committee and Community at large).
</para>
- <note>At of version &PRODUCT_VERSION; of &PRODUCT_NAME;, WSRP is only activated and supported when GateIn is
- deployed on JBoss Application Server.
+ <note>
+ <para>At of version &PRODUCT_VERSION; of &PRODUCT_NAME;, WSRP is only activated and supported when GateIn is
+ deployed on JBoss Application Server.
+ </para>
</note>
</sect1>
@@ -79,42 +80,65 @@
<title>Deploying &PRODUCT_NAME;'s WSRP services</title>
<para>
&PRODUCT_NAME; provides a complete support of WSRP 1.0 standard interfaces and offers both consumer and
- producer
- services. WSRP support is provided by the following files, assuming
+ producer services. WSRP support is provided by the following files, assuming
<code>$GATEIN_HOME</code>
is
where &PRODUCT_NAME; has been installed,
<code>$WSRP_VERSION</code>
+ (at the time of the writing, it was &WSRP_VERSION;)
is the version of the WSRP component and
<code>$PORTAL_VERSION</code>
- is the current &PRODUCT_NAME; version
+ (at the time of the writing, it was &PORTAL_VERSION;)
+ is the current &PRODUCT_NAME; version:
<itemizedlist>
<listitem>
- <filename>$GATEIN_HOME/wsrp-admin-gui.war</filename>, which contains the WSRP Configuration portlet with
- which you can configure consumers to access remote servers and how the WSRP producer is configured.
+ <para>
+ <filename>$GATEIN_HOME/wsrp-admin-gui.war</filename>, which contains the WSRP Configuration portlet
+ with which you can configure consumers to access remote servers and how the WSRP producer is
+ configured.
+ </para>
</listitem>
<listitem>
- <filename>$GATEIN_HOME/wsrp-producer.war</filename>, which contains the WSRP producer web application.
+ <para><filename>$GATEIN_HOME/wsrp-producer.war</filename>, which contains the WSRP producer web
+ application.
+ </para>
</listitem>
<listitem>
- <filename>$GATEIN_HOME/lib/wsrp-common-$WSRP_VERSION.jar</filename>, which contains common classes needed
- by the different WSRP libraries.
+ <para><filename>$GATEIN_HOME/lib/wsrp-common-$WSRP_VERSION.jar</filename>, which contains common classes
+ needed by the different WSRP libraries.
+ </para>
</listitem>
<listitem>
- <filename>$GATEIN_HOME/lib/wsrp-consumer-$WSRP_VERSION.jar</filename>, which contains the WSRP consumer.
+ <para>
+ <filename>$GATEIN_HOME/lib/wsrp-consumer-$WSRP_VERSION.jar</filename>, which contains the WSRP
+ consumer.
+ </para>
</listitem>
<listitem>
- <filename>$GATEIN_HOME/lib/wsrp-integration-api-$WSRP_VERSION.jar</filename>, which contains the API
- classes needed to integrate the WSRP component into portals,
+ <para>
+ <filename>$GATEIN_HOME/lib/wsrp-integration-api-$WSRP_VERSION.jar</filename>, which contains the
+ API classes needed to integrate the WSRP component into portals.
+ </para>
+
</listitem>
<listitem>
- <filename>$GATEIN_HOME/lib/wsrp-wsrp1-ws-$WSRP_VERSION.jar</filename>, which contains the generated
- JAX-WS classes for WSRP version 1.
+ <para>
+ <filename>$GATEIN_HOME/lib/wsrp-producer-lib-$WSRP_VERSION.jar</filename>, which contains the classes
+ needed by the WSRP producer.
+ </para>
</listitem>
<listitem>
- <filename>$GATEIN_HOME/lib/gatein.portal.component.wsrp-$PORTAL_VERSION.jar</filename>, which contains
- the code to integrate the WSRP service into &PRODUCT_NAME;.
+ <para>
+ <filename>$GATEIN_HOME/lib/wsrp-wsrp1-ws-$WSRP_VERSION.jar</filename>, which contains the generated
+ JAX-WS classes for WSRP version 1.
+ </para>
</listitem>
+ <listitem>
+ <para>
+ <filename>$GATEIN_HOME/lib/gatein.portal.component.wsrp-$PORTAL_VERSION.jar</filename>, which
+ contains the code to integrate the WSRP service into &PRODUCT_NAME;.
+ </para>
+ </listitem>
</itemizedlist>
If you're not going to use WSRP in &PRODUCT_NAME;, you can remove
<filename>$GATEIN_HOME/lib/gatein.portal.component.wsrp-$PORTAL_VERSION.jar</filename>
@@ -153,10 +177,11 @@
<sect1>
<title>Making a portlet remotable</title>
- <para>&PRODUCT_NAME; does<emphasis role="bold">NOT</emphasis>, by default, expose local portlets for consumption
- by
- remote WSRP consumers. In order to make a portlet remotely available, it must be made "remotable" by marking it
- as such in the associated<filename>portlet.xml</filename>. This is accomplished by using a specific
+ <para>&PRODUCT_NAME; does
+ <emphasis role="bold">NOT</emphasis>, by default, expose local portlets for consumption
+ by remote WSRP consumers. In order to make a portlet remotely available, it must be made "remotable" by marking
+ it as such in the associated
+ <filename>portlet.xml</filename>. This is accomplished by using a specific
<code>org.gatein.pc.remotable container-runtime-option</code>. Setting its value to
<code>true</code>
makes the portlet available for remote consumption, while setting its value to
@@ -281,14 +306,13 @@
descriptors. Alternatively, a portlet is provided to configure remote producers.
</para>
<para>
- Once a remote producer has been configured, it can be made available in the list of portlet providers in the
- Management portlet on the Admin page of &PRODUCT_NAME;. You can then examine the list of portlets that are
- exposed by this producer and configure the portlets just like you would for local portlets.
+ Once a remote producer has been configured, the portlets that it exposes are then available in the
+ Application Registry to be added to categories and then to pages.
</para>
<para>
As a way to test the WSRP producer service and to check that the portlets that you want to expose remotely
are correctly published via WSRP, a default consumer named
- <literal>self</literal>
+ <literal>self</literal>, that consumes the portlets exposed by &PRODUCT_NAME;'s producer,
has been configured.
</para>
</sect2>
@@ -306,14 +330,28 @@
<title>Using the configuration portlet</title>
<para>
&PRODUCT_NAME; provides a portlet to configure access (among other functions) to remote WSRP Producers
- grahically.
+ grahically. It isn't, however, installed by default, so the first thing we will need to do is to install
+ the WSRP configuration portlet using the Application Registry.
+ </para>
- == TODO ==
-
- You can access it at
- <filename>http://{hostname}:{port}/portal/auth/portal/admin/WSRP</filename>
- or by logging in as a Portal administrator and clicking on the WSRP tab in the Admin portal. If all went
- well, you should see something similar to this:
+ <para>
+ Use the usual procedure to log in as a Portal administrator and go to the Application Registry.
+ With the default install, you can just go to
+ <ulink
+ url="http://localhost:8080/portal/login?initialURI=%2Fportal%2Fprivate%2Fclass...">
+ http://localhost:8080/portal/login?initialURI=%2Fportal%2Fprivate%2Fclass...
+ </ulink>
+ Add the WSRP Configuration portlet to the Administration category. If you use the Import Applications
+ functionality, the WSRP Configuration portlet will be automatically added to the Administration category.
+ </para>
+ <para>
+ Now that the portlet is added to a category, it can be added to a page and used. We recommend adding it
+ to the same page as the Application Registry as operations relating to WSRP and adding portlets to
+ categories are somewhat related as we will see. Go ahead and add the WSRP Configuration portlet to the
+ page using the standard procedure.
+ </para>
+ <para>
+ If all went well, you should see something similar to this:
<mediaobject>
<imageobject>
<imagedata fileref="images/WSRP/config_init.png" format="PNG" align="center" valign="middle"
@@ -322,16 +360,16 @@
</mediaobject>
This screen presents all the configured producers associated with their status and possible actions on
them. A Consumer can be active or inactive. Activating a Consumer means that it is ready to act as a
- portlet provider. Deactivating it will remove it from the list of available portlet providers. Note also
- that a Consumer can be marked as requiring refresh meaning that the information held about it might not
- be up to date and refreshing it from the remote Producer might be a good idea. This can happen for
- several reasons: the service description for that remote Producer has not been fetched yet, the cached
- version has expired or modifications have been made to the configuration that could potentially
- invalidate it, thus requiring re-validation of the information.
+ portlet provider. Note also that a Consumer can be marked as requiring refresh meaning that the
+ information held about it might not be up to date and refreshing it from the remote Producer might be a
+ good idea. This can happen for several reasons: the service description for that remote Producer has not
+ been fetched yet, the cached version has expired or modifications have been made to the configuration
+ that could potentially invalidate it, thus requiring re-validation of the information.
</para>
<para>
- Next, we create a new Consumer which we will call<literal>bea</literal>. Type "<literal>bea</literal>" in
+ Next, we create a new Consumer which we will call<literal>oracle</literal>. Type "<literal>
+ oracle</literal>" in
the "Create a consumer named:" field then click on "Create consumer":
<mediaobject>
<imageobject>
@@ -340,52 +378,54 @@
</imageobject>
</mediaobject>
You should now see a form allowing you to enter/modify the information about the Consumer.
- Set the cache expiration value to 300 seconds and enter the WSDL URL for the producer in the text field
+ Set the cache expiration value to 300 seconds, leave the default timeout value for web services (WS)
+ operations and enter the WSDL URL for the producer in the text field
and press the "Refresh & Save" button:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/config_usewsdl.png" format="PNG" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/config_wsdl.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
- This will retrieve the service description associated with the Producer which WSRP is described by the
- WSDL file found at the URL you just entered. In our case, querying the service description will allow us
- to learn that the Producer requires registration and that it expects a value for the registration
- property named<literal>registration/consumerRole</literal>:
+ This will retrieve the service description associated with the Producer which WSRP interface is described
+ by the WSDL file found at the URL you just entered. In our case, querying the service description will
+ allow us to learn that the Producer requires registration but didn't request any registration property:
<mediaobject>
<imageobject>
<imagedata fileref="images/WSRP/config_refresh.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
- <note>At this point, there is no automated way to learn about which possible values (if any) are
- expected by the remote Producer. In the case of BEA's public producer, the possible values are
- indicated in the registration property description. This is not always the case... Please refer to
- the specific Producer's documentation.
- </note>
- Enter "<literal>public</literal>" as the value for the registration property and press "Save &
- Refresh" once more. You should now
- see something similar to:
+ The Consumer for the
+ <literal>oracle</literal>
+ Producer should now be available as a portlet provider and be ready to be used.
+ </para>
+ <para>
+ Now, assuming that the producer required a value for an
+ <literal>email</literal>
+ registration property, &PRODUCT_NAME;'s WSRP consumer would have informed you that you were missing some
+ information:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/config_end.png" format="PNG" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/config_missing.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
- The Consumer for the
- <literal>bea</literal>
- Producer should now be available as a portlet provider and
- is ready to be used.
- </para>
- <para>
- A producer is configured, by default, by retrieving the producer's information via a WSDL URL. There are
- rare cases, however, where URLs need to be provided for each of the producer's end points. You can do
- exactly that by unchecking the "Use WSDL?" checkbox, as is the case for the
- <literal>self</literal>
- producer:
+ <note>
+ <para>At this point, there is no automated way to learn about which possible values (if any) are
+ expected by the remote Producer. Sometimes, the possible values will be indicated in the
+ registration
+ property description but this is not always the case... Please refer to the specific Producer's
+ documentation.
+ </para>
+
+ </note>
+ If you entered "<literal>example(a)example.com</literal>" as the value for the registration property and
+ press "Save &
+ Refresh" once more, you would have seen something similar to:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/config_self.png" format="PNG" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/config_end.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
@@ -426,10 +466,13 @@
(with &PRODUCT_NAME; and its WSRP service deployed).
</para>
<para>
- <note>A DTD and an XML Schema for WSRP Producer XML descriptors are available in
- <filename>jboss-portal.sar/portal-wsrp.sar/dtd/jboss-wsrp-consumer_2_6.dtd</filename>
- and
- <filename>jboss-portal.sar/portal-wsrp.sar/xsd/jboss-wsrp-consumer_2_6.xsd</filename>
+ <note>
+ <para>A DTD and an XML Schema for WSRP Producer XML descriptors are available in
+ <filename>jboss-portal.sar/portal-wsrp.sar/dtd/jboss-wsrp-consumer_2_6.dtd</filename>
+ and
+ <filename>jboss-portal.sar/portal-wsrp.sar/xsd/jboss-wsrp-consumer_2_6.xsd</filename>
+ </para>
+
</note>
</para>
</sect3>
@@ -437,44 +480,33 @@
<sect3>
<title>Configuring access to a remote portlet</title>
<para>
- Let's now look at the Admin page and the Management portlet. Click on the "Portlet definitions" tab at
- the
- top. Once this is done, look at the list of available portlet providers. If all went well,
- you should see something similar to this:
+ If we go back to the Application Registry and examine the available portlets by clicking on the
+ Portlet link, you will now be able to see the remote portlets if you click on the REMOTE tab in the left
+ column:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/portlets.png" format="PNG" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/remote_portlets.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
</para>
+
<para>
- We have 3 available portlet providers:
- <literal>local, self</literal>
- and<literal>bea</literal>. The
- <literal>local</literal>
- portlet provider exposes all the portlets deployed in this particular instance of Portal. As
- explained above, the
- <literal>self</literal>
- provider refers to the default WSRP consumer bundled with Portal that consumes
- the portlets exposed by the default WSRP producer. The
- <literal>bea</literal>
- provider corresponds to BEA's public producer
- we just configured. Select it and click on "View portlets". You should now see something similar to:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/WSRP/bea.png" format="PNG" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ These portlets are, of course, available to be used such as regular portlets: they can be used in
+ categories and added to pages. If you use the Import Applications functionality, they will also be
+ automatically imported in categories based on the keywords they define.
</para>
+
<para>
- From there on out, you should be able to configure WSRP portlets just as any other. In particular, you
- can create an instance of one of the remote portlets offered by BEA's public producer just like you would
- create an instance of a local portlet and then assign it to a window in a page. If you go to that page,
- you should see something similar to below for this portlet:
+ More specifically, if you want to add a WSRP portlet to a category, you can access these portlets by
+ selecting
+ <literal>wsrp</literal>
+ in the Application Type drop-down menu:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/result.png" format="PNG" align="center" valign="middle"/>
+ <imagedata fileref="images/WSRP/remote_portlets_category.png" format="PNG" align="center"
+ valign="middle"
+ scalefit="1"/>
</imageobject>
</mediaobject>
</para>
@@ -494,19 +526,25 @@
<filename>jboss-portal.sar/portal-wsrp.sar/xsd/jboss-wsrp-consumer_2_6.xsd</filename>, while a (legacy) DTD
can be found at<filename>jboss-portal.sar/portal-wsrp.sar/dtd/jboss-wsrp-consumer_2_6.dtd</filename>.
- <note>It is important to note how WSRP Producer descriptors are processed. They are read the first time the
- WSRP service starts and the associated information is then put in the Portal database. Subsequent launch
- of the WSRP service will use the database-stored information for all producers which identifier is
- already known to Portal. More specifically, all the descriptors are scanned for producer identifiers.
- Any identifier that is already known will be bypassed and the configuration associated with this remote
- producer in the database will be used. If a producer identifier is found that wasn't already in the
- database, that producer information will be processed and recorded in the database. Therefore, if you
- wish to delete a producer configuration, you need to delete the associated information in the database
- (this can be accomplished using the configuration portlet as we saw in<xref linkend="consumer_gui"/>)
- <emphasis>AND</emphasis>
- remove the associated information in any WSRP Producer descriptor (if such
- information exists) as the producer will be re-created the next time the WSRP is launched if that
- information is not removed.
+ <note>
+ <para>It is important to note how WSRP Producer descriptors are processed. They are read the first time
+ the WSRP service starts and the associated information is then put in the Portal database. Subsequent
+ launch
+ of the WSRP service will use the database-stored information for all producers which identifier is
+ already known to Portal. More specifically, all the descriptors are scanned for producer identifiers.
+ Any identifier that is already known will be bypassed and the configuration associated with this
+ remote
+ producer in the database will be used. If a producer identifier is found that wasn't already in the
+ database, that producer information will be processed and recorded in the database. Therefore, if you
+ wish to delete a producer configuration, you need to delete the associated information in the database
+ (this can be accomplished using the configuration portlet as we saw in
+ <xref linkend="consumer_gui"/>)
+ <emphasis>AND</emphasis>
+ remove the associated information in any WSRP Producer descriptor (if such
+ information exists) as the producer will be re-created the next time the WSRP is launched if that
+ information is not removed.
+ </para>
+
</note>
</para>
@@ -531,32 +569,45 @@
<para>
<itemizedlist>
- <listitem>You can provide the URLs for each of the different WSRP interfaces offered by the remote
- producer via the
- <literal><endpoint-config></literal>
- element and its
- <literal><service-description-url></literal>,
- <literal><markup-url></literal>,
- <literal><registration-url></literal>
- and
- <literal><portlet-management-url></literal>
- children. These URLs are
- producer-specific so you will need to refer to your producer documentation or WSDL file to
- determine
- the appropriate values.
+ <listitem>
+ <para>You can provide the URLs for each of the different WSRP interfaces offered by the remote
+ producer via the
+ <literal><endpoint-config></literal>
+ element and its
+ <literal><service-description-url></literal>,
+ <literal><markup-url></literal>,
+ <literal><registration-url></literal>
+ and
+ <literal><portlet-management-url></literal>
+ children. These URLs are
+ producer-specific so you will need to refer to your producer documentation or WSDL file to
+ determine
+ the appropriate values.
+ </para>
+
</listitem>
- <listitem>Alternatively, and this is the easiest way to configure your producer, you can provide a URL
- pointing to the WSDL description of the producer's WSRP services. This is accomplished via the
- <literal><endpoint-wsdl-url></literal>
- element. &PRODUCT_NAME; will then
- heuristically determine, from the information contained in the WSDL file, how to connect
- appropriately
- to the remote WSRP services.
- <note>It is important to note that, when using this method, &PRODUCT_NAME; will try to match a port
- name to an interface based solely on the provided name. There are no standard names for these
- ports so it is possible (though rare) that this matching process fails. In this case, you should
- look at the WSDL file and provide the endpoint URLs manually, as per the previous method.
- </note>
+ <listitem>
+ <para>Alternatively, and this is the easiest way to configure your producer, you can provide a URL
+ pointing to the WSDL description of the producer's WSRP services. This is accomplished via the
+ <literal><endpoint-wsdl-url></literal>
+ element. &PRODUCT_NAME; will then
+ heuristically determine, from the information contained in the WSDL file, how to connect
+ appropriately
+ to the remote WSRP services.
+ <note>
+ <para>It is important to note that, when using this method, &PRODUCT_NAME; will try to match
+ a
+ port
+ name to an interface based solely on the provided name. There are no standard names for
+ these
+ ports so it is possible (though rare) that this matching process fails. In this case, you
+ should
+ look at the WSDL file and provide the endpoint URLs manually, as per the previous method.
+ </para>
+
+ </note>
+ </para>
+
</listitem>
</itemizedlist>
</para>
@@ -600,8 +651,10 @@
registration
information in the producer configuration so that the Portal consumer can register with the remote
producer when required.
- <note>At this time, though, only simple String properties are supported and it is not possible to
- configure complex registration data. This should however be sufficient for most cases.
+ <note>
+ <para>At this time, though, only simple String properties are supported and it is not possible to
+ configure complex registration data. This should however be sufficient for most cases.
+ </para>
</note>
</para>
@@ -765,7 +818,7 @@
service level. This gave us access to three portlets as shown here:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/bea.png" format="png" align="center" valign="middle" scalefit="1"/>
+ <imagedata fileref="images/WSRP/bea.png" format="PNG" align="center" valign="middle" scalefit="1"/>
</imageobject>
</mediaobject>
</para>
@@ -782,7 +835,7 @@
instead of<literal>public</literal>:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/modify_reg_start.png" format="png" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/modify_reg_start.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
@@ -790,7 +843,7 @@
let you send this new data to the remote producer:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/modify_reg_modify.png" format="png" align="center"
+ <imagedata fileref="images/WSRP/modify_reg_modify.png" format="PNG" align="center"
valign="middle" scalefit="1"/>
</imageobject>
</mediaobject>
@@ -798,7 +851,7 @@
the remote producer, you should see something similar to:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/modify_reg_end.png" format="png" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/modify_reg_end.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
@@ -808,7 +861,7 @@
new portlets are now available:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/bea_insider.png" format="png" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/bea_insider.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
@@ -830,7 +883,7 @@
the configuration screen for this producer, you should see:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/config_self.png" format="png" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/config_self.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
@@ -844,7 +897,7 @@
the consumer by pressing "Refresh & Save":
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/modify_reg_self.png" format="png" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/modify_reg_self.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
@@ -857,20 +910,23 @@
data, you should see something similar to:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/modify_reg_self_end.png" format="png" align="center"
+ <imagedata fileref="images/WSRP/modify_reg_self_end.png" format="PNG" align="center"
valign="middle" scalefit="1"/>
</imageobject>
</mediaobject>
- <note>As of WSRP 1, it is rather difficult to ascertain for sure what caused an
- <exceptionname>OperationFailedFault</exceptionname>
- as it is the generic exception returned by
- producers if something didn't quite happen as expected during a method invocation. This means that
- <exceptionname>OperationFailedFault</exceptionname>
- can be caused by several different reasons, one
- of them being a request to modify the registration data. Please take a look at the log files to see
- if you can gather more information as to what happened. WSRP 2 introduces an exception that is
- specific to a request to modify registrations thus reducing the ambiguity that currently exists.
+ <note>
+ <para>As of WSRP 1, it is rather difficult to ascertain for sure what caused an
+ <exceptionname>OperationFailedFault</exceptionname>
+ as it is the generic exception returned by
+ producers if something didn't quite happen as expected during a method invocation. This means that
+ <exceptionname>OperationFailedFault</exceptionname>
+ can be caused by several different reasons, one
+ of them being a request to modify the registration data. Please take a look at the log files to see
+ if you can gather more information as to what happened. WSRP 2 introduces an exception that is
+ specific to a request to modify registrations thus reducing the ambiguity that currently exists.
+ </para>
+
</note>
</para>
</sect3>
@@ -882,7 +938,7 @@
Several operations are available from the consumer list view of the WSRP configuration portlet:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/consumer_operations.png" format="png" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/consumer_operations.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
@@ -890,20 +946,28 @@
<para>
The available operations are:
<itemizedlist>
- <listitem>Configure: displays the consumer details and allows user to edit them</listitem>
<listitem>
- Refresh: forces the consumer to retrieve the service description from the remote producer to refresh
- the local information (offered portlets, registration information, etc.)
+ <para>Configure: displays the consumer details and allows user to edit them</para>
</listitem>
<listitem>
- Activate/Deactivate: activates/deactivates a consumer, governing whether it will be available to
- provide portlets and receive portlet invocations
+ <para>Refresh: forces the consumer to retrieve the service description from the remote producer to
+ refresh
+ the local information (offered portlets, registration information, etc.)
+ </para>
</listitem>
<listitem>
- Register/Deregister: registers/deregisters a consumer based on whether registration is required
- and/or acquired
+ <para>Activate/Deactivate: activates/deactivates a consumer, governing whether it will be available to
+ provide portlets and receive portlet invocations
+ </para>
</listitem>
- <listitem>Delete: destroys the consumer, after deregisterting it if it was registered</listitem>
+ <listitem>
+ <para>Register/Deregister: registers/deregisters a consumer based on whether registration is required
+ and/or acquired
+ </para>
+ </listitem>
+ <listitem>
+ <para>Delete: destroys the consumer, after deregisterting it if it was registered</para>
+ </listitem>
</itemizedlist>
</para>
</sect2>
@@ -920,7 +984,7 @@
</para>
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/erase_registration.png" format="png" align="center" valign="middle"/>
+ <imagedata fileref="images/WSRP/erase_registration.png" format="PNG" align="center" valign="middle"/>
</imageobject>
</mediaobject>
<para>
@@ -930,7 +994,7 @@
</para>
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/erase_registration_warning.png" format="png" align="center"
+ <imagedata fileref="images/WSRP/erase_registration_warning.png" format="PNG" align="center"
valign="middle"/>
</imageobject>
</mediaobject>
@@ -970,12 +1034,12 @@
is valid or not.
</para>
<para>
- &PRODUCT_NAME; 2.6.3 introduces a web interface to configure the producer's behavior. You can access it
+ &PRODUCT_NAME; provides a web interface to configure the producer's behavior. You can access it
by clicking on the "Producer Configuration" tab of the "WSRP" page of the "admin" portal. Here's what you
should see with the default configuration:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/producer_default.png" format="png" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/producer_default.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
@@ -999,7 +1063,7 @@
state:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/producer_blank.png" format="png" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/producer_blank.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
@@ -1010,7 +1074,7 @@
registrations."). The screen should now refresh and display:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/producer_registration.png" format="png" align="center"
+ <imagedata fileref="images/WSRP/producer_registration.png" format="PNG" align="center"
valign="middle" scalefit="1"/>
</imageobject>
</mediaobject>
@@ -1026,23 +1090,27 @@
purpose:
<mediaobject>
<imageobject>
- <imagedata fileref="images/WSRP/producer_email.png" format="png" align="center" valign="middle"
+ <imagedata fileref="images/WSRP/producer_email.png" format="PNG" align="center" valign="middle"
scalefit="1"/>
</imageobject>
</mediaobject>
Press "Save" to record your modifications.
<note>
- At this time, only String (xsd:string) properties are supported. If your application requires more
- complex properties, please let us know.
+ <para>At this time, only String (xsd:string) properties are supported. If your application requires more
+ complex properties, please let us know.
+ </para>
</note>
<note>
- If consumers are already registered with the producer, modifying the configuration of required
- registration
- information will trigger the invalidation of held registrations, requiring consumers to modify their
- registration before being able to access the producer again. We saw the consumer side of that process
- in<xref linkend="reg_mod_error"/>.
+ <para>If consumers are already registered with the producer, modifying the configuration of required
+ registration
+ information will trigger the invalidation of held registrations, requiring consumers to modify their
+ registration before being able to access the producer again. We saw the consumer side of that process
+ in
+ <xref linkend="reg_mod_error"/>.
+ </para>
+
</note>
</para>
@@ -1079,11 +1147,15 @@
name of your custom property validator instead to customize the default registration policy behavior.
Note that property validators are only used by the default policy.
- <note>Since the policy or the validator are defined via their class name and dynamically loaded, it is
- important that you make sure that the identified class is available to the application server. One way
- to accomplish that is to deploy your policy implementation as JAR file in your AS instance deploy
- directory. Note also that, since both policies and validators are dynamically instantiated, they must
- provide a default, no-argument constructor.
+ <note>
+ <para>Since the policy or the validator are defined via their class name and dynamically loaded, it is
+ important that you make sure that the identified class is available to the application server. One
+ way
+ to accomplish that is to deploy your policy implementation as JAR file in your AS instance deploy
+ directory. Note also that, since both policies and validators are dynamically instantiated, they
+ must
+ provide a default, no-argument constructor.
+ </para>
</note>
</para>
</sect3>
@@ -1104,5 +1176,5 @@
</para>
</sect2>
- </sect1> -->
+ </sect1>
</chapter>
14 years, 5 months
gatein SVN: r2668 - portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium.
by do-not-reply@jboss.org
Author: mvanco(a)redhat.com
Date: 2010-04-15 16:21:00 -0400 (Thu, 15 Apr 2010)
New Revision: 2668
Modified:
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_20_019_CreateSameNameGroupPagesInSameGroup.html
Log:
UI tests: POR_20_019 test improvement - waiting on text after Save page
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_20_019_CreateSameNameGroupPagesInSameGroup.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_20_019_CreateSameNameGroupPagesInSameGroup.html 2010-04-15 18:52:25 UTC (rev 2667)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_POR_20_019_CreateSameNameGroupPagesInSameGroup.html 2010-04-15 20:21:00 UTC (rev 2668)
@@ -187,6 +187,11 @@
<td></td>
</tr>
<tr>
+ <td>waitForTextPresent</td>
+ <td>This page name already exists.</td>
+ <td></td>
+</tr>
+<tr>
<td>verifyTextPresent</td>
<td>This page name already exists.</td>
<td></td>
14 years, 5 months
gatein SVN: r2667 - portal/branches/EPP_5_0_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization.
by do-not-reply@jboss.org
Author: thomas.heute(a)jboss.com
Date: 2010-04-15 14:52:25 -0400 (Thu, 15 Apr 2010)
New Revision: 2667
Modified:
portal/branches/EPP_5_0_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization/UIGroup.java
Log:
JBEPP-306: java.io.NotSerializableException: org.exoplatform.webui.organization.UIGroup occurs when having cluster with more GateIn nodes
Modified: portal/branches/EPP_5_0_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization/UIGroup.java
===================================================================
--- portal/branches/EPP_5_0_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization/UIGroup.java 2010-04-15 18:50:37 UTC (rev 2666)
+++ portal/branches/EPP_5_0_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization/UIGroup.java 2010-04-15 18:52:25 UTC (rev 2667)
@@ -1,9 +1,11 @@
package org.exoplatform.webui.organization;
+import java.io.Serializable;
+
import org.exoplatform.services.organization.Group;
import org.gatein.common.text.EntityEncoder;
-public class UIGroup {
+public class UIGroup implements Serializable {
private Group group;
14 years, 5 months
gatein SVN: r2666 - portal/branches/EPP_5_0_0_CR01_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization.
by do-not-reply@jboss.org
Author: thomas.heute(a)jboss.com
Date: 2010-04-15 14:50:37 -0400 (Thu, 15 Apr 2010)
New Revision: 2666
Modified:
portal/branches/EPP_5_0_0_CR01_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization/UIGroup.java
Log:
JBEPP-306: java.io.NotSerializableException: org.exoplatform.webui.organization.UIGroup occurs when having cluster with more GateIn nodes
Modified: portal/branches/EPP_5_0_0_CR01_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization/UIGroup.java
===================================================================
--- portal/branches/EPP_5_0_0_CR01_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization/UIGroup.java 2010-04-15 18:48:44 UTC (rev 2665)
+++ portal/branches/EPP_5_0_0_CR01_Branch/webui/eXo/src/main/java/org/exoplatform/webui/organization/UIGroup.java 2010-04-15 18:50:37 UTC (rev 2666)
@@ -1,9 +1,11 @@
package org.exoplatform.webui.organization;
+import java.io.Serializable;
+
import org.exoplatform.services.organization.Group;
import org.gatein.common.text.EntityEncoder;
-public class UIGroup {
+public class UIGroup implements Serializable {
private Group group;
14 years, 5 months
gatein SVN: r2665 - portal/branches/EPP_5_0_0_CR01_Branch/portlet/exoadmin/src/main/java/org/exoplatform/organization/webui/component.
by do-not-reply@jboss.org
Author: thomas.heute(a)jboss.com
Date: 2010-04-15 14:48:44 -0400 (Thu, 15 Apr 2010)
New Revision: 2665
Modified:
portal/branches/EPP_5_0_0_CR01_Branch/portlet/exoadmin/src/main/java/org/exoplatform/organization/webui/component/FindMembershipTypesPageList.java
Log:
JBEPP-305: Possible to inject javascript code into EPP input fields
Modified: portal/branches/EPP_5_0_0_CR01_Branch/portlet/exoadmin/src/main/java/org/exoplatform/organization/webui/component/FindMembershipTypesPageList.java
===================================================================
--- portal/branches/EPP_5_0_0_CR01_Branch/portlet/exoadmin/src/main/java/org/exoplatform/organization/webui/component/FindMembershipTypesPageList.java 2010-04-15 18:46:55 UTC (rev 2664)
+++ portal/branches/EPP_5_0_0_CR01_Branch/portlet/exoadmin/src/main/java/org/exoplatform/organization/webui/component/FindMembershipTypesPageList.java 2010-04-15 18:48:44 UTC (rev 2665)
@@ -28,6 +28,7 @@
import org.exoplatform.services.organization.OrganizationService;
import org.gatein.common.text.EntityEncoder;
+import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
@@ -64,7 +65,7 @@
return types;
}
- public class UIMembershipType
+ public class UIMembershipType implements Serializable
{
private MembershipType mType;
14 years, 5 months