gatein SVN: r6932 - in sandbox/as7_support/trunk/pc: jboss-as7-integration and 11 other directories.
by do-not-reply@jboss.org
Author: mstruk
Date: 2011-07-26 12:38:31 -0400 (Tue, 26 Jul 2011)
New Revision: 6932
Added:
sandbox/as7_support/trunk/pc/portal/src/main/resources/simple-portal-war/demo/demo-jpb.jsp
Removed:
sandbox/as7_support/trunk/pc/portal/src/main/resources/jboss7/simple-portal.war/WEB-INF/jboss-web.xml
Modified:
sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/build.xml
sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/lib.xml
sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/pom.xml
sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/src/main/resources/modules/org/gatein/wci/main/module.xml
sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/download-jboss.xml
sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/pom.xml
sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/src/main/resources/jboss/modules/org/jboss/as/web/main/module.xml
sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/src/main/resources/jboss/standalone/configuration/standalone.xml
sandbox/as7_support/trunk/pc/jboss-as7-integration/pom.xml
sandbox/as7_support/trunk/pc/pom.xml
sandbox/as7_support/trunk/pc/portal/pom.xml
sandbox/as7_support/trunk/pc/portal/src/assemble/simple-portal-jboss7-ear.xml
sandbox/as7_support/trunk/pc/portal/src/main/resources/jboss7/META-INF/application.xml
sandbox/as7_support/trunk/pc/portal/src/main/resources/simple-portal-war/layouts/nav/main.jsp
Log:
AS7.Final packaging
Modified: sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/build.xml
===================================================================
--- sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/build.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/build.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -24,7 +24,7 @@
<import file="lib.xml"/>
- <property name="output.dir" value="target/jboss-${jboss.as.release.version}"/>
+ <property name="output.dir" value="target/jboss-as-${jboss.as.release.version}"/>
<target name="copy-files">
<copy todir="${output.dir}">
<fileset dir="src/main/resources">
@@ -70,6 +70,8 @@
<maven-resource group="org.gatein.wci" artifact="wci-wci" />
<maven-resource group="org.gatein.common" artifact="common-common" />
<maven-resource group="org.gatein.common" artifact="common-logging" />
+ <maven-resource group="org.slf4j" artifact="slf4j-api" />
+ <maven-resource group="org.slf4j" artifact="slf4j-log4j12" />
</module-def>
<module-def name="org.gatein.pc">
Modified: sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/lib.xml
===================================================================
--- sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/lib.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/lib.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -24,7 +24,7 @@
<property name="src.dir" value="src"/>
<property name="module.repo.src.dir" value="${src.dir}/main/resources/modules"/>
- <property name="output.dir" value="target/jboss-${jboss.as.release.version}"/>
+ <property name="output.dir" value="target/jboss-as-${jboss.as.release.version}"/>
<property name="module.repo.output.dir" value="${output.dir}/modules"/>
<property name="module.xml" value="module.xml"/>
Modified: sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/pom.xml
===================================================================
--- sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/pom.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/pom.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -88,6 +88,15 @@
</dependency>
<dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </dependency>
+
+ <dependency>
<groupId>org.gatein.pc</groupId>
<artifactId>pc-api</artifactId>
<exclusions>
Modified: sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/src/main/resources/modules/org/gatein/wci/main/module.xml
===================================================================
--- sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/src/main/resources/modules/org/gatein/wci/main/module.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/jboss-as7-integration/modules/src/main/resources/modules/org/gatein/wci/main/module.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -30,6 +30,7 @@
<dependencies>
<module name="javax.servlet.api" />
<module name="org.jboss.as.web" />
- <module name="org.slf4j" />
+ <!--module name="org.slf4j" /-->
+ <module name="org.apache.log4j" />
</dependencies>
</module>
Modified: sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/download-jboss.xml
===================================================================
--- sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/download-jboss.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/download-jboss.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -10,11 +10,13 @@
</get>
<!-- Fetch .sha1 file -->
+ <!--
<get dest="${dest}.sha1" skipexisting="true">
<url url="${url}.sha1"/>
</get>
-
+ -->
<!-- Validate checksum -->
+ <!--
<local name="checksum.matches"/>
<local name="checksum.matches.fail"/>
<checksum file="${dest}" algorithm="sha" fileext=".sha1"
@@ -23,6 +25,6 @@
<equals arg1="${checksum.matches}" arg2="false"/>
</condition>
<fail if="checksum.matches.fail">Checksum validation failed! (for: ${dest})</fail>
-
+ -->
</target>
</project>
\ No newline at end of file
Modified: sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/pom.xml
===================================================================
--- sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/pom.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/pom.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -17,11 +17,11 @@
<name>GateIn - Portlet Container (JBoss AS7 Integration Packaging - SimplePortal)</name>
<properties>
- <jbossas.version>7.0.0.CR1</jbossas.version>
+ <jbossas.version>${version.jboss.as}</jbossas.version>
<jbossas.dist.version>${jbossas.version}</jbossas.dist.version>
<servers.dir>${project.basedir}/servers</servers.dir>
<jbossas.path>${servers.dir}</jbossas.path>
- <jbossas.name>jboss-${jbossas.version}</jbossas.name>
+ <jbossas.name>jboss-as-${jbossas.version}</jbossas.name>
<jbossas.dir>${jbossas.path}/${jbossas.name}</jbossas.dir>
<gatein.working.dir>${project.build.directory}/${jbossas.name}</gatein.working.dir>
<jbossas.target.dir>${gatein.working.dir}</jbossas.target.dir>
@@ -139,7 +139,7 @@
</activation>
<properties>
- <exo.projects.app.jboss7.version>jboss-7.0.0.CR1</exo.projects.app.jboss7.version>
+ <exo.projects.app.jboss7.version>jboss-as-${version.jboss.as}</exo.projects.app.jboss7.version>
<servers.dir>${exo.projects.directory.dependencies}</servers.dir>
<jbossas.name>${exo.projects.app.jboss7.version}</jbossas.name>
</properties>
@@ -272,7 +272,7 @@
</fail>
<property name="jbossas.zip"
- value="${jbossas.path}/jboss-as-build-${jbossas.dist.version}.zip"/>
+ value="${jbossas.path}/jboss-as-${jbossas.dist.version}.zip"/>
<!-- Autocreate servers.dir if necessary -->
<mkdir dir="${jbossas.path}"/>
@@ -281,7 +281,7 @@
<ant antfile="${project.basedir}/download-jboss.xml">
<target name="download-jboss"/>
<property name="url"
- value="http://download.jboss.org/jbossas/7.0/jboss-${jbossas.dist.version}/jboss..."/>
+ value="http://download.jboss.org/jbossas/7.0/jboss-as-${jbossas.dist.version}/jb..."/>
<property name="dest" value="${jbossas.zip}"/>
</ant>
Modified: sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/src/main/resources/jboss/modules/org/jboss/as/web/main/module.xml
===================================================================
--- sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/src/main/resources/jboss/modules/org/jboss/as/web/main/module.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/src/main/resources/jboss/modules/org/jboss/as/web/main/module.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -25,7 +25,7 @@
<module xmlns="urn:jboss:module:1.0" name="org.jboss.as.web">
<resources>
- <resource-root path="jboss-as-web-7.0.0.CR1.jar"/>
+ <resource-root path="jboss-as-web-7.0.0.Final.jar"/>
<resource-root path="jasper-jdt-7.0.0.Beta8.jar"/>
<resource-root path="jbossweb-7.0.0.CR4.jar"/>
<!-- Insert resources here -->
Modified: sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/src/main/resources/jboss/standalone/configuration/standalone.xml
===================================================================
--- sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/src/main/resources/jboss/standalone/configuration/standalone.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/jboss-as7-integration/pkg/src/main/resources/jboss/standalone/configuration/standalone.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -213,6 +213,7 @@
<module identifier="org.apache.aries.jmx" startlevel="2"/>
<module identifier="org.apache.felix.eventadmin" startlevel="2"/>
<module identifier="org.apache.felix.metatype" startlevel="2"/>
+ <module identifier="org.apache.felix.scr" startlevel="2"/>
<module identifier="org.apache.felix.webconsole" startlevel="2"/>
<module identifier="org.jboss.osgi.jmx" startlevel="2"/>
<module identifier="org.jboss.osgi.http" startlevel="2"/>
@@ -244,10 +245,11 @@
</core-environment>
<coordinator-environment default-timeout="300"/>
</subsystem>
- <subsystem xmlns="urn:jboss:domain:web:1.0">
+ <subsystem xmlns="urn:jboss:domain:web:1.0" default-virtual-server="default-host">
<connector name="http" scheme="http" protocol="HTTP/1.1" socket-binding="http"/>
- <virtual-server name="localhost" enable-welcome-root="true">
- <alias name="example.com" />
+ <virtual-server name="default-host" enable-welcome-root="true">
+ <alias name="localhost" />
+ <alias name="example.com" />
</virtual-server>
</subsystem>
<subsystem xmlns="urn:jboss:domain:weld:1.0" />
Modified: sandbox/as7_support/trunk/pc/jboss-as7-integration/pom.xml
===================================================================
--- sandbox/as7_support/trunk/pc/jboss-as7-integration/pom.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/jboss-as7-integration/pom.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -16,8 +16,8 @@
<name>GateIn - Portlet Container (JBoss AS7 Integration)</name>
<properties>
- <version.jboss.as>7.0.0.CR1</version.jboss.as>
- <jboss.as.release.version>7.0.0.CR1</jboss.as.release.version>
+ <version.jboss.as>7.0.0.Final</version.jboss.as>
+ <jboss.as.release.version>${version.jboss.as}</jboss.as.release.version>
<version.org.jboss.vfs>3.0.0.GA</version.org.jboss.vfs>
</properties>
Modified: sandbox/as7_support/trunk/pc/pom.xml
===================================================================
--- sandbox/as7_support/trunk/pc/pom.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/pom.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -47,6 +47,7 @@
<properties>
<version.gatein.common>2.0.4-Beta03</version.gatein.common>
+ <version.slf4j>1.5.8</version.slf4j>
<version.gatein.wci>2.1.0-Beta05-SNAPSHOT</version.gatein.wci>
<version.apache.portals.bridges>1.0.4</version.apache.portals.bridges>
<version.apache.taglibs>1.1.2</version.apache.taglibs>
@@ -93,6 +94,18 @@
</dependency>
<dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>${version.slf4j}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ <version>${version.slf4j}</version>
+ </dependency>
+
+ <dependency>
<groupId>org.gatein.common</groupId>
<artifactId>common-mc</artifactId>
<version>${version.gatein.common}</version>
Modified: sandbox/as7_support/trunk/pc/portal/pom.xml
===================================================================
--- sandbox/as7_support/trunk/pc/portal/pom.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/portal/pom.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -180,6 +180,14 @@
<version>${project.version}</version>
<classifier>shoppingcart-event</classifier>
</dependency>
+
+ <dependency>
+ <groupId>org.jboss.portletbridge.examples</groupId>
+ <artifactId>jsf2portlet</artifactId>
+ <version>3.0.0.Beta1</version>
+ <type>war</type>
+ <scope>runtime</scope>
+ </dependency>
</dependencies>
<build>
Modified: sandbox/as7_support/trunk/pc/portal/src/assemble/simple-portal-jboss7-ear.xml
===================================================================
--- sandbox/as7_support/trunk/pc/portal/src/assemble/simple-portal-jboss7-ear.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/portal/src/assemble/simple-portal-jboss7-ear.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -18,8 +18,13 @@
<include>org.gatein.pc:pc-samples:jar:*:*</include>
</includes>
</dependencySet>
-
<dependencySet>
+ <outputDirectory>.</outputDirectory>
+ <includes>
+ <include>org.jboss.portletbridge.examples:jsf2portlet:war:*</include>
+ </includes>
+ </dependencySet>
+ <dependencySet>
<outputDirectory>simple-portal.war/WEB-INF/lib</outputDirectory>
<includes>
Modified: sandbox/as7_support/trunk/pc/portal/src/main/resources/jboss7/META-INF/application.xml
===================================================================
--- sandbox/as7_support/trunk/pc/portal/src/main/resources/jboss7/META-INF/application.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/portal/src/main/resources/jboss7/META-INF/application.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -50,6 +50,12 @@
</web>
</module>
<module>
+ <web>
+ <web-uri>jsf2portlet-3.0.0.Beta1.war</web-uri>
+ <context-root>/jsf2-portlet</context-root>
+ </web>
+ </module>
+ <module>
<ejb>samples-shoppingcart-event.jar</ejb>
</module>
</application>
\ No newline at end of file
Deleted: sandbox/as7_support/trunk/pc/portal/src/main/resources/jboss7/simple-portal.war/WEB-INF/jboss-web.xml
===================================================================
--- sandbox/as7_support/trunk/pc/portal/src/main/resources/jboss7/simple-portal.war/WEB-INF/jboss-web.xml 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/portal/src/main/resources/jboss7/simple-portal.war/WEB-INF/jboss-web.xml 2011-07-26 16:38:31 UTC (rev 6932)
@@ -1,73 +0,0 @@
-<?xml version="1.0"?>
-<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- ~ JBoss, a division of Red Hat ~
- ~ Copyright 2011, 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. ~
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
-
-<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss-web_6_0.xsd"
- version="6.0">
-<!--
-xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss-web_7_0.xsd"
- version="7.0"
- -->
- <!--listener>
- <class-name>org.gatein.pc.portal.JBossWebContainerListener</class-name>
- <listener-type>CONTAINER</listener-type>
- <param>
- <description>Debug level (DEBUG, INFO, WARN, ERROR)</description>
- <param-name>debugLevel</param-name>
- <param-value>debug</param-value>
- </param>
- </listener-->
- <!--listener>
- <class-name>org.gatein.wci.jboss.JB6WebLifecycleListener</class-name>
- <listener-type>LIFECYCLE</listener-type>
- <param>
- <description>Perform cross-context logout? (true by default)</description>
- <param-name>crossContextLogout</param-name>
- <param-value>true</param-value>
- </param>
- </listener-->
-
- <!--listener>
- <class-name>org.gatein.pc.portal.JBossWebLifecycleListener</class-name>
- <listener-type>LIFECYCLE</listener-type>
- <param>
- <description>Perform cross-context logout? (true by default)</description>
- <param-name>crossContextLogout</param-name>
- <param-value>true</param-value>
- </param>
- </listener-->
- <!--listener>
- <class-name>org.gatein.pc.portal.JBossWebServletInstanceListener</class-name>
- <listener-type>SERVLET_INSTANCE</listener-type>
- </listener>
- <listener>
- <class-name>org.gatein.pc.portal.JBossWebServletContainerListener</class-name>
- <listener-type>SERVLET_CONTAINER</listener-type>
- </listener>
- <listener>
- <class-name>org.gatein.pc.portal.JBossWebServletLifecycleListener</class-name>
- <listener-type>SERVLET_LIFECYCLE</listener-type>
- </listener-->
-</jboss-web>
\ No newline at end of file
Added: sandbox/as7_support/trunk/pc/portal/src/main/resources/simple-portal-war/demo/demo-jpb.jsp
===================================================================
--- sandbox/as7_support/trunk/pc/portal/src/main/resources/simple-portal-war/demo/demo-jpb.jsp (rev 0)
+++ sandbox/as7_support/trunk/pc/portal/src/main/resources/simple-portal-war/demo/demo-jpb.jsp 2011-07-26 16:38:31 UTC (rev 6932)
@@ -0,0 +1,17 @@
+<%@ page contentType="text/html" %>
+<%@ page language="java" %>
+<%@ taglib prefix="xportal" tagdir="/WEB-INF/tags/portal" %>
+<%@ taglib uri="/WEB-INF/portal.tld" prefix="portal" %>
+<%@ page isELIgnored="false" %>
+
+<%@ include file="/layouts/header.jsp" %>
+
+<portal:page>
+ <xportal:1column>
+ <jsp:attribute name="leftcol">
+ <xportal:portlet name="jsf2portlet" applicationName="jsf2-portlet"/>
+ </jsp:attribute>
+ </xportal:1column>
+</portal:page>
+
+<%@ include file="/layouts/footer.jsp" %>
Modified: sandbox/as7_support/trunk/pc/portal/src/main/resources/simple-portal-war/layouts/nav/main.jsp
===================================================================
--- sandbox/as7_support/trunk/pc/portal/src/main/resources/simple-portal-war/layouts/nav/main.jsp 2011-07-26 15:30:55 UTC (rev 6931)
+++ sandbox/as7_support/trunk/pc/portal/src/main/resources/simple-portal-war/layouts/nav/main.jsp 2011-07-26 16:38:31 UTC (rev 6932)
@@ -35,6 +35,9 @@
<li>
<a href="${pageContext.request.contextPath}/demo/demo5.jsp" class="${fn:substringAfter(pageContext.request.servletPath, 'demo/') == 'demo5.jsp' ? 'selected' : ''}">Demo5</a>
</li>
+ <li>
+ <a href="${pageContext.request.contextPath}/demo/demo-jpb.jsp" class="${fn:substringAfter(pageContext.request.servletPath, 'demo/') == 'demo-jpb.jsp' ? 'selected' : ''}">PortletBridge Demo</a>
+ </li>
<!--
<li>
<a href="${pageContext.request.contextPath}/demo/jsr-301.jsp" class="${fn:substringAfter(pageContext.request.servletPath, 'demo/') == 'jsr-301.jsp' ? 'selected' : ''}">JSR-301 Demo</a>
13 years, 5 months
gatein SVN: r6931 - in portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl: lifecycle and 1 other directory.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2011-07-26 11:30:55 -0400 (Tue, 26 Jul 2011)
New Revision: 6931
Added:
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/LifecycleManager.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/lifecycle/
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/lifecycle/NoOpLifecycleManager.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/lifecycle/RequestLifecycleManager.java
Modified:
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java
Log:
- Added LifecycleManager interface to decouple lifecycle management (needed for JCR access) from GateIn itself. By default, GateIn uses the NoOpLifecycleManager since lifecycle will be automatically managed in a portlet environment. However, in the context of an extension, it might be needed to provide manual lifecycle management using RequestLifecycleManager for example.
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java 2011-07-26 12:45:24 UTC (rev 6930)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java 2011-07-26 15:30:55 UTC (rev 6931)
@@ -27,7 +27,6 @@
import org.exoplatform.application.registry.ApplicationRegistryService;
import org.exoplatform.container.ExoContainer;
import org.exoplatform.container.ExoContainerContext;
-import org.exoplatform.container.component.RequestLifeCycle;
import org.exoplatform.container.configuration.ConfigurationManager;
import org.exoplatform.container.xml.InitParams;
import org.exoplatform.portal.config.Query;
@@ -58,6 +57,7 @@
import org.gatein.api.util.IterableIdentifiableCollection;
import org.gatein.api.util.Type;
import org.gatein.common.util.ParameterValidation;
+import org.gatein.portal.api.impl.lifecycle.NoOpLifecycleManager;
import org.gatein.portal.api.impl.portal.GroupSiteImpl;
import org.gatein.portal.api.impl.portal.PageImpl;
import org.gatein.portal.api.impl.portal.PortalImpl;
@@ -70,7 +70,7 @@
import java.util.regex.Pattern;
/** @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a> */
-public class GateInImpl implements GateIn, Startable
+public class GateInImpl implements GateIn, Startable, LifecycleManager
{
private static final Query<PortalData> PORTALS = new Query<PortalData>(SiteType.PORTAL.getName(), null, PortalData.class);
private static final Query<DashboardData> DASHBOARDS = new Query<DashboardData>(SiteType.USER.getName(), null, DashboardData.class);
@@ -103,12 +103,18 @@
private ApplicationRegistryService registryService;
private GadgetRegistryService gadgetService;
private SourceStorage sourceStorage;
+ private LifecycleManager lcManager = new NoOpLifecycleManager();
public GateInImpl(ExoContainerContext context, InitParams params, ConfigurationManager configurationManager)
{
container = context.getContainer();
}
+ public void setLifecycleManager(LifecycleManager lcManager)
+ {
+ this.lcManager = lcManager;
+ }
+
public IterableIdentifiableCollection<Portal> getPortals()
{
try
@@ -139,11 +145,6 @@
}
}
- public void end()
- {
- RequestLifeCycle.end();
- }
-
public Portal getPortal(Id<Portal> portalId)
{
PortalData portalData = getPortalDataFor(portalId);
@@ -376,9 +377,14 @@
public void begin()
{
- RequestLifeCycle.begin(container);
+ lcManager.begin();
}
+ public void end()
+ {
+ lcManager.end();
+ }
+
public GadgetRegistryService getGadgetService()
{
return gadgetService;
Added: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/LifecycleManager.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/LifecycleManager.java (rev 0)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/LifecycleManager.java 2011-07-26 15:30:55 UTC (rev 6931)
@@ -0,0 +1,31 @@
+/*
+* JBoss, a division of Red Hat
+* Copyright 2008, 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.portal.api.impl;
+
+/** @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a> */
+public interface LifecycleManager
+{
+ void begin();
+
+ void end();
+}
Added: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/lifecycle/NoOpLifecycleManager.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/lifecycle/NoOpLifecycleManager.java (rev 0)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/lifecycle/NoOpLifecycleManager.java 2011-07-26 15:30:55 UTC (rev 6931)
@@ -0,0 +1,40 @@
+/*
+* JBoss, a division of Red Hat
+* Copyright 2008, 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.portal.api.impl.lifecycle;
+
+import org.gatein.portal.api.impl.LifecycleManager;
+
+/** @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a> */
+public class NoOpLifecycleManager implements LifecycleManager
+{
+
+ public void begin()
+ {
+ // do nothing
+ }
+
+ public void end()
+ {
+ // do nothing
+ }
+}
Added: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/lifecycle/RequestLifecycleManager.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/lifecycle/RequestLifecycleManager.java (rev 0)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/lifecycle/RequestLifecycleManager.java 2011-07-26 15:30:55 UTC (rev 6931)
@@ -0,0 +1,48 @@
+/*
+* JBoss, a division of Red Hat
+* Copyright 2008, 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.portal.api.impl.lifecycle;
+
+import org.exoplatform.container.ExoContainer;
+import org.exoplatform.container.component.RequestLifeCycle;
+import org.gatein.portal.api.impl.LifecycleManager;
+
+/** @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a> */
+public class RequestLifecycleManager implements LifecycleManager
+{
+ private final ExoContainer container;
+
+ public RequestLifecycleManager(ExoContainer container)
+ {
+ this.container = container;
+ }
+
+ public void begin()
+ {
+ RequestLifeCycle.begin(container);
+ }
+
+ public void end()
+ {
+ RequestLifeCycle.end();
+ }
+}
13 years, 5 months
gatein SVN: r6930 - portal/branches/api.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2011-07-26 08:45:24 -0400 (Tue, 26 Jul 2011)
New Revision: 6930
Modified:
portal/branches/api/pom.xml
Log:
- Updated to API version 1.0.0-Alpha01.
Modified: portal/branches/api/pom.xml
===================================================================
--- portal/branches/api/pom.xml 2011-07-26 05:04:46 UTC (rev 6929)
+++ portal/branches/api/pom.xml 2011-07-26 12:45:24 UTC (rev 6930)
@@ -50,7 +50,7 @@
<org.picketlink.idm>1.3.0.Alpha03</org.picketlink.idm>
<org.gatein.wsrp.version>2.1.0-Beta04</org.gatein.wsrp.version>
<org.gatein.mop.version>1.1.0-Beta05</org.gatein.mop.version>
- <org.gatein.api.version>1.0.0-Alpha01-SNAPSHOT</org.gatein.api.version>
+ <org.gatein.api.version>1.0.0-Alpha01</org.gatein.api.version>
<org.slf4j.version>1.5.8</org.slf4j.version>
<commons-pool.version>1.5.5</commons-pool.version>
<rhino.version>1.6R5</rhino.version>
13 years, 5 months
gatein SVN: r6929 - in epp/docs/branches/5.1/Reference_Guide/en-US: extras and 5 other directories.
by do-not-reply@jboss.org
Author: smumford
Date: 2011-07-26 01:04:46 -0400 (Tue, 26 Jul 2011)
New Revision: 6929
Added:
epp/docs/branches/5.1/Reference_Guide/en-US/extras/Advanced_Development_JCR_as_managed_datasources/
epp/docs/branches/5.1/Reference_Guide/en-US/extras/Advanced_Development_JCR_as_managed_datasources/gatein-ds.xml
epp/docs/branches/5.1/Reference_Guide/en-US/modules/Advanced/JCR/as_managed_datasources.xml
Modified:
epp/docs/branches/5.1/Reference_Guide/en-US/Book_Info.xml
epp/docs/branches/5.1/Reference_Guide/en-US/Reference_Guide.ent
epp/docs/branches/5.1/Reference_Guide/en-US/Revision_History.xml
epp/docs/branches/5.1/Reference_Guide/en-US/modules/Advanced/JCR.xml
epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity.xml
epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity/LDAP.xml
epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity/SSO.xml
epp/docs/branches/5.1/Reference_Guide/en-US/modules/Introduction.xml
epp/docs/branches/5.1/Reference_Guide/en-US/modules/WSRP.xml
Log:
Updated for 5.1.1 Release.
Modified: epp/docs/branches/5.1/Reference_Guide/en-US/Book_Info.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/Book_Info.xml 2011-07-26 04:48:07 UTC (rev 6928)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/Book_Info.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -4,24 +4,24 @@
%BOOK_ENTITIES;
]>
<bookinfo id="book-Reference_Guide">
- <title>Reference Guide</title>
+ <title>Reference Guide</title>
<subtitle>An in-depth guide to Enterprise Portal Platform &VZ;</subtitle>
- <productname>JBoss Enterprise Portal Platform</productname>
- <productnumber>5.1</productnumber>
- <edition>2</edition>
- <pubsnumber>5.1.1</pubsnumber>
- <abstract>
- <para>
- This Reference Guide is a high-level usage document. It deals with more advanced topics than the Installation and User Guides, adding new content or taking concepts discussed in the earlier documents further. It aims to provide supporting documentation for advanced users of the JBoss Enterprise Portal Platform product. Its primary focus is on advanced use of the product and it assumes an intermediate or advanced knowledge of the technology and terms.
- </para>
- </abstract>
+ <productname>JBoss Enterprise Portal Platform</productname>
+ <productnumber>5.1</productnumber>
+ <edition>2</edition>
+ <pubsnumber>5.1.2</pubsnumber>
+ <abstract>
+ <para>
+ This Reference Guide is a high-level usage document. It deals with more advanced topics than the Installation and User Guides, adding new content or taking concepts discussed in the earlier documents further. It aims to provide supporting documentation for advanced users of the JBoss Enterprise Portal Platform product. Its primary focus is on advanced use of the product and it assumes an intermediate or advanced knowledge of the technology and terms.
+ </para>
+ </abstract>
<corpauthor>
<inlinemediaobject>
- <imageobject>
- <imagedata fileref="Common_Content/images/title_logo.svg" format="SVG" />
- </imageobject>
- </inlinemediaobject>
- </corpauthor>
+ <imageobject>
+ <imagedata fileref="Common_Content/images/title_logo.svg" format="SVG" />
+ </imageobject>
+ </inlinemediaobject>
+ </corpauthor>
<!--FOR PUBLICAN -->
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
@@ -33,5 +33,5 @@
</xi:fallback>
</xi:include>
- <xi:include href="Author_Group.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="Author_Group.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
</bookinfo>
Modified: epp/docs/branches/5.1/Reference_Guide/en-US/Reference_Guide.ent
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/Reference_Guide.ent 2011-07-26 04:48:07 UTC (rev 6928)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/Reference_Guide.ent 2011-07-26 05:04:46 UTC (rev 6929)
@@ -10,7 +10,7 @@
<!ENTITY BZURL "<ulink url='https://bugzilla.redhat.com/enter_bug.cgi?product=JBoss%20Enterpri...'>http://bugzilla.redhat.com/</ulink>">
<!-- Corporate Specifics: -->
-<!ENTITY YEAR "2010">
+<!ENTITY YEAR "2011">
<!ENTITY HOLDER "Red Hat, Inc">
<!-- Version Specifcs: -->
Modified: epp/docs/branches/5.1/Reference_Guide/en-US/Revision_History.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/Revision_History.xml 2011-07-26 04:48:07 UTC (rev 6928)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/Revision_History.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -4,38 +4,52 @@
%BOOK_ENTITIES;
]>
<appendix id="appe-Reference_Guide-Revision_History">
- <title>Revision History</title>
- <simpara>
- <revhistory>
- <revision>
- <revnumber>2-5.1.1</revnumber>
- <date>Monday June 27 2011</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Updated for 5.1.1 Release.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-5.8</revnumber>
- <date>Wed June 22 2011</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Incorporated new Bugzilla feedback link.</member>
- <member>Corrected minor typographical errors.</member>
- </simplelist>
- </revdescription>
- </revision>
+ <title>Revision History</title>
+ <simpara>
+ <revhistory>
+ <revision>
+ <revnumber>2-5.1.2</revnumber>
+ <date>Fri Jul 15 2011</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email></email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Updated for 5.1.1 Release.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <!--<revision>
+ <revnumber>2-5.1.1</revnumber>
+ <date>Monday June 27 2011</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Updated for 5.1.1 Release.</member>
+ </simplelist>
+ </revdescription>
+ </revision>-->
+ <revision>
+ <revnumber>1-5.8</revnumber>
+ <date>Wed June 22 2011</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Incorporated new Bugzilla feedback link.</member>
+ <member>Corrected minor typographical errors.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
<revision>
<revnumber>1-5.7</revnumber>
<date>Mon May 30 2011</date>
@@ -218,7 +232,7 @@
</simplelist>
</revdescription>
</revision>
- <!-- <revision>
+ <!-- <revision>
<revnumber>1-1.20</revnumber>
<date>Mon Nov 29 2010</date>
<author>
@@ -261,7 +275,7 @@
</simplelist>
</revdescription>
</revision>
- <revision>
+ <revision>
<revnumber>1-1.15</revnumber>
<date>Thu Nov 11 2010</date>
<author>
@@ -305,146 +319,146 @@
</simplelist>
</revdescription>
</revision>
-<!-- <revision>
- <revnumber>1-1.11</revnumber>
- <date>Thu Sep 30 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Edit Product version number for publishing restructure.</member>
- </simplelist>
- </revdescription>
- </revision>
+<!-- <revision>
+ <revnumber>1-1.11</revnumber>
+ <date>Thu Sep 30 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Edit Product version number for publishing restructure.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
<revision>
- <revnumber>1-1.10</revnumber>
- <date>Thu Sep 23 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Split <filename>repository-configuration.xml</filename> code sample into two smaller samples (workaround callout pointer bug). Removed further references to components in standalone mode.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-1.9</revnumber>
- <date>Wed Sep 15 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Started content for "Debugging Resource Bundle Usage" section. Started homoginizing filepath variables.</member>
- </simplelist>
- </revdescription>
- </revision> -->
- <revision>
- <revnumber>1-1.8</revnumber>
- <date>Fri Aug 27 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Added new concept definitions to JCR chapter.</member>
- </simplelist>
- </revdescription>
- </revision>
-<!-- <revision>
- <revnumber>1-1.7</revnumber>
- <date>Mon Aug 9 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Further clean-up of programlisting rendering.</member>
- </simplelist>
- </revdescription>
- </revision> -->
- <revision>
- <revnumber>1-1.6</revnumber>
- <date>Thu Aug 5 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Extracted code snippets.</member>
- </simplelist>
- </revdescription>
- </revision>
-<!-- <revision>
- <revnumber>1-1.5</revnumber>
- <date>Thu Jul 29 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Updated for 5.0.1 Release. Extracted programlistings/structure changes.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-1.1</revnumber>
- <date>Sat Mar 20 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Update for Staging</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-1.1</revnumber>
- <date>Mon Feb 15 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>First complete edit</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-1.0</revnumber>
- <date>Wed Nov 11 2009</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Initial creation of book by publican</member>
- </simplelist>
- </revdescription>
- </revision> -->
- </revhistory>
- </simpara>
+ <revnumber>1-1.10</revnumber>
+ <date>Thu Sep 23 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Split <filename>repository-configuration.xml</filename> code sample into two smaller samples (workaround callout pointer bug). Removed further references to components in standalone mode.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-1.9</revnumber>
+ <date>Wed Sep 15 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Started content for "Debugging Resource Bundle Usage" section. Started homoginizing filepath variables.</member>
+ </simplelist>
+ </revdescription>
+ </revision> -->
+ <revision>
+ <revnumber>1-1.8</revnumber>
+ <date>Fri Aug 27 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Added new concept definitions to JCR chapter.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+<!-- <revision>
+ <revnumber>1-1.7</revnumber>
+ <date>Mon Aug 9 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Further clean-up of programlisting rendering.</member>
+ </simplelist>
+ </revdescription>
+ </revision> -->
+ <revision>
+ <revnumber>1-1.6</revnumber>
+ <date>Thu Aug 5 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Extracted code snippets.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+<!-- <revision>
+ <revnumber>1-1.5</revnumber>
+ <date>Thu Jul 29 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Updated for 5.0.1 Release. Extracted programlistings/structure changes.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-1.1</revnumber>
+ <date>Sat Mar 20 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Update for Staging</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-1.1</revnumber>
+ <date>Mon Feb 15 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>First complete edit</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-1.0</revnumber>
+ <date>Wed Nov 11 2009</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Initial creation of book by publican</member>
+ </simplelist>
+ </revdescription>
+ </revision> -->
+ </revhistory>
+ </simpara>
</appendix>
Added: epp/docs/branches/5.1/Reference_Guide/en-US/extras/Advanced_Development_JCR_as_managed_datasources/gatein-ds.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/extras/Advanced_Development_JCR_as_managed_datasources/gatein-ds.xml (rev 0)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/extras/Advanced_Development_JCR_as_managed_datasources/gatein-ds.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ~ JBoss, a division of Red Hat ~
+ ~ Copyright 2009, 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. ~
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
+
+<datasources>
+ <no-tx-datasource>
+ <jndi-name>gatein-idm</jndi-name>
+ <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}gatein${/}hypersonic${/}gatein-idm-localDB</connection-url>
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+ <user-name>sa</user-name>
+ <password></password>
+
+ <min-pool-size>5</min-pool-size>
+ <max-pool-size>20</max-pool-size>
+ <idle-timeout-minutes>0</idle-timeout-minutes>
+ <prepared-statement-cache-size>32</prepared-statement-cache-size>
+ </no-tx-datasource>
+
+ <no-tx-datasource>
+ <jndi-name>gatein-jcr</jndi-name>
+ <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>
+
+ <min-pool-size>5</min-pool-size>
+ <max-pool-size>20</max-pool-size>
+ <idle-timeout-minutes>0</idle-timeout-minutes>
+ <prepared-statement-cache-size>32</prepared-statement-cache-size>
+ </no-tx-datasource>
+</datasources>
Added: epp/docs/branches/5.1/Reference_Guide/en-US/modules/Advanced/JCR/as_managed_datasources.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/modules/Advanced/JCR/as_managed_datasources.xml (rev 0)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/modules/Advanced/JCR/as_managed_datasources.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -0,0 +1,694 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "../../../Reference_Guide.ent">
+%BOOK_ENTITIES;
+]>
+<!-- Resolves JBEPP-690-->
+<!-- Source Metadata
+This section is based on content synthesized from:
+
+The EAP Admin and Config Guide
+URL: http://docs/docs/en-US/JBoss_Enterprise_Application_Platform/5/html-singl...
+Author: ECS
+License: CC-BY-SA
+
+The eXo Platoform Reference Guide
+URL: http://docs.exoplatform.org/PLF30/refguide/html/ch-how-to-use-managed-dat...
+Author: eXo
+Licence: No licence provided in document
+
+The JBoss Application Server 4.2.2 Administration And Development Guide
+URL: http://docs.jboss.org/jbossas/docs/Server_Configuration_Guide/4/html/Conn...
+Authors: Alessio Soldano, Andreadis Dimitris, Bill Burke, Brian Stansberry, Carlo de Wolf, Galder Zamarreno, Heiko Braun, Michael Yuan, Roger Pearse, Shelly Mc Gowan, Thomas Diesler
+Licence: No licence provided in document
+-->
+
+<section>
+ <title><remark>Using AS Managed Datasources</remark></title>
+ <important>
+ <title>Supported Datasources</title>
+ <para>
+ It is important to note that JBoss Enterprise Portal Platform's JCR only supports <emphasis role="bold">no-tx-datasource</emphasis> datasources.
+ </para>
+ </important>
+ <para>
+ JBoss Enterprise Portal Platform uses JBoss's simplified datasource centric descriptor. This simplified configuration descriptor is deployed the same directory as other deployable components (e.g.; <filename><replaceable><JBOSS_HOME></replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/</filename>).
+ </para>
+ <para>
+ In order for the AS to recognize the datasources, they must adhere to the <filename><replaceable>DBNAME</replaceable>-ds.xml</filename> naming convention.
+ </para>
+ <para>
+ Example datasources for all certified databases are located in the <filename><replaceable><JBOSS_HOME></replaceable>/docs/examples/jca/</filename> directory. Edit the datasource that corresponds to your database, then copy it to the <filename>deploy/ </filename> directory before restarting the application server.
+ </para>
+ <para>
+ The next section discusses the various parameters used to configure a datasource, however, at a minimum, you will need to set the <parameter>connection-url</parameter>, <parameter>user-name</parameter>, and <parameter>password</parameter> as required for your database.
+ </para>
+ <section>
+ <title>Datasource Configuration</title>
+ <warning>
+ <title>You must change your database</title>
+ <para>
+ The default persistence configuration works out of the box with
+ Hypersonic (HSQLDB) so that the JBoss Enterprise Platforms are able to
+ run "out of the box". However, <emphasis>Hypersonic is not supported in production and should not be used in a production environment.</emphasis>
+ </para>
+ <para>
+ Known issues with the Hypersonic Database include:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ no transaction isolation
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ thread and socket leaks (<methodname>connection.close()</methodname>
+ does not tidy up resources)
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ persistence quality (logs commonly become corrupted after a failure,
+ preventing automatic recovery)
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ database corruption
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ stability under load (database processes cease when dealing with
+ too much data)
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ not viable in clustered environments
+ </para>
+ </listitem>
+ </itemizedlist>
+ </warning>
+
+ <section>
+ <title>Declaring the datasource</title>
+ <para>
+ As mentioned above, datasource files are deployed alongside other deployable items in your <filename><replaceable><JBOSS_HOME></replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/</filename> directory.
+ </para>
+ <para>
+ Although the examples in <filename><replaceable><JBOSS_HOME></replaceable>/docs/examples/jca/</filename> focus on individual datasources, your <filename><replaceable>DBNAME</replaceable>-ds.xml</filename> file can contain all the required datasources for your portal instance, as shown in the default JBoss Enterprise Portal Platform datasource file below:
+ </para>
+<programlisting language="XML" role="XML"><xi:include href="../../../extras/Advanced_Development_JCR_as_managed_datasources/gatein-ds.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
+ </section>
+
+ <section>
+ <title>Datasource Paramenters</title>
+ <para>
+ The following list contains parameters used in configuring a datasource:
+ </para>
+ <variablelist>
+ <title>Common Datasource Parameters</title>
+ <varlistentry>
+ <term><mbean></term>
+ <listitem>
+ <para>
+ A standard JBoss MBean deployment.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><depends></term>
+ <listitem>
+ <para>
+ The <literal>ObjectName</literal> of an MBean service this <classname>ConnectionFactory</classname>
+ or<classname>DataSource</classname> deployment depends upon. The connection manager service will not be started until the dependent services have been started.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><jndi-name></term>
+ <listitem>
+ <para>
+ The JNDI name under which the Datasource should be bound. Note that this name is relative to the <wordasword>java:/</wordasword> context, unless <parameter>use-java-context</parameter> is set to false. DataSource wrappers are not usable outside of the server VM, so they are normally bound under the <wordasword>java:/</wordasword>, which isn't shared outside the local VM.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><use-java-context></term>
+ <listitem>
+ <para>
+ Boolean value indicating whether the jndi-name should be prefixed with <wordasword>java:</wordasword>. This prefix causes the Datasource to only be accessible from within the JBoss virtual machine. Defaults to <literal>TRUE</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><user-name></term>
+ <listitem>
+ <para>
+ The user name used to create the connection to the datasource. The actual username may be overridden by the application code getConnection parameters or the connection creation context JAAS Subject.
+ </para>
+ <note>
+ <title>Security</title>
+ <para>This is not used when security is configured.</para>
+ </note>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><password></term>
+ <listitem>
+ <para>
+ The password used to create the connection to the datasource.
+ </para>
+ <note>
+ <title>Security</title>
+ <para>This is not used when security is configured.</para>
+ </note>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><transaction-isolation></term>
+ <listitem>
+ <para>
+ The <literal>java.sql.Connection</literal> transaction isolation of the connection. If not specified, the database-provided default is used.
+ </para>
+ <itemizedlist>
+ <title>Possible values for <transaction-isolation></title>
+ <listitem>
+ <para>TRANSACTION_READ_UNCOMMITTED</para>
+ </listitem>
+ <listitem>
+ <para>TRANSACTION_READ_COMMITTED</para>
+ </listitem>
+ <listitem>
+ <para>TRANSACTION_REPEATABLE_READ</para>
+ </listitem>
+ <listitem>
+ <para>TRANSACTION_SERIALIZABLE</para>
+ </listitem>
+ <listitem>
+ <para>TRANSACTION_NONE</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><new-connection-sql></term>
+ <listitem>
+ <para>
+ An SQL statement that is executed against each new connection. This can be used to set up the connection schema, for instance.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><check-valid-connection-sql></term>
+ <listitem>
+ <para>
+ An SQL statement that is executed before the connection is checked out from the pool to make sure it is still valid. If the SQL statement fails, the connection is closed and a new one is created.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><valid-connection-checker-class-name></term>
+ <listitem>
+ <para>
+ A class that checks whether a connection is valid using a vendor-specific mechanism.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><exception-sorter-class-name></term>
+ <listitem>
+ <para>
+ A class that parses vendor-specific messages to determine whether SQL errors are fatal, and destroys the connection if so. If empty, no errors are treated as fatal.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><track-statements></term>
+ <listitem>
+ <para>
+ Whether to monitor for unclosed Statements and ResultSets and issue warnings when they haven't been closed. The default value is <literal>NOWARN</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><prepared-statement-cache-size></term>
+ <listitem>
+ <para>
+ The number of prepared statements per connection to be kept open and reused in subsequent requests. They are stored in a <firstterm>Least Recently Used (LRU)</firstterm> cache. The default value is <literal>0</literal>, meaning that no cache is kept.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><share-prepared-statements></term>
+ <listitem>
+ <para>
+ When the <prepared-statement-cache-size> is non-zero, determines whether two requests in the same transaction should return the same statement. Defaults to <literal>FALSE</literal>.
+ </para>
+ <example>
+ <title>Using <share-prepared-statements></title>
+ <para>
+ The goal is to work around questionable driver behavior, where the driver applies auto-commit semantics to local transactions.
+ </para>
+<programlisting language="Java" role="JAVA">
+Connection c = dataSource.getConnection(); // auto-commit == false
+PreparedStatement ps1 = c.prepareStatement(...);
+ResultSet rs1 = ps1.executeQuery();
+PreparedStatement ps2 = c.prepareStatement(...);
+ResultSet rs2 = ps2.executeQuery();
+</programlisting>
+ <para>
+ This assumes that the prepared statements are the same. For some drivers, <methodname>ps2.executeQuery()</methodname> automatically closes <varname>rs1</varname>, so you actually need two real prepared statements behind the scenes. This only applies to the auto-commit semantic, where re-running the query starts a new transaction automatically. For drivers that follow the specification, you can set it to <literal>TRUE</literal> to share the same real prepared statement.
+ </para>
+ </example>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><set-tx-query-timeout></term>
+ <listitem>
+ <para>
+ Whether to enable query timeout based on the length of time remaining until the transaction times out. Defaults to <literal>FALSE</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><query-timeout></term>
+ <listitem>
+ <para>
+ The maximum time, in seconds, before a query times out. You can override this value by setting <set-tx-query-timeout> to <literal>TRUE</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><metadata>><type-mapping></term>
+ <listitem>
+ <para>
+ A pointer to the type mapping in <filename>conf/standardjbosscmp.xml</filename>. A legacy from JBoss4.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><validate-on-match></term>
+ <listitem>
+ <para>
+ Whether to validate the connection when the JCA layer matches a managed connection, such as when the connection is checked out of the pool. With the addition of <background-validation> this is not required. It is usually not necessary to specify <literal>TRUE</literal> for <validate-on-match> in conjunction with specifying <literal>TRUE</literal> for <background-validation>. Defaults to <literal>TRUE</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><prefill></term>
+ <listitem>
+ <para>
+ Whether to attempt to prefill the connection pool to the minimum number of connections. Only <firstterm>supporting pools</firstterm> (OnePool) support this feature. A warning is logged if the pool does not support prefilling. Defaults to <literal>TRUE</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><background-validation></term>
+ <listitem>
+ <para>
+ Background connection validation reduces the overall load on the RDBMS system when validating a connection. When using this feature, EAP checks whether the current connection in the pool a separate thread (ConnectionValidator). <background-validation-minutes> depends on this value also being set to <literal>TRUE</literal>. Defaults to <literal>FALSE</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><background-validation-millis></term>
+ <listitem>
+ <para>
+ Background connection validation reduces the overall load on the RDBMS system when validating a
+ connection. Setting this parameter means that JBoss will attempt to validate the current connections in
+ the pool as a separate thread (<classname>ConnectionValidator</classname>). This parameter's value
+ defines the interval, in milliseconds, for which the <classname>ConnectionValidator</classname> will
+ run. (This value should not be the same as your <literal><![CDATA[<idle-timeout-minutes]]></literal>
+ value.)
+
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><idle-timeout-minutes></term>
+ <listitem>
+ <para>
+ The maximum time, in minutes, before an idle connection is closed. A value of <literal>0</literal> disables timeout. Defaults to <literal>15</literal> minutes.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><track-connection-by-tx></term>
+ <listitem>
+ <para>
+ Whether the connection should be locked to the transaction, instead of returning it to the pool at the end
+ of the transaction. In previous releases, this was <literal>true</literal> for local connection factories
+ and <literal>false</literal> for XA connection factories. The default is now <literal>true</literal> for
+ both local and XA connection factories, and the element has been deprecated.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><interleaving></term>
+ <listitem>
+ <para>
+ Enables interleaving for XA connection factories.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><background-validation-minutes></term>
+ <listitem>
+ <para>
+ How often, in minutes, the ConnectionValidator runs. Defaults to <literal>10</literal> minutes.
+ </para>
+ <note>
+ <para>
+ You should set this to a smallervalue than <idle-timeout-minutes>, unless you have specified <min-pool-size> a minimum pool size set.
+ </para>
+ </note>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><url-delimiter>, <url-property>, <url-selector-strategy-class-name></term>
+ <listitem>
+ <para>
+ Parameters dealing with database failover. As of JBoss Enterprise Application Platform 5.1, these are configured as part of the main datasource configuration. In previous versions, <url-delimiter> appeared as <url-delimeter>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><stale-connection-checker-class-name></term>
+ <listitem>
+ <para>
+ An implementation of <classname>org.jboss.resource.adapter.jdbc.StateConnectionChecker</classname> that decides whether <systemitem>SQLException</systemitem>s that notify of bad connections throw the <systemitem>org.jboss.resource.adapter.jdbc.StateConnectionException</systemitem> exception.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><max-pool-size></term>
+ <listitem>
+ <para>
+ The maximum number of connections allowed in the pool. Defaults to <literal>20</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><min-pool-size></term>
+ <listitem>
+ <para>
+ The minimum number of connections maintained in the pool. Unless <prefill> is <literal>TRUE</literal>, the pool remains empty until the first use, at which point the pool is filled to the <min-pool-size>. When the pool size drops below the <min-pool-size> due to idle timeouts, the pool is refilled to the <min-pool-size>. Defaults to <literal>0</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><blocking-timeout-millis></term>
+ <listitem>
+ <para>
+ The length of time, in milliseconds, to wait for a connection to become available when all the connections are
+ checked out. Defaults to <literal>30000</literal>, which is 30 seconds.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><use-fast-fail></term>
+ <listitem>
+ <para>
+ Whether to continue trying to acquire a connection from the pool even if the previous attempt has failed, or begin
+ failover. This is to address performance issues where validation SQL takes significant time and resources to
+ execute. Defaults to <literal>FALSE</literal>.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <title>Parameters for <filename>javax.sql.XADataSource</filename> Usage</title>
+ <varlistentry>
+ <term><connection-url></term>
+ <listitem>
+ <para>
+ The JDBC driver connection URL string
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><driver-class></term>
+ <listitem>
+ <para>
+ The JDBC driver class implementing the <classname>java.sql.Driver</classname>
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><connection-property></term>
+ <listitem>
+ <para>
+ Used to configure the connections retrieved from the <classname>java.sql.Driver</classname>.
+ </para>
+ <example>
+ <title>Example <connection-property></title>
+<programlisting language="XML" role="XML">
+<connection-property name="char.encoding">UTF-8</connection-property>
+</programlisting>
+ </example>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <variablelist>
+ <title>Parameters for <filename>javax.sql.XADataSource</filename> Usage</title>
+ <varlistentry>
+ <term><xa-datasource-class></term>
+ <listitem>
+ <para>
+ The class implementing the <classname>XADataSource</classname>
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><xa-datasource-property></term>
+ <listitem>
+ <para>
+ Properties used to configure the <classname>XADataSource</classname>.
+ </para>
+ <example>
+ <title>Example <xa-datasource-property> Declarations</title>
+<programlisting language="XML" role="XML"><xa-datasource-property name="IfxWAITTIME">10</xa-datasource-property>
+<xa-datasource-property name="IfxIFXHOST">myhost.mydomain.com</xa-datasource-property>
+<xa-datasource-property name="PortNumber">1557</xa-datasource-property>
+<xa-datasource-property name="DatabaseName">mydb</xa-datasource-property>
+<xa-datasource-property name="ServerName">myserver</xa-datasource-property>
+</programlisting>
+ </example>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><xa-resource-timeout></term>
+ <listitem>
+ <para>
+ The number of seconds passed to <methodname>XAResource.setTransactionTimeout()</methodname> when not zero.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><isSameRM-override-value></term>
+ <listitem>
+ <para>
+ When set to <literal>FALSE</literal>, fixes some problems with Oracle databases.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><no-tx-separate-pools></term>
+ <listitem>
+ <para>
+ Pool transactional and non-transactional connections separately
+ </para>
+ <warning>
+ <para>
+ Using this option will cause your total pool size to be twice <varname>max-pool-size</varname>, because two
+ actual pools will be created.
+ </para>
+ </warning>
+ <para>
+ Used to fix problems with Oracle.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <variablelist>
+ <title>Security Parameters</title>
+ <varlistentry>
+ <term>
+ <literal><![CDATA[<application-managed-security>]]></literal>
+ </term>
+ <listitem>
+ <para>
+ Uses the username and password passed on the <methodname>getConnection</methodname> or
+ <methodname>createConnection</methodname> request by the application.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <literal><![CDATA[<security-domain>]]></literal>
+ </term>
+ <listitem>
+ <para>
+ Uses the identified login module configured in <filename>conf/login-module.xml</filename>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <literal><![CDATA[<security-domain-and-application>]]></literal>
+ </term>
+ <listitem>
+ <para>
+ Uses the identified login module configured in <filename>conf/login-module.xml</filename> and other
+ connection request information supplied by the application, for example JMS Queues and Topics.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <variablelist id="xa-recovery-parameters">
+ <title>Parameters for XA Recovery in the JCA Layer</title>
+ <varlistentry>
+ <term><recover-user-name></term>
+ <listitem>
+ <para>
+ The user with credentials to perform a recovery operation.
+ </para>
+ </listitem>
+
+ </varlistentry>
+ <varlistentry>
+ <term><recover-password></term>
+ <listitem>
+ <para>
+ Password of the user with credentials to perform a recovery operation.
+ </para>
+ </listitem>
+
+ </varlistentry>
+ <varlistentry>
+ <term><recover-security-domain></term>
+ <listitem>
+ <para>
+ Security domain for recovery.
+ </para>
+ </listitem>
+
+ </varlistentry>
+ <varlistentry>
+ <term><no-recover></term>
+ <listitem>
+ <para>
+ Excludes a datasource from recovery.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <para>
+ The fields in <xref linkend="xa-recovery-parameters" /> should have a fall back value of their non-recover
+ counterparts: <user-name>,< password> and <security-domain>.
+ </para>
+ </section>
+ <section>
+ <title>Datasource Examples</title>
+ <section>
+ <title>Configuring a DataSource for Remote Usage</title>
+ <para>
+ JBoss EAP supports accessing a DataSource from a remote client. See <xref linkend="remote-usage-example"/> for the
+ change that gives the client the ability to look up the DataSource from JNDI, which is to specify
+ <varname>use-java-context</varname>=<literal>false</literal>.
+ </para>
+ <example id="remote-usage-example">
+ <title>Configuring a Datasource for Remote Usage</title>
+<programlisting language="XML" role="XML">
+<datasources>
+ <local-tx-datasource>
+ <jndi-name>GenericDS</jndi-name>
+ <use-java-context>false</use-java-context>
+ <connection-url>...</connection-url>
+ ...
+</programlisting>
+ </example>
+ <para>
+ This causes the DataSource to be bound under the JNDI name <literal>GenericDS</literal> instead of the default of
+ <literal>java:/GenericDS</literal>, which restricts the lookup to the same Virtual Machine as the EAP server.
+ </para>
+ <note>
+ <para>
+ Use of the <use-java-context> setting is not recommended in a production environment. It requires accessing a
+ connection pool remotely and this can cause unexpected problems, since connections are not serializable. Also,
+ transaction propagation is not supported, since it can lead to connection leaks if unreliability is present, such as
+ in a system crash or network failure. A remote session bean facade is the preferred way to access a datasource
+ remotely.
+ </para>
+ </note>
+ </section>
+ <section>
+ <title>Configuring a Datasource to Use Login Modules</title>
+ <procedure>
+ <title>Configuring a Datasource to Use Login Modules</title>
+ <step>
+ <title>Add the <security-domain-parameter> to the XML file for the datasource.</title>
+<programlisting language="XML" role="XML">
+ <datasources>
+ <local-tx-datasource>
+ ...
+ <security-domain>MyDomain</security-domain>
+ ...
+ </local-tx-datasource>
+ </datasources>
+</programlisting>
+ </step>
+ <step>
+ <title>Add an application policy to the <filename>login-config.xml</filename> file.</title>
+ <para>
+ The authentication section needs to include the configuration for your login-module. For example, to encrypt the
+ database password, use the <systemitem>SecureIdentityLoginModule</systemitem> login module.
+ </para>
+<programlisting language="XML" role="XML">
+<application-policy name="MyDomain">
+ <authentication>
+ <login-module code="org.jboss.resource.security.SecureIdentityLoginModule" flag="required">
+ <module-option name="username">scott</module-option>
+ <module-option name="password">-170dd0fbd8c13748</module-option>
+ <module-option name="managedConnectionFactoryName">jboss.jca:service=LocalTxCM,name=OracleDSJAAS</module-option>
+ </login-module>
+ </authentication>
+</application-policy>
+</programlisting>
+ </step>
+ <step>
+ <para>
+ If you plan to fetch the data source connection from a web application, authentication must be enabled for the web
+ application, so that the <systemitem>Subject</systemitem> is populated.
+ </para>
+ </step>
+ <step>
+ <para>
+ If users need the ability to connect anonymously, add an additional login module to the application-policy, to
+ populate the security credentials.
+ </para>
+ </step>
+ <step>
+ <para>
+ Add the <systemitem>UsersRolesLoginModule</systemitem> module to the beginning of the chain. The
+ <systemitem>usersProperties</systemitem> and <systemitem>rolesProperties</systemitem> parameters can be directed to
+ dummy files.
+ </para>
+<programlisting language="XML" role="XML">
+<login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule" flag="required">
+ <module-option name="unauthenticatedIdentity">nobody</module-option>
+ <module-option name="usersProperties">props/users.properties</module-option>
+ <module-option name="rolesProperties">props/roles.properties</module-option>
+</login-module>
+</programlisting>
+ </step>
+ </procedure>
+ </section>
+ </section>
+ </section>
+</section>
\ No newline at end of file
Modified: epp/docs/branches/5.1/Reference_Guide/en-US/modules/Advanced/JCR.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/modules/Advanced/JCR.xml 2011-07-26 04:48:07 UTC (rev 6928)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/modules/Advanced/JCR.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -4,29 +4,30 @@
%BOOK_ENTITIES;
]>
<chapter id="chap-Reference_Guide-eXo_JCR">
- <title>eXo JCR</title>
- <xi:include href="JCR/intro.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <title>eXo JCR</title>
+ <xi:include href="JCR/intro.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<xi:include href="JCR/configuration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<!--
- <xi:include href="JCR/jdbc-data-container-config.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="JCR/jdbc-data-container-config.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
-->
+ <xi:include href="JCR/as_managed_datasources.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<xi:include href="JCR/external-value-storages.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="JCR/search-configuration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="JCR/multilanguage-support.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="JCR/search-configuration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="JCR/multilanguage-support.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<!--
<xi:include href="JCR/configuration-persister.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
-->
<!--
<xi:include href="JCR/cluster-config.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
-->
- <xi:include href="JCR/jbosscache-configuration-templates.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="JCR/lock-manager-config.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="JCR/query-handler-config.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="JCR/jbossts-transaction-service.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="JCR/jbosscache-configuration-templates.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="JCR/lock-manager-config.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="JCR/query-handler-config.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="JCR/jbossts-transaction-service.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<!--
- <xi:include href="JCR/transaction-manager-lookup.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="JCR/transaction-manager-lookup.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
-->
<!--
- <xi:include href="JCR/statistics.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="JCR/statistics.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
-->
</chapter>
Modified: epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity/LDAP.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity/LDAP.xml 2011-07-26 04:48:07 UTC (rev 6928)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity/LDAP.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -5,12 +5,12 @@
]>
<section id="sect-Reference_Guide-LDAP_Integration">
- <title>LDAP Integration</title>
+ <title><remark>LDAP Integration</remark></title>
<note>
- <title>Notational Device</title>
- <para>
+ <title>Notational Device</title>
+ <para>
For ease of readability the following section uses the notational device <replaceable>ID_HOME</replaceable> to represent the file path <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/gatein.ear/02portal.war/WEB-INF/conf/organization/</filename>, as this directory is the root of all JBoss Enterprise Portal Platform's identity-related configuration.
- </para>
+ </para>
</note>
<para>
<emphasis role="bold">LDAP</emphasis> (Lightweight Directory Access Protocol) is a set of open protocols used to access centrally stored information over a network. It is based on the X.500 standard for directory sharing, but is less complex and resource-intensive
@@ -43,7 +43,7 @@
<emphasis>Version</emphasis>
</entry>
</row>
- </thead>
+ </thead>
<tbody>
<row>
<entry>
Modified: epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity/SSO.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity/SSO.xml 2011-07-26 04:48:07 UTC (rev 6928)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity/SSO.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -4,853 +4,853 @@
%BOOK_ENTITIES;
]>
<section id="sect-Reference_Guide-SSO_Single_Sign_On">
- <title>SSO - Single Sign On</title>
- <section id="sect-Reference_Guide-SSO_Single_Sign_On-Overview">
- <title>Overview</title>
- <para>
- JBoss Enterprise Portal Platform provides an implementation of Single Sign On (<literal>SSO</literal>) as an integration and aggregation platform.
- </para>
- <para>
- When logging into the portal users can access many systems through portlets using a single identity. In many cases, however, the portal infrastructure must be integrated with other SSO enabled systems.
- </para>
- <para>
- There are many different Identity Management solutions available. In most cases each SSO framework provides a unique way to plug into a Java EE application.
- </para>
- <para>
- This section will cover the implementation of four different SSO plug-ins with JBoss Enterprise Portal Platform:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <xref linkend="sect-Reference_Guide-SSO_Single_Sign_On-CAS_Central_Authentication_Service" />
- </para>
- </listitem>
- <listitem>
- <para>
- <xref linkend="sect-Reference_Guide-SSO_Single_Sign_On-JOSSO_Java_Open_Single_Sign_On_Project" />
- </para>
- </listitem>
- <listitem>
- <para>
- <xref linkend="sect-Reference_Guide-SSO_Single_Sign_On-OpenSSO_The_Open_Web_SSO_project" />
- </para>
- </listitem>
- <listitem>
- <para>
- <xref linkend="sect-Reference_Guide-SSO_Single_Sign_On-SPNEGO_Simple_and_Protected_GSSAPI_Negotiation_Mechanism" />
- </para>
- </listitem>
- </itemizedlist>
- <note>
- <title>Prerequisites</title>
- <para>
- In this tutorial, the SSO server is being installed in a Tomcat environment. Tomcat can be obtained from <ulink type="http" url="http://tomcat.apache.org">http://tomcat.apache.org</ulink>.
- </para>
- </note>
- <para>
- All the packages required for SSO setup can be found in a zip file located in the <filename>jboss-epp-<replaceable>VERSION</replaceable>/gatein-sso</filename> directory of the JBoss Enterprise Portal Platform binary package.
- </para>
- <para>
- In the following scenarios this directory will be referred to as <replaceable>PORTAL_SSO</replaceable>.
- </para>
- <warning>
- <para>
- Users are advised to not run any portal extensions that could override the data when manipulating the <filename>gatein.ear</filename> file directly.
- </para>
- </warning>
- </section>
+ <title>SSO - Single Sign On</title>
+ <section id="sect-Reference_Guide-SSO_Single_Sign_On-Overview">
+ <title>Overview</title>
+ <para>
+ JBoss Enterprise Portal Platform provides an implementation of Single Sign On (<literal>SSO</literal>) as an integration and aggregation platform.
+ </para>
+ <para>
+ When logging into the portal users can access many systems through portlets using a single identity. In many cases, however, the portal infrastructure must be integrated with other SSO enabled systems.
+ </para>
+ <para>
+ There are many different Identity Management solutions available. In most cases each SSO framework provides a unique way to plug into a Java EE application.
+ </para>
+ <para>
+ This section will cover the implementation of four different SSO plug-ins with JBoss Enterprise Portal Platform:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <xref linkend="sect-Reference_Guide-SSO_Single_Sign_On-CAS_Central_Authentication_Service" />
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <xref linkend="sect-Reference_Guide-SSO_Single_Sign_On-JOSSO_Java_Open_Single_Sign_On_Project" />
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <xref linkend="sect-Reference_Guide-SSO_Single_Sign_On-OpenSSO_The_Open_Web_SSO_project" />
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <xref linkend="sect-Reference_Guide-SSO_Single_Sign_On-SPNEGO_Simple_and_Protected_GSSAPI_Negotiation_Mechanism" />
+ </para>
+ </listitem>
+ </itemizedlist>
+ <note>
+ <title>Prerequisites</title>
+ <para>
+ In this tutorial, the SSO server is being installed in a Tomcat environment. Tomcat can be obtained from <ulink type="http" url="http://tomcat.apache.org">http://tomcat.apache.org</ulink>.
+ </para>
+ </note>
+ <para>
+ All the packages required for SSO setup can be found in a zip file located in the <filename>jboss-epp-<replaceable>VERSION</replaceable>/gatein-sso</filename> directory of the JBoss Enterprise Portal Platform binary package.
+ </para>
+ <para>
+ In the following scenarios this directory will be referred to as <replaceable>PORTAL_SSO</replaceable>.
+ </para>
+ <warning>
+ <para>
+ Users are advised to not run any portal extensions that could override the data when manipulating the <filename>gatein.ear</filename> file directly.
+ </para>
+ </warning>
+ </section>
-
- <section id="sect-Reference_Guide-SSO_Single_Sign_On-CAS_Central_Authentication_Service">
- <title>CAS - Central Authentication Service</title>
- <para>
- This Single Sign On plugin enables seamless integration between JBoss Enterprise Portal Platform and the Central Authentication Service (<emphasis role="bold">CAS</emphasis>) Single Sign On Framework. Details about CAS can be found <ulink url="http://www.ja-sig.org/products/cas/">here</ulink>.
- </para>
- <procedure id="proc-Reference_Guide-CAS_Central_Authentication_Service-CAS_server">
- <title>CAS server</title>
- <step>
- <para>
- Set up the server to authenticate against the portal login module.
- </para>
- </step>
- <step>
- <para>
- Downloaded CAS from <ulink type="http" url="http://www.jasig.org/cas/download">http://www.jasig.org/cas/download</ulink>.
- </para>
- </step>
- <step>
- <para>
- Extract the downloaded file into a suitable location. This location will be referred to as <replaceable>CAS_DIR</replaceable> in the following example.
- </para>
- </step>
- </procedure>
-
- <para>
- The simplest way to configure the web archive is to make the necessary changes directly into the CAS codebase.
- </para>
- <note>
- <para>
- To perform the final build step and complete these instructions you will need the Apache Maven 2. Download it from <ulink type="http" url="http://maven.apache.org/download.html">here</ulink>.
- </para>
- </note>
- <para>
- The CAS Server Plugin makes secure callbacks to a RESTful service installed on the remote JBoss Enterprise Portal Platform server to authenticate a user.
- </para>
- <para>
- In order for the plugin to function correctly, it needs to be properly configured to connect to this service. This configuration is controlled by the <filename>cas.war/WEB-INF/deployerConfigContext.xml </filename> file.
- </para>
- <procedure id="proc-Reference_Guide-CAS_Central_Authentication_Service-Modifying_CAS_server">
- <title>Modifying CAS server</title>
- <step>
- <para>
- Open <filename><replaceable>CAS_DIR</replaceable>/cas-server-webapp/src/main/webapp/WEB-INF/deployerConfigContext.xml</filename>
- </para>
- </step>
- <step>
- <para>
- Replace this code:
- </para>
-
+
+ <section id="sect-Reference_Guide-SSO_Single_Sign_On-CAS_Central_Authentication_Service">
+ <title>CAS - Central Authentication Service</title>
+ <para>
+ This Single Sign On plugin enables seamless integration between JBoss Enterprise Portal Platform and the Central Authentication Service (<emphasis role="bold">CAS</emphasis>) Single Sign On Framework. Details about CAS can be found <ulink url="http://www.ja-sig.org/products/cas/">here</ulink>.
+ </para>
+ <procedure id="proc-Reference_Guide-CAS_Central_Authentication_Service-CAS_server">
+ <title>CAS server</title>
+ <step>
+ <para>
+ Set up the server to authenticate against the portal login module.
+ </para>
+ </step>
+ <step>
+ <para>
+ Downloaded CAS from <ulink type="http" url="http://www.jasig.org/cas/download">http://www.jasig.org/cas/download</ulink>.
+ </para>
+ </step>
+ <step>
+ <para>
+ Extract the downloaded file into a suitable location. This location will be referred to as <replaceable>CAS_DIR</replaceable> in the following example.
+ </para>
+ </step>
+ </procedure>
+
+ <para>
+ The simplest way to configure the web archive is to make the necessary changes directly into the CAS codebase.
+ </para>
+ <note>
+ <para>
+ To perform the final build step and complete these instructions you will need the Apache Maven 2. Download it from <ulink type="http" url="http://maven.apache.org/download.html">here</ulink>.
+ </para>
+ </note>
+ <para>
+ The CAS Server Plugin makes secure callbacks to a RESTful service installed on the remote JBoss Enterprise Portal Platform server to authenticate a user.
+ </para>
+ <para>
+ In order for the plugin to function correctly, it needs to be properly configured to connect to this service. This configuration is controlled by the <filename>cas.war/WEB-INF/deployerConfigContext.xml </filename> file.
+ </para>
+ <procedure id="proc-Reference_Guide-CAS_Central_Authentication_Service-Modifying_CAS_server">
+ <title>Modifying CAS server</title>
+ <step>
+ <para>
+ Open <filename><replaceable>CAS_DIR</replaceable>/cas-server-webapp/src/main/webapp/WEB-INF/deployerConfigContext.xml</filename>
+ </para>
+ </step>
+ <step>
+ <para>
+ Replace this code:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default102.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- ...with the following:
- </para>
-
+ <para>
+ ...with the following:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default103.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- Make sure to set the <emphasis>host</emphasis>, <emphasis>port</emphasis> and <emphasis>context</emphasis> with the values corresponding to your portal (also available in <filename><replaceable>PORTAL_SSO</replaceable>/cas/plugin/WEB-INF/deployerConfigContext.xml</filename>).
- </para>
- </step>
- <step>
- <para>
- Copy <filename><replaceable>PORTAL_SSO</replaceable>/cas/plugin/WEB-INF/lib/sso-cas-plugin-<VERSION>.jar</filename> and <filename><replaceable>PORTAL_SSO</replaceable>/cas/plugin/WEB-INF/lib/commons-httpclient-<VERSION>.jar</filename> into the <filename><replaceable>CAS_DIR</replaceable>/cas-server-webapp/src/main/webapp/WEB-INF/lib</filename> created directory.
- </para>
- </step>
- <step>
- <para>
- If you have not already done so, download an instance of Tomcat and extract it into a suitable location (which will be called <filename>TOMCAT_HOME</filename> for these instructions).
- </para>
- </step>
- <step>
- <para>
- Edit <filename>TOMCAT_HOME/conf/server.xml</filename> and change the 8080 port to 8888 to avoid a conflict with the default JBoss Enterprise Portal Platform .
- </para>
- <note>
- <para>
- If JBoss Enterprise Portal Platform is running on the same machine as Tomcat other ports will need to be changed in addition to 8080 in order to avoid conflicts. They can be changed to any free port. For example; you can change the admin port from 8005 to 8805 and the AJP port from 8009 to 8809.
- </para>
- </note>
- </step>
- <step>
- <para>
- Navigate locally to the <filename><replaceable>CAS_DIR</replaceable>/cas-server-webapp</filename> directory and execute the following command:
- </para>
-
+ <para>
+ Make sure to set the <emphasis>host</emphasis>, <emphasis>port</emphasis> and <emphasis>context</emphasis> with the values corresponding to your portal (also available in <filename><replaceable>PORTAL_SSO</replaceable>/cas/plugin/WEB-INF/deployerConfigContext.xml</filename>).
+ </para>
+ </step>
+ <step>
+ <para>
+ Copy <filename><replaceable>PORTAL_SSO</replaceable>/cas/plugin/WEB-INF/lib/sso-cas-plugin-<VERSION>.jar</filename> and <filename><replaceable>PORTAL_SSO</replaceable>/cas/plugin/WEB-INF/lib/commons-httpclient-<VERSION>.jar</filename> into the <filename><replaceable>CAS_DIR</replaceable>/cas-server-webapp/src/main/webapp/WEB-INF/lib</filename> created directory.
+ </para>
+ </step>
+ <step>
+ <para>
+ If you have not already done so, download an instance of Tomcat and extract it into a suitable location (which will be called <filename>TOMCAT_HOME</filename> for these instructions).
+ </para>
+ </step>
+ <step>
+ <para>
+ Edit <filename>TOMCAT_HOME/conf/server.xml</filename> and change the 8080 port to 8888 to avoid a conflict with the default JBoss Enterprise Portal Platform .
+ </para>
+ <note>
+ <para>
+ If JBoss Enterprise Portal Platform is running on the same machine as Tomcat other ports will need to be changed in addition to 8080 in order to avoid conflicts. They can be changed to any free port. For example; you can change the admin port from 8005 to 8805 and the AJP port from 8009 to 8809.
+ </para>
+ </note>
+ </step>
+ <step>
+ <para>
+ Navigate locally to the <filename><replaceable>CAS_DIR</replaceable>/cas-server-webapp</filename> directory and execute the following command:
+ </para>
+
<programlisting>mvn install
</programlisting>
- </step>
- <step>
- <para>
- Copy the <filename><replaceable>CAS_DIR</replaceable>/cas-server-webapp/target/cas.war</filename> file into the <filename>TOMCAT_HOME/webapps</filename> directory.
- </para>
- <para>
- Tomcat should start without issue and should be accessible at <ulink type="http" url="http://localhost:8888/cas">http://localhost:8888/cas</ulink>.
- </para>
- <note>
- <para>
- At this stage the login functionality will not be available.
- </para>
- </note>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/AuthenticationAndIdentity/SSO/cas.png" format="PNG" scale="100" width="444" />
- </imageobject>
- </mediaobject>
- </step>
- </procedure>
-
- <procedure id="proc-Reference_Guide-CAS_Central_Authentication_Service-Setup_the_CAS_client">
- <title>Setup the CAS client</title>
- <step>
- <para>
- Copy all the libraries from the <filename><replaceable>PORTAL_SSO</replaceable>/cas/gatein.ear/lib</filename> directory into the <filename>JBOSS_HOME/server/default/deploy/gatein.ear/lib</filename>) directory.
- </para>
- </step>
- <step>
- <para>
- Edit the <filename>jboss-as/server/<replaceable>PROFILE</replaceable>/deploy/gatein.ear/META-INF/gatein-jboss-beans.xml</filename> and uncomment this section:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Copy the <filename><replaceable>CAS_DIR</replaceable>/cas-server-webapp/target/cas.war</filename> file into the <filename>TOMCAT_HOME/webapps</filename> directory.
+ </para>
+ <para>
+ Tomcat should start without issue and should be accessible at <ulink type="http" url="http://localhost:8888/cas">http://localhost:8888/cas</ulink>.
+ </para>
+ <note>
+ <para>
+ At this stage the login functionality will not be available.
+ </para>
+ </note>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/AuthenticationAndIdentity/SSO/cas.png" format="PNG" scale="100" width="444" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ </procedure>
+
+ <procedure id="proc-Reference_Guide-CAS_Central_Authentication_Service-Setup_the_CAS_client">
+ <title>Setup the CAS client</title>
+ <step>
+ <para>
+ Copy all the libraries from the <filename><replaceable>PORTAL_SSO</replaceable>/cas/gatein.ear/lib</filename> directory into the <filename>JBOSS_HOME/server/default/deploy/gatein.ear/lib</filename>) directory.
+ </para>
+ </step>
+ <step>
+ <para>
+ Edit the <filename>jboss-as/server/<replaceable>PROFILE</replaceable>/deploy/gatein.ear/META-INF/gatein-jboss-beans.xml</filename> and uncomment this section:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default105.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- There's a line comment already in this source file to assist you.
- </para>
- </step>
- <step>
- <para>
- The installation can be tested at this point (assuming the CAS server on Tomcat is running):
- </para>
- <procedure>
- <step>
- <para>
- Start (or restart) JBoss Enterprise Portal Platform and direct your web browser to <ulink type="http" url="http://localhost:8888/cas">http://localhost:8888/cas</ulink>.
- </para>
- </step>
- <step>
- <para>
- Login with the username <literal>root</literal> and the password <literal>gtn</literal> (or any other account created through the portal).
- </para>
- </step>
- </procedure>
- </step>
- </procedure>
-
- <para>
- To utilize the Central Authentication Service, JBoss Enterprise Portal Platform needs to redirect all user authentication to the CAS server.
- </para>
- <para>
- Information about where the CAS is hosted must be properly configured within the JBoss Enterprise Portal Platform instance. The required configuration is done by modifying three files.
- </para>
- <procedure id="proc-Reference_Guide-CAS_Central_Authentication_Service-Redirect_to_CAS">
- <title>Redirect to CAS</title>
- <step>
- <para>
- Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/groovy/webui/component/UIBannerPortlet.gtml</filename> file as follows:
- </para>
-
+ <para>
+ There's a line comment already in this source file to assist you.
+ </para>
+ </step>
+ <step>
+ <para>
+ The installation can be tested at this point (assuming the CAS server on Tomcat is running):
+ </para>
+ <procedure>
+ <step>
+ <para>
+ Start (or restart) JBoss Enterprise Portal Platform and direct your web browser to <ulink type="http" url="http://localhost:8888/cas">http://localhost:8888/cas</ulink>.
+ </para>
+ </step>
+ <step>
+ <para>
+ Login with the username <literal>root</literal> and the password <literal>gtn</literal> (or any other account created through the portal).
+ </para>
+ </step>
+ </procedure>
+ </step>
+ </procedure>
+
+ <para>
+ To utilize the Central Authentication Service, JBoss Enterprise Portal Platform needs to redirect all user authentication to the CAS server.
+ </para>
+ <para>
+ Information about where the CAS is hosted must be properly configured within the JBoss Enterprise Portal Platform instance. The required configuration is done by modifying three files.
+ </para>
+ <procedure id="proc-Reference_Guide-CAS_Central_Authentication_Service-Redirect_to_CAS">
+ <title>Redirect to CAS</title>
+ <step>
+ <para>
+ Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/groovy/webui/component/UIBannerPortlet.gtml</filename> file as follows:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default106.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/portal/webui/component/UILogoPortlet.gtmpl</filename> file as follows:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/portal/webui/component/UILogoPortlet.gtmpl</filename> file as follows:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default107.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Replace the entire contents of <filename>gatein.ear/02portal.war/login/jsp/login.jsp</filename> with:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Replace the entire contents of <filename>gatein.ear/02portal.war/login/jsp/login.jsp</filename> with:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default108.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Add the following Filters at the top of the filter chain in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename>:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Add the following Filters at the top of the filter chain in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename>:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default109.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Replace the <literal>InitiateLoginServlet</literal> declaration in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename> with:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Replace the <literal>InitiateLoginServlet</literal> declaration in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename> with:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default110.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- </procedure>
-
- <para>
- Once these changes have been made, all links to the user authentication pages will redirect to the CAS centralized authentication form and CAS can be used as an SSO implementation in your portal.
- </para>
- </section>
+ </step>
+ </procedure>
+
+ <para>
+ Once these changes have been made, all links to the user authentication pages will redirect to the CAS centralized authentication form and CAS can be used as an SSO implementation in your portal.
+ </para>
+ </section>
-
- <section id="sect-Reference_Guide-SSO_Single_Sign_On-JOSSO_Java_Open_Single_Sign_On_Project">
- <title>JOSSO - Java Open Single Sign-On Project</title>
- <para>
- This Single Sign On plugin enables seamless integration between JBoss Enterprise Portal Platform and the Java Open Single Sign-On Project (<emphasis role="bold">JOSSO</emphasis>) Single Sign On Framework. Details about JOSSO can be found at <ulink url="http://www.josso.org">www.josso.org</ulink>.
- </para>
- <para>
- This section details setting up the JOSSO server to authenticate against the JBoss Enterprise Portal Platform login module.
- </para>
- <procedure id="proc-Reference_Guide-JOSSO_Java_Open_Single_Sign_On_Project-JOSSO_server">
- <title>JOSSO server</title>
- <step>
- <para>
- Download JOSSO from <ulink type="http" url="http://sourceforge.net/projects/josso/files/">http://sourceforge.net/projects/josso/files/</ulink>.
- </para>
- <note>
- <para>
- Use the package that embeds Apache Tomcat. The integration was tested with JOSSO-1.8.1.
- </para>
- </note>
- </step>
- <step>
- <para>
- Extract the package into what will be called <filename>JOSSO_HOME</filename> in this example.
- </para>
- </step>
- </procedure>
-
- <procedure id="proc-Reference_Guide-JOSSO_Java_Open_Single_Sign_On_Project-Modifying_JOSSO_server">
- <title>Modifying JOSSO server</title>
- <step>
- <para>
- Copy the files from <filename><replaceable>PORTAL_SSO</replaceable>/josso/plugin</filename> into the <filename>JOSSO_HOME</filename> directory created in the last step.
- </para>
- <para>
- This action should replace or add the following files to the <filename>JOSSO_HOME/webapps/josso/WEB-INF/lib</filename> directory:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <filename>JOSSO_HOME/lib/josso-gateway-config.xml</filename>
- </para>
- </listitem>
- <listitem>
- <para>
- <filename>JOSSO_HOME/lib/josso-gateway-gatein-stores.xml</filename>
- </para>
- </listitem>
- <listitem>
- <para>
- <filename>JOSSO_HOME/webapps/josso/WEB-INF/classes/gatein.properties</filename>
- </para>
- </listitem>
- </itemizedlist>
- </step>
- <step>
- <para>
- Edit <filename>TOMCAT_HOME/conf/server.xml</filename> file and change the 8080 port to 8888 to avoid a conflict with the default JBoss Enterprise Portal Platform port.
- <note>
- <title>Port Conflicts</title>
- <para>
- If JBoss Enterprise Portal Platform is running on the same machine as Tomcat, other ports need to be changed in addition to 8080 in order to avoid port conflicts. They can be changed to any free port. For example, you can change admin port from 8005 to 8805, and AJP port from 8009 to 8809.
- </para>
- </note>
- </para>
- </step>
- <step>
- <para>
- Tomcat should now start and allow access to <ulink type="http" url="http://localhost:8888/josso/signon/login.do">http://localhost:8888/josso/signon/login.do</ulink> but at this stage login will not be available.
- </para>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/AuthenticationAndIdentity/SSO/opensso.png" format="PNG" width="444" />
- </imageobject>
- </mediaobject>
- </step>
- </procedure>
-
- <procedure id="proc-Reference_Guide-JOSSO_Java_Open_Single_Sign_On_Project-Setup_the_JOSSO_client">
- <title>Setup the JOSSO client</title>
- <step>
- <para>
- Copy the library files from <filename><replaceable>PORTAL_SSO</replaceable>/josso/gatein.ear/lib</filename> into <filename>gatein.ear/lib</filename>
- </para>
- </step>
- <step>
- <para>
- Copy the <filename><replaceable>PORTAL_SSO</replaceable>/josso/gatein.ear/02portal.war/WEB-INF/classes/josso-agent-config.xml</filename> file into the <filename>gatein.ear/02portal.war/WEB-INF/classes</filename> directory.
- </para>
- </step>
- <step>
- <para>
- Edit <filename>jboss-as/server/<replaceable>PROFILE</replaceable>/deploy/gatein.ear/META-INF/gatein-jboss-beans.xml</filename> and uncomment this section:
- </para>
-
+
+ <section id="sect-Reference_Guide-SSO_Single_Sign_On-JOSSO_Java_Open_Single_Sign_On_Project">
+ <title>JOSSO - Java Open Single Sign-On Project</title>
+ <para>
+ This Single Sign On plugin enables seamless integration between JBoss Enterprise Portal Platform and the Java Open Single Sign-On Project (<emphasis role="bold">JOSSO</emphasis>) Single Sign On Framework. Details about JOSSO can be found at <ulink url="http://www.josso.org">www.josso.org</ulink>.
+ </para>
+ <para>
+ This section details setting up the JOSSO server to authenticate against the JBoss Enterprise Portal Platform login module.
+ </para>
+ <procedure id="proc-Reference_Guide-JOSSO_Java_Open_Single_Sign_On_Project-JOSSO_server">
+ <title>JOSSO server</title>
+ <step>
+ <para>
+ Download JOSSO from <ulink type="http" url="http://sourceforge.net/projects/josso/files/">http://sourceforge.net/projects/josso/files/</ulink>.
+ </para>
+ <note>
+ <para>
+ Use the package that embeds Apache Tomcat. The integration was tested with JOSSO-1.8.1.
+ </para>
+ </note>
+ </step>
+ <step>
+ <para>
+ Extract the package into what will be called <filename>JOSSO_HOME</filename> in this example.
+ </para>
+ </step>
+ </procedure>
+
+ <procedure id="proc-Reference_Guide-JOSSO_Java_Open_Single_Sign_On_Project-Modifying_JOSSO_server">
+ <title>Modifying JOSSO server</title>
+ <step>
+ <para>
+ Copy the files from <filename><replaceable>PORTAL_SSO</replaceable>/josso/plugin</filename> into the <filename>JOSSO_HOME</filename> directory created in the last step.
+ </para>
+ <para>
+ This action should replace or add the following files to the <filename>JOSSO_HOME/webapps/josso/WEB-INF/lib</filename> directory:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <filename>JOSSO_HOME/lib/josso-gateway-config.xml</filename>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <filename>JOSSO_HOME/lib/josso-gateway-gatein-stores.xml</filename>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <filename>JOSSO_HOME/webapps/josso/WEB-INF/classes/gatein.properties</filename>
+ </para>
+ </listitem>
+ </itemizedlist>
+ </step>
+ <step>
+ <para>
+ Edit <filename>TOMCAT_HOME/conf/server.xml</filename> file and change the 8080 port to 8888 to avoid a conflict with the default JBoss Enterprise Portal Platform port.
+ <note>
+ <title>Port Conflicts</title>
+ <para>
+ If JBoss Enterprise Portal Platform is running on the same machine as Tomcat, other ports need to be changed in addition to 8080 in order to avoid port conflicts. They can be changed to any free port. For example, you can change admin port from 8005 to 8805, and AJP port from 8009 to 8809.
+ </para>
+ </note>
+ </para>
+ </step>
+ <step>
+ <para>
+ Tomcat should now start and allow access to <ulink type="http" url="http://localhost:8888/josso/signon/login.do">http://localhost:8888/josso/signon/login.do</ulink> but at this stage login will not be available.
+ </para>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/AuthenticationAndIdentity/SSO/opensso.png" format="PNG" width="444" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ </procedure>
+
+ <procedure id="proc-Reference_Guide-JOSSO_Java_Open_Single_Sign_On_Project-Setup_the_JOSSO_client">
+ <title>Setup the JOSSO client</title>
+ <step>
+ <para>
+ Copy the library files from <filename><replaceable>PORTAL_SSO</replaceable>/josso/gatein.ear/lib</filename> into <filename>gatein.ear/lib</filename>
+ </para>
+ </step>
+ <step>
+ <para>
+ Copy the <filename><replaceable>PORTAL_SSO</replaceable>/josso/gatein.ear/02portal.war/WEB-INF/classes/josso-agent-config.xml</filename> file into the <filename>gatein.ear/02portal.war/WEB-INF/classes</filename> directory.
+ </para>
+ </step>
+ <step>
+ <para>
+ Edit <filename>jboss-as/server/<replaceable>PROFILE</replaceable>/deploy/gatein.ear/META-INF/gatein-jboss-beans.xml</filename> and uncomment this section:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default111.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- The installation can be tested at this point.
- </para>
- <procedure>
- <step>
- <para>
- Start (or restart) JBoss Enterprise Portal Platform, and (assuming the JOSSO server on Tomcat is running) direct your browser to <ulink type="http" url="http://localhost:8888/josso/signon/login.do">http://localhost:8888/josso/signon/login.do</ulink>.
- </para>
- </step>
- <step>
- <para>
- Login with the username <literal>root</literal> and the password <literal>gtn</literal> or any account created through the portal.
- </para>
- </step>
- </procedure>
- </step>
- </procedure>
-
- <para>
- The next part of the process is to redirect all user authentication to the JOSSO server.
- </para>
- <para>
- Information about where the JOSSO server is hosted must be properly configured within the JBoss Enterprise Portal Platform instance. The required configuration is done by modifying four files:
- </para>
- <procedure id="proc-Reference_Guide-JOSSO_Java_Open_Single_Sign_On_Project-Setup_the_portal_to_redirect_to_JOSSO">
- <title>Setup the portal to redirect to JOSSO</title>
- <step>
- <para>
- In the <filename>gatein.ear/web.war/groovy/groovy/webui/component/UIBannerPortlet.gtml</filename> file modify the 'Sign In' link as follows:
- </para>
-
+ </step>
+ <step>
+ <para>
+ The installation can be tested at this point.
+ </para>
+ <procedure>
+ <step>
+ <para>
+ Start (or restart) JBoss Enterprise Portal Platform, and (assuming the JOSSO server on Tomcat is running) direct your browser to <ulink type="http" url="http://localhost:8888/josso/signon/login.do">http://localhost:8888/josso/signon/login.do</ulink>.
+ </para>
+ </step>
+ <step>
+ <para>
+ Login with the username <literal>root</literal> and the password <literal>gtn</literal> or any account created through the portal.
+ </para>
+ </step>
+ </procedure>
+ </step>
+ </procedure>
+
+ <para>
+ The next part of the process is to redirect all user authentication to the JOSSO server.
+ </para>
+ <para>
+ Information about where the JOSSO server is hosted must be properly configured within the JBoss Enterprise Portal Platform instance. The required configuration is done by modifying four files:
+ </para>
+ <procedure id="proc-Reference_Guide-JOSSO_Java_Open_Single_Sign_On_Project-Setup_the_portal_to_redirect_to_JOSSO">
+ <title>Setup the portal to redirect to JOSSO</title>
+ <step>
+ <para>
+ In the <filename>gatein.ear/web.war/groovy/groovy/webui/component/UIBannerPortlet.gtml</filename> file modify the 'Sign In' link as follows:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default112.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/portal/webui/component/UILogoPortlet.gtmpl</filename> file as follows:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/portal/webui/component/UILogoPortlet.gtmpl</filename> file as follows:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default113.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Replace the entire contents of <filename>gatein.ear/02portal.war/login/jsp/login.jsp</filename> with:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Replace the entire contents of <filename>gatein.ear/02portal.war/login/jsp/login.jsp</filename> with:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default114.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Add the following Filters to the top of the filter chain in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename>:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Add the following Filters to the top of the filter chain in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename>:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default115.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Replace the <literal>InitiateLoginServlet</literal> declaration in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename> with:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Replace the <literal>InitiateLoginServlet</literal> declaration in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename> with:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default116.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Remove the <literal>PortalLoginController</literal> servlet declaration and mapping in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename>
- </para>
- </step>
- </procedure>
-
- <para>
- From now on, all links redirecting to the user authentication pages will redirect to the JOSSO centralized authentication form.
- </para>
- </section>
+ </step>
+ <step>
+ <para>
+ Remove the <literal>PortalLoginController</literal> servlet declaration and mapping in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename>
+ </para>
+ </step>
+ </procedure>
+
+ <para>
+ From now on, all links redirecting to the user authentication pages will redirect to the JOSSO centralized authentication form.
+ </para>
+ </section>
-
- <section id="sect-Reference_Guide-SSO_Single_Sign_On-OpenSSO_The_Open_Web_SSO_project">
- <title>OpenSSO - The Open Web SSO project</title>
- <para>
- This Single Sign On plugin enables seamless integration between JBoss Enterprise Portal Platform and the Open Web SSO project (<emphasis role="bold">OpenSSO</emphasis>) Single Sign On Framework. Details about OpenSSO can be found <ulink url="https://opensso.dev.java.net/">here</ulink>.
- </para>
- <para>
- This section details the setting up of OpenSSO server to authenticate against the JBoss Enterprise Portal Platform login module.
- </para>
- <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Obtaining_OpenSSO">
- <title>Obtaining OpenSSO</title>
- <step>
- <para>
- Download OpenSSO from <ulink type="http" url="https://opensso.dev.java.net/public/use/index.html">https://opensso.dev.java.net/public/use/index.html</ulink>.
- </para>
- </step>
- <step>
- <para>
- Extract the package into a suitable location. This location will be referred to as <filename>OPENSSO_HOME</filename> in this example.
- </para>
- </step>
- </procedure>
-
- <para>
- To configure the web server as required, it is simpler to directly modify the source files.
- </para>
- <para>
- The first step is to add the JBoss Enterprise Portal Platform Authentication Plugin.
- </para>
- <para>
- The plugin makes secure callbacks to a RESTful service installed on the remote JBoss Enterprise Portal Platform server to authenticate a user.
- </para>
- <para>
- In order for the plugin to function correctly, it needs to be properly configured to connect to this service. This configuration is done via the <filename>opensso.war/config/auth/default/AuthenticationPlugin.xml</filename> file.
- </para>
- <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Modifying_OpenSSO_server">
- <title>Modifying OpenSSO server</title>
- <step>
- <para>
- Obtain a copy of Tomcat and extract it into a suitable location. This location will be referred to as <filename>TOMCAT_HOME</filename> in this example.
- </para>
- </step>
- <step>
- <para>
- Edit <filename>TOMCAT_HOME/conf/server.xml</filename> and change the 8080 port to 8888 to avoid a conflict with the default JBoss Enterprise Portal Platform port.
- <note>
- <para>
- If JBoss Enterprise Portal Platform is running on the same machine as Tomcat, other ports need to be changed in addition to 8080 in order to avoid port conflicts. They can be changed to any free port. For example, you can change the admin port from 8005 to 8805 and the AJP port from 8009 to 8809.
- </para>
- </note>
- </para>
- </step>
- <step>
- <para>
- Ensure the <filename>TOMCAT_HOME/webapps/opensso/config/auth/default/AuthenticationPlugin.xml</filename> file matches the following:
- </para>
-
+
+ <section id="sect-Reference_Guide-SSO_Single_Sign_On-OpenSSO_The_Open_Web_SSO_project">
+ <title>OpenSSO - The Open Web SSO project</title>
+ <para>
+ This Single Sign On plugin enables seamless integration between JBoss Enterprise Portal Platform and the Open Web SSO project (<emphasis role="bold">OpenSSO</emphasis>) Single Sign On Framework. Details about OpenSSO can be found <ulink url="https://opensso.dev.java.net/">here</ulink>.
+ </para>
+ <para>
+ This section details the setting up of OpenSSO server to authenticate against the JBoss Enterprise Portal Platform login module.
+ </para>
+ <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Obtaining_OpenSSO">
+ <title>Obtaining OpenSSO</title>
+ <step>
+ <para>
+ Download OpenSSO from <ulink type="http" url="https://opensso.dev.java.net/public/use/index.html">https://opensso.dev.java.net/public/use/index.html</ulink>.
+ </para>
+ </step>
+ <step>
+ <para>
+ Extract the package into a suitable location. This location will be referred to as <filename>OPENSSO_HOME</filename> in this example.
+ </para>
+ </step>
+ </procedure>
+
+ <para>
+ To configure the web server as required, it is simpler to directly modify the source files.
+ </para>
+ <para>
+ The first step is to add the JBoss Enterprise Portal Platform Authentication Plugin.
+ </para>
+ <para>
+ The plugin makes secure callbacks to a RESTful service installed on the remote JBoss Enterprise Portal Platform server to authenticate a user.
+ </para>
+ <para>
+ In order for the plugin to function correctly, it needs to be properly configured to connect to this service. This configuration is done via the <filename>opensso.war/config/auth/default/AuthenticationPlugin.xml</filename> file.
+ </para>
+ <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Modifying_OpenSSO_server">
+ <title>Modifying OpenSSO server</title>
+ <step>
+ <para>
+ Obtain a copy of Tomcat and extract it into a suitable location. This location will be referred to as <filename>TOMCAT_HOME</filename> in this example.
+ </para>
+ </step>
+ <step>
+ <para>
+ Edit <filename>TOMCAT_HOME/conf/server.xml</filename> and change the 8080 port to 8888 to avoid a conflict with the default JBoss Enterprise Portal Platform port.
+ <note>
+ <para>
+ If JBoss Enterprise Portal Platform is running on the same machine as Tomcat, other ports need to be changed in addition to 8080 in order to avoid port conflicts. They can be changed to any free port. For example, you can change the admin port from 8005 to 8805 and the AJP port from 8009 to 8809.
+ </para>
+ </note>
+ </para>
+ </step>
+ <step>
+ <para>
+ Ensure the <filename>TOMCAT_HOME/webapps/opensso/config/auth/default/AuthenticationPlugin.xml</filename> file matches the following:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default117.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Copy the following files;
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <filename><replaceable>PORTAL_SSO</replaceable>/opensso/plugin/WEB-INF/lib/sso-opensso-plugin-<VERSION>.jar</filename>
- </para>
- </listitem>
- <listitem>
- <para>
- <filename><replaceable>PORTAL_SSO</replaceable>/opensso/plugin/WEB-INF/lib/commons-httpclient-<VERSION>.jar</filename>
- </para>
- </listitem>
- <listitem>
- <para>
- <filename><replaceable>PORTAL_SSO</replaceable>/opensso/plugin/WEB-INF/lib/commons-logging-<VERSION>.jar</filename>
- </para>
- </listitem>
- </itemizedlist>
- <para>
- ...into the Tomcat directory at <filename>TOMCAT_HOME/webapps/opensso/WEB-INF/lib</filename>.
- </para>
- </step>
- <step>
- <para>
- Copy the <filename><replaceable>PORTAL_SSO</replaceable>/opensso/plugin/WEB-INF/classes/gatein.properties</filename> file into the <filename>TOMCAT_HOME/webapps/opensso/WEB-INF/classes</filename> directory.
- </para>
- </step>
- <step>
- <para>
- Tomcat should start and be able to access <ulink type="http" url="http://localhost:8888/opensso/UI/Login?realm=gatein">http://localhost:8888/opensso/UI/Login?realm=gatein</ulink>.
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/AuthenticationAndIdentity/SSO/opensso-shot.png" format="PNG" scale="110" width="444" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="150mm" fileref="images/AuthenticationAndIdentity/SSO/opensso-shot.png" format="PNG" width="444" />
- </imageobject>
- </mediaobject>
- <note>
- <para>
- Login will not be available at this point.
- </para>
- </note>
- </step>
- </procedure>
-
- <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Configure_the_gatein_realm">
- <title>Configure the "gatein" realm</title>
- <step>
- <para>
- Direct your browser to <ulink type="http" url="http://localhost:8888/opensso">http://localhost:8888/opensso</ulink>
- </para>
- </step>
- <step>
- <para>
- Create a default configuration.
- </para>
- </step>
- <step>
- <para>
- Login as <literal>admin</literal>.
- </para>
- <important>
- <para>
- Go to the "<emphasis role="bold">Configuration</emphasis>" tab then to "<emphasis role="bold">Authentication</emphasis>".
- </para>
- <para>
- Follow the link to "<emphasis role="bold">Core</emphasis>" and add a new value with the class name "<literal>org.gatein.sso.opensso.plugin.AuthenticationPlugin</literal>".
- </para>
- <para>
- If this is not done <literal>AuthenticationPlugin</literal> is not available among other OpenSSO authentication modules.
- </para>
- </important>
- </step>
- <step>
- <para>
- Go to the "<emphasis role="bold">Access control</emphasis>" tab and create new realm called "<literal>gatein</literal>".
- </para>
- </step>
- <step>
- <procedure>
- <step>
- <para>
- Go to the new "<literal>gatein</literal>" realm and click on the "<emphasis role="bold">Authentication</emphasis>" tab.
- </para>
- </step>
- <step>
- <para>
- Click on "<emphasis role="bold">ldapService</emphasis>" (at the bottom in the "Authentication chaining" section).
- </para>
- </step>
- <step>
- <para>
- Change the selection from "<literal>Datastore</literal>", which is the default module in the authentication chain, to "<literal>AuthenticationPlugin</literal>".
- </para>
- </step>
- </procedure>
-
- <para>
- These changes enable authentication of the "<literal>gatein</literal>" realm using the <literal>GateIn REST</literal> service instead of the OpenSSO LDAP server.
- </para>
- </step>
- <step>
- <para>
- Go to "<emphasis role="bold">Advanced properties</emphasis>" and change <literal>UserProfile</literal> from "<parameter>Required</parameter>" to "<parameter>Dynamic</parameter>" to ensure all new users are automatically created in the OpenSSO datastore after successful authentication.
- </para>
- </step>
- <step>
- <para>
- Increase the user privileges to allow REST access with the following procedure:
- </para>
- <procedure>
- <step>
- <para>
- Go to "<emphasis role="bold">Access control</emphasis>", then <emphasis role="bold">Top level realm</emphasis>, then click on the "<emphasis role="bold">Privileges</emphasis>" tab and go to "<emphasis role="bold">All authenticated users</emphasis>".
- </para>
- </step>
- <step>
- <para>
- Check the last two checkboxes:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- Read and write access only for policy properties
- </para>
- </listitem>
- <listitem>
- <para>
- Read and write access to all realm and policy properties
- </para>
- </listitem>
- </itemizedlist>
- </step>
- </procedure>
- </step>
- <step>
- <para>
- Repeat step 7 for the '<literal>gatein</literal>' realm as well.
- </para>
- </step>
- </procedure>
-
- <!-- <para>
+ </step>
+ <step>
+ <para>
+ Copy the following files;
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <filename><replaceable>PORTAL_SSO</replaceable>/opensso/plugin/WEB-INF/lib/sso-opensso-plugin-<VERSION>.jar</filename>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <filename><replaceable>PORTAL_SSO</replaceable>/opensso/plugin/WEB-INF/lib/commons-httpclient-<VERSION>.jar</filename>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <filename><replaceable>PORTAL_SSO</replaceable>/opensso/plugin/WEB-INF/lib/commons-logging-<VERSION>.jar</filename>
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ ...into the Tomcat directory at <filename>TOMCAT_HOME/webapps/opensso/WEB-INF/lib</filename>.
+ </para>
+ </step>
+ <step>
+ <para>
+ Copy the <filename><replaceable>PORTAL_SSO</replaceable>/opensso/plugin/WEB-INF/classes/gatein.properties</filename> file into the <filename>TOMCAT_HOME/webapps/opensso/WEB-INF/classes</filename> directory.
+ </para>
+ </step>
+ <step>
+ <para>
+ Tomcat should start and be able to access <ulink type="http" url="http://localhost:8888/opensso/UI/Login?realm=gatein">http://localhost:8888/opensso/UI/Login?realm=gatein</ulink>.
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/AuthenticationAndIdentity/SSO/opensso-shot.png" format="PNG" scale="110" width="444" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="150mm" fileref="images/AuthenticationAndIdentity/SSO/opensso-shot.png" format="PNG" width="444" />
+ </imageobject>
+ </mediaobject>
+ <note>
+ <para>
+ Login will not be available at this point.
+ </para>
+ </note>
+ </step>
+ </procedure>
+
+ <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Configure_the_gatein_realm">
+ <title>Configure the "gatein" realm</title>
+ <step>
+ <para>
+ Direct your browser to <ulink type="http" url="http://localhost:8888/opensso">http://localhost:8888/opensso</ulink>
+ </para>
+ </step>
+ <step>
+ <para>
+ Create a default configuration.
+ </para>
+ </step>
+ <step>
+ <para>
+ Login as <literal>admin</literal>.
+ </para>
+ <important>
+ <para>
+ Go to the "<emphasis role="bold">Configuration</emphasis>" tab then to "<emphasis role="bold">Authentication</emphasis>".
+ </para>
+ <para>
+ Follow the link to "<emphasis role="bold">Core</emphasis>" and add a new value with the class name "<literal>org.gatein.sso.opensso.plugin.AuthenticationPlugin</literal>".
+ </para>
+ <para>
+ If this is not done <literal>AuthenticationPlugin</literal> is not available among other OpenSSO authentication modules.
+ </para>
+ </important>
+ </step>
+ <step>
+ <para>
+ Go to the "<emphasis role="bold">Access control</emphasis>" tab and create new realm called "<literal>gatein</literal>".
+ </para>
+ </step>
+ <step>
+ <procedure>
+ <step>
+ <para>
+ Go to the new "<literal>gatein</literal>" realm and click on the "<emphasis role="bold">Authentication</emphasis>" tab.
+ </para>
+ </step>
+ <step>
+ <para>
+ Click on "<emphasis role="bold">ldapService</emphasis>" (at the bottom in the "Authentication chaining" section).
+ </para>
+ </step>
+ <step>
+ <para>
+ Change the selection from "<literal>Datastore</literal>", which is the default module in the authentication chain, to "<literal>AuthenticationPlugin</literal>".
+ </para>
+ </step>
+ </procedure>
+
+ <para>
+ These changes enable authentication of the "<literal>gatein</literal>" realm using the <literal>GateIn REST</literal> service instead of the OpenSSO LDAP server.
+ </para>
+ </step>
+ <step>
+ <para>
+ Go to "<emphasis role="bold">Advanced properties</emphasis>" and change <literal>UserProfile</literal> from "<parameter>Required</parameter>" to "<parameter>Dynamic</parameter>" to ensure all new users are automatically created in the OpenSSO datastore after successful authentication.
+ </para>
+ </step>
+ <step>
+ <para>
+ Increase the user privileges to allow REST access with the following procedure:
+ </para>
+ <procedure>
+ <step>
+ <para>
+ Go to "<emphasis role="bold">Access control</emphasis>", then <emphasis role="bold">Top level realm</emphasis>, then click on the "<emphasis role="bold">Privileges</emphasis>" tab and go to "<emphasis role="bold">All authenticated users</emphasis>".
+ </para>
+ </step>
+ <step>
+ <para>
+ Check the last two checkboxes:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ Read and write access only for policy properties
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Read and write access to all realm and policy properties
+ </para>
+ </listitem>
+ </itemizedlist>
+ </step>
+ </procedure>
+ </step>
+ <step>
+ <para>
+ Repeat step 7 for the '<literal>gatein</literal>' realm as well.
+ </para>
+ </step>
+ </procedure>
+
+ <!-- <para>
TODO: The above OpenSSO manual configuration could be replaced by configuration files prepared in advance
</para> -->
- <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Setup_the_OpenSSO_client">
- <title>Setup the OpenSSO client</title>
- <step>
- <para>
- Copy all libraries from the <filename><replaceable>PORTAL_SSO</replaceable>/opensso/gatein.ear/lib</filename> directory into the <filename>JBOSS_HOME/server/default/deploy/gatein.ear/lib</filename> directory.
- </para>
- <para>
- Alternatively, in a Tomcat environment, copy the libraries into the <filename>GATEIN_HOME/lib</filename> directory.
- </para>
- </step>
- <step>
- <para>
- Edit the <filename>jboss-as/server/<replaceable>PROFILE</replaceable>/deploy/gatein.ear/META-INF/gatein-jboss-beans.xml</filename> and uncomment this section:
- </para>
-
+ <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Setup_the_OpenSSO_client">
+ <title>Setup the OpenSSO client</title>
+ <step>
+ <para>
+ Copy all libraries from the <filename><replaceable>PORTAL_SSO</replaceable>/opensso/gatein.ear/lib</filename> directory into the <filename>JBOSS_HOME/server/default/deploy/gatein.ear/lib</filename> directory.
+ </para>
+ <para>
+ Alternatively, in a Tomcat environment, copy the libraries into the <filename>GATEIN_HOME/lib</filename> directory.
+ </para>
+ </step>
+ <step>
+ <para>
+ Edit the <filename>jboss-as/server/<replaceable>PROFILE</replaceable>/deploy/gatein.ear/META-INF/gatein-jboss-beans.xml</filename> and uncomment this section:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default118.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Test the installation:
- </para>
- <procedure>
- <step>
- <para>
- Access JBoss Enterprise Portal Platform by going to <ulink type="http" url="http://localhost:8888/opensso/UI/Login?realm=gatein">http://localhost:8888/opensso/UI/Login?realm=gatein</ulink> (assuming that the OpenSSO server using Tomcat is still running).
- </para>
- </step>
- <step>
- <para>
- Login with the username <literal>root</literal> and the password <literal>gtn</literal> or any account created through the portal.
- </para>
- </step>
- </procedure>
- </step>
- </procedure>
-
- <para>
- The next part of the process is to redirect all user authentication to the OpenSSO server.
- </para>
- <para>
- Information about where the OpenSSO server is hosted must be properly configured within the Enterprise Portal Platform instance. The required configuration is done by modifying three files:
- </para>
- <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Setup_the_portal_to_redirect_to_OpenSSO">
- <title>Setup the portal to redirect to OpenSSO</title>
- <step>
- <para>
- Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/groovy/webui/component/UIBannerPortlet.gtml</filename> file as follows:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Test the installation:
+ </para>
+ <procedure>
+ <step>
+ <para>
+ Access JBoss Enterprise Portal Platform by going to <ulink type="http" url="http://localhost:8888/opensso/UI/Login?realm=gatein">http://localhost:8888/opensso/UI/Login?realm=gatein</ulink> (assuming that the OpenSSO server using Tomcat is still running).
+ </para>
+ </step>
+ <step>
+ <para>
+ Login with the username <literal>root</literal> and the password <literal>gtn</literal> or any account created through the portal.
+ </para>
+ </step>
+ </procedure>
+ </step>
+ </procedure>
+
+ <para>
+ The next part of the process is to redirect all user authentication to the OpenSSO server.
+ </para>
+ <para>
+ Information about where the OpenSSO server is hosted must be properly configured within the Enterprise Portal Platform instance. The required configuration is done by modifying three files:
+ </para>
+ <procedure id="proc-Reference_Guide-OpenSSO_The_Open_Web_SSO_project-Setup_the_portal_to_redirect_to_OpenSSO">
+ <title>Setup the portal to redirect to OpenSSO</title>
+ <step>
+ <para>
+ Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/groovy/webui/component/UIBannerPortlet.gtml</filename> file as follows:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default119.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/portal/webui/component/UILogoPortlet.gtmpl</filename> file as follows:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Modify the '<emphasis role="bold">Sign In</emphasis>' link in the <filename>gatein.ear/web.war/groovy/portal/webui/component/UILogoPortlet.gtmpl</filename> file as follows:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default120.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Replace the entire contents of <filename>gatein.ear/02portal.war/login/jsp/login.jsp</filename> with:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Replace the entire contents of <filename>gatein.ear/02portal.war/login/jsp/login.jsp</filename> with:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default121.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Add the following Filters to the top of the filter chain in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename>:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Add the following Filters to the top of the filter chain in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename>:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default122.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Replace the <literal>InitiateLoginServlet</literal> declaration in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename> with:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Replace the <literal>InitiateLoginServlet</literal> declaration in <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename> with:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default123.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- </procedure>
-
- <para>
- From now on, all links redirecting to the user authentication pages will redirect to the OpenSSO centralized authentication form.
- </para>
- </section>
+ </step>
+ </procedure>
+
+ <para>
+ From now on, all links redirecting to the user authentication pages will redirect to the OpenSSO centralized authentication form.
+ </para>
+ </section>
-
- <section id="sect-Reference_Guide-SSO_Single_Sign_On-SPNEGO_Simple_and_Protected_GSSAPI_Negotiation_Mechanism">
- <title>SPNEGO - Simple and Protected GSSAPI Negotiation Mechanism</title>
- <para>
- The Simple and Protected GSSAPI Negotiation Mechanism (<emphasis role="bold">SPNEGO</emphasis>) uses desktop credentials provided during a desktop login to transparently authenticate a portal user through a web browser.
- </para>
- <para>
- For illustrative purposes; a typical use case would be:
- </para>
- <procedure>
- <step>
- <para>
- A user logs into their desktop computer with a login that is governed by an Active Directory domain.
- </para>
- </step>
- <step>
- <para>
+
+ <section id="sect-Reference_Guide-SSO_Single_Sign_On-SPNEGO_Simple_and_Protected_GSSAPI_Negotiation_Mechanism">
+ <title>SPNEGO - Simple and Protected GSSAPI Negotiation Mechanism</title>
+ <para>
+ The Simple and Protected GSSAPI Negotiation Mechanism (<emphasis role="bold">SPNEGO</emphasis>) uses desktop credentials provided during a desktop login to transparently authenticate a portal user through a web browser.
+ </para>
+ <para>
+ For illustrative purposes; a typical use case would be:
+ </para>
+ <procedure>
+ <step>
+ <para>
+ A user logs into their desktop computer with a login that is governed by an Active Directory domain.
+ </para>
+ </step>
+ <step>
+ <para>
The user then launches a web browser to access a web application (that uses JBoss Negotiation) hosted on JBoss Enterprise Portal Platform.
- </para>
- </step>
- <step>
- <para>
- The browser transfers the desktop credentials to the web application.
- </para>
- </step>
- <step>
- <para>
- JBoss EAP/AS uses background GSS messages with the Active Directory (or any Kerberos Server) to validate the user.
- </para>
- </step>
- <step>
- <para>
- The user experiences a seamless single sign on (SSO) into the web application.
- </para>
- </step>
- </procedure>
-
- <para>
- JBoss Enterprise Portal Platform uses JBoss Negotiation to enable SPNEGO-based desktop SSO.
- </para>
- <para>
- The following procedure outlines how to integrate SPNEGO with the JBoss Enterprise Portal Platform.
- </para>
- <procedure id="proc-Reference_Guide-SPNEGO_Simple_and_Protected_GSSAPI_Negotiation_Mechanism-SPNEGO_Configuration">
- <title>SPNEGO Configuration</title>
- <step>
- <para>
- Activate the Host authentication. Add the following host login module to the <filename>jboss-as/server/<replaceable>PROFILE</replaceable>/conf/login-config.xml</filename>:
- </para>
-
+ </para>
+ </step>
+ <step>
+ <para>
+ The browser transfers the desktop credentials to the web application.
+ </para>
+ </step>
+ <step>
+ <para>
+ JBoss EAP/AS uses background GSS messages with the Active Directory (or any Kerberos Server) to validate the user.
+ </para>
+ </step>
+ <step>
+ <para>
+ The user experiences a seamless single sign on (SSO) into the web application.
+ </para>
+ </step>
+ </procedure>
+
+ <para>
+ JBoss Enterprise Portal Platform uses JBoss Negotiation to enable SPNEGO-based desktop SSO.
+ </para>
+ <para>
+ The following procedure outlines how to integrate SPNEGO with the JBoss Enterprise Portal Platform.
+ </para>
+ <procedure id="proc-Reference_Guide-SPNEGO_Simple_and_Protected_GSSAPI_Negotiation_Mechanism-SPNEGO_Configuration">
+ <title>SPNEGO Configuration</title>
+ <step>
+ <para>
+ Activate the Host authentication. Add the following host login module to the <filename>jboss-as/server/<replaceable>PROFILE</replaceable>/conf/login-config.xml</filename>:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default124.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- The '<literal>keyTab</literal>' value should point to the keytab file that was generated by the <literal>kadmin</literal> Kerberos tool. See the <ulink type="http" url="http://community.jboss.org/wiki/SettingupyourKerberosDevelopmentEnvironment">Setting up your Kerberos Development Environment</ulink> guide for more details.
- </para>
- </step>
- <step>
- <para>
- Extend the core authentication mechanisms to support SPNEGO. Under <filename>deployers/jbossweb.deployer/META-INF/war-deployers-jboss-beans.xml</filename>, add a '<literal>SPNEGO</literal>' authenticators property
- </para>
-
+ <para>
+ The '<literal>keyTab</literal>' value should point to the keytab file that was generated by the <literal>kadmin</literal> Kerberos tool. See the <ulink type="http" url="http://community.jboss.org/wiki/SettingupyourKerberosDevelopmentEnvironment">Setting up your Kerberos Development Environment</ulink> guide for more details.
+ </para>
+ </step>
+ <step>
+ <para>
+ Extend the core authentication mechanisms to support SPNEGO. Under <filename>deployers/jbossweb.deployer/META-INF/war-deployers-jboss-beans.xml</filename>, add a '<literal>SPNEGO</literal>' authenticators property
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default125.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </step>
- <step>
- <para>
- Add the Gatein SSO module binaries by adding <filename><replaceable>PORTAL_SSO</replaceable>/spnego/gatein.ear/lib/sso-agent.jar</filename> and <filename><replaceable>PORTAL_SSO</replaceable>/spnego/gatein.ear/lib/spnego-<replaceable>VERSION</replaceable>-epp-GA.jar</filename> to <filename>deploy/gatein.ear/lib</filename>.
- </para>
- </step>
- <step>
- <para>
- Modifying <filename>deploy/gatein.ear/META-INF/gatein-jboss-beans.xml</filename> to match the following:
- </para>
-
+ </step>
+ <step>
+ <para>
+ Add the Gatein SSO module binaries by adding <filename><replaceable>PORTAL_SSO</replaceable>/spnego/gatein.ear/lib/sso-agent.jar</filename> and <filename><replaceable>PORTAL_SSO</replaceable>/spnego/gatein.ear/lib/spnego-<replaceable>VERSION</replaceable>-epp-GA.jar</filename> to <filename>deploy/gatein.ear/lib</filename>.
+ </para>
+ </step>
+ <step>
+ <para>
+ Modifying <filename>deploy/gatein.ear/META-INF/gatein-jboss-beans.xml</filename> to match the following:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default126.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- This activates the SPNEGO <literal>LoginModule</literal> for use with JBoss Enterprise Portal Platform.
- </para>
- </step>
- <step>
- <para>
- Modify <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename> to match:
- </para>
-
+ <para>
+ This activates the SPNEGO <literal>LoginModule</literal> for use with JBoss Enterprise Portal Platform.
+ </para>
+ </step>
+ <step>
+ <para>
+ Modify <filename>gatein.ear/02portal.war/WEB-INF/web.xml</filename> to match:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default127.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- This integrates SPNEGO support into the Portal web archive by switching authentication mechanism from the default "<literal>FORM</literal>"-based to "<literal>SPNEGO</literal>"-based authentication.
- </para>
- </step>
- <step>
- <para>
- Add the following filters to the top of the Filter chain in the <filename>web.xml</filename> file:
- </para>
-
+ <para>
+ This integrates SPNEGO support into the Portal web archive by switching authentication mechanism from the default "<literal>FORM</literal>"-based to "<literal>SPNEGO</literal>"-based authentication.
+ </para>
+ </step>
+ <step>
+ <para>
+ Add the following filters to the top of the Filter chain in the <filename>web.xml</filename> file:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../../extras/Authentication_Identity_SSO/default128.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- This integrates request pre-processing needed for SPNEGO.
- </para>
- </step>
- <step>
- <para>
- Edit the '<emphasis role="bold">Sign In</emphasis>' link in <filename><replaceable>JBOSS_HOME</replaceable>/jboss-as/server/<replaceable>PROFILE</replaceable>/deploy/gatein.ear/web.war/groovy/groovy/webui/component/UIBannerPortlet.gtmpl</filename> to match the following:
- </para>
-
+ <para>
+ This integrates request pre-processing needed for SPNEGO.
+ </para>
+ </step>
+ <step>
+ <para>
+ Edit the '<emphasis role="bold">Sign In</emphasis>' link in <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable>PROFILE</replaceable>/deploy/gatein.ear/web.war/groovy/groovy/webui/component/UIBannerPortlet.gtmpl</filename> to match the following:
+ </para>
+
<programlisting language="Java" role="Java"><xi:include href="../../extras/Authentication_Identity_SSO/default129.java" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- This modifies the Portal's '<emphasis role="bold">Sign In</emphasis>' link to perform SPNEGO authentication.
- </para>
- </step>
- <step>
- <para>
- Start the JBoss Enterprise Portal Platform;
- </para>
+ <para>
+ This modifies the Portal's '<emphasis role="bold">Sign In</emphasis>' link to perform SPNEGO authentication.
+ </para>
+ </step>
+ <step>
+ <para>
+ Start the JBoss Enterprise Portal Platform;
+ </para>
<programlisting language="Java" role="Java"><xi:include parse="text" href="../../extras/Authentication_Identity_SSO/default130.java" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- The <replaceable>PROFILE</replaceable> parameter in the above command should be replaced with the server profile modified with the above configuration.
- </para>
- </step>
- <step>
- <para>
- Login to Kerberos:
- </para>
-
+ <para>
+ The <replaceable>PROFILE</replaceable> parameter in the above command should be replaced with the server profile modified with the above configuration.
+ </para>
+ </step>
+ <step>
+ <para>
+ Login to Kerberos:
+ </para>
+
<programlisting>kinit -A demo
</programlisting>
- </step>
- </procedure>
-
- <para>
- Clicking the 'Sign In' link on the JBoss Enterprise Portal Platform should automatically sign the 'demo' user into the portal.
- </para>
- </section>
+ </step>
+ </procedure>
+
+ <para>
+ Clicking the 'Sign In' link on the JBoss Enterprise Portal Platform should automatically sign the 'demo' user into the portal.
+ </para>
+ </section>
</section>
Modified: epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity.xml 2011-07-26 04:48:07 UTC (rev 6928)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/modules/AuthenticationAndIdentity.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -6,11 +6,11 @@
<chapter id="chap-Reference_Guide-Authentication_and_Identity">
<title>Authentication and Identity</title>
<section id="sect-Reference_Guide-Authentication_and_Identity-Password_Encryption" >
- <title>Password Encryption</title>
+ <title><remark>Password Encryption</remark></title>
<!--The warning and first listitem below were relocated from sect-Reference_Guide-Authentication_Token_Configuration as security and plain-text password issues were being expanded on (from JBEPP-610)-->
<warning>
- <title>Username and passwords stored in clear text</title>
- <para>
+ <title>Username and passwords stored in clear text</title>
+ <para>
The <emphasis>Remember Me</emphasis> feature of JBoss Enterprise Portal Platform uses a token mechanism to be able to authenticate returning users without requiring an explicit login. However, to be able to authenticate these users, the token needs to store the username and password in clear text in the JCR.
</para>
</warning>
@@ -64,11 +64,11 @@
</orderedlist>
</section>
- <xi:include href="AuthenticationAndIdentity/PredefinedUserConfiguration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="AuthenticationAndIdentity/AuthenticationTokenConfiguration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="AuthenticationAndIdentity/BackendConfiguration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="AuthenticationAndIdentity/OrganizationAPI.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="AuthenticationAndIdentity/AccessingUserProfile.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="AuthenticationAndIdentity/SSO.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="AuthenticationAndIdentity/PredefinedUserConfiguration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="AuthenticationAndIdentity/AuthenticationTokenConfiguration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="AuthenticationAndIdentity/BackendConfiguration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="AuthenticationAndIdentity/OrganizationAPI.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="AuthenticationAndIdentity/AccessingUserProfile.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="AuthenticationAndIdentity/SSO.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<xi:include href="AuthenticationAndIdentity/LDAP.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
</chapter>
Modified: epp/docs/branches/5.1/Reference_Guide/en-US/modules/Introduction.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/modules/Introduction.xml 2011-07-26 04:48:07 UTC (rev 6928)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/modules/Introduction.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -4,65 +4,99 @@
%BOOK_ENTITIES;
]>
<chapter id="chap-Reference_Guide-Introduction">
- <title>Introduction</title>
- <para>
- JBoss Enterprise Portal Platform is based on the GateIn project which is the merge of two mature Java projects; JBoss Portal and eXo Portal. This new community project takes the best of both offerings and incorporates them into a single portal framework. The aim is to provide an intuitive user-friendly portal, and a framework to address the needs of today's Web 2.0 applications.
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/Common/Frontpage.png" format="PNG" scale="100" width="444" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="150mm" fileref="images/Common/Frontpage.png" format="PNG" width="444" />
- </imageobject>
- </mediaobject>
- <para>
- This book provides a deep-dive information about installation and configuration of the services provided by JBoss Enterprise Portal Platform.
- </para>
- <section id="sect-Reference_Guide-Introduction-Related_Links">
- <title>Related Links</title>
- <variablelist>
- <varlistentry>
- <term>Technical documentation</term>
- <listitem>
- <para>
- Other technical documentation, including an <emphasis role="bold">Installation Guide</emphasis>, and a <emphasis role="bold">User Guide</emphasis> can be found at <ulink type="http" url="http://www.redhat.com/docs/en-US/JBoss_Enterprise_Portal_Platform">www.redhat.com/docs</ulink>
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Non-technical documentation</term>
- <listitem>
- <para>
- Links to non-technical documents are included on the front page of the portal:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/Common/Non-tech-docs.png" format="PNG" scale="90" width="444" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="130mm" fileref="images/Common/Non-tech-docs.png" format="PNG" width="444" />
- </imageobject>
- </mediaobject>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Videos</term>
- <listitem>
- <para>
- A link to <ulink type="http" url="http://vimeo.com/channels/gatein">videos</ulink> related to the JBoss Enterprise Portal Platform is also included on the front page:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/Common/Videos.png" format="PNG" scale="90" width="444" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="130mm" fileref="images/Common/Videos.png" format="PNG" width="444" />
- </imageobject>
- </mediaobject>
- </listitem>
- </varlistentry>
- </variablelist>
- </section>
+ <title>Introduction</title>
+ <para>
+ JBoss Enterprise Portal Platform is based on the GateIn project which is the merge of two mature Java projects; JBoss Portal and eXo Portal. This new community project takes the best of both offerings and incorporates them into a single portal framework. The aim is to provide an intuitive user-friendly portal, and a framework to address the needs of today's Web 2.0 applications.
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/Common/Frontpage.png" format="PNG" scale="100" width="444" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="150mm" fileref="images/Common/Frontpage.png" format="PNG" width="444" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ This book provides a deep-dive information about installation and configuration of the services provided by JBoss Enterprise Portal Platform.
+ </para>
+ <note>
+ <title>Notational Devices</title>
+ <para>
+ Along with the <emphasis>Document Conventions</emphasis> outlined in the <xref linkend="pref-Reference_Guide-Preface"/>, this document will also use the following notational devices:
+ <variablelist>
+ <title>Devices</title>
+ <varlistentry>
+ <term><replaceable><JBOSS_HOME></replaceable></term>
+ <listitem>
+ <para>
+ This device will refer to the <application>JBoss Application Server</application> (<filename>jboss-as</filename>) directory deployed in JBoss Enterprise Portal Platform by default.
+ </para>
+ <para>
+ Therefore, if your JBoss Enterprise Portal Platform instance is deployed into a directory called <filename>jboss-epp-&VZ;/</filename>, your <replaceable><JBOSS_HOME></replaceable> directory would be <filename>jboss-epp-&VZ;/jboss-as/</filename>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><replaceable><PROFILE></replaceable></term>
+ <listitem>
+ <para>
+ This device will usually follow an instance of <replaceable><JBOSS_HOME></replaceable> in a file path and refers to the directory that contains the server profile your JBoss Enterprise Portal Platform instance is configured to use.
+ </para>
+ <para>
+ JBoss Enterprise Portal Platform comes with six profiles by default; <emphasis role="bold">all</emphasis>, <emphasis role="bold">default</emphasis>, <emphasis role="bold">minimal</emphasis>, <emphasis role="bold">production</emphasis>, <emphasis role="bold">standard</emphasis> and <emphasis role="bold">web</emphasis>. These profiles are found in the <filename><replaceable><JBOSS_HOME></replaceable>/server/</filename> directory.
+ </para>
+ <para>
+ Therefore, if you are using the <emphasis>default</emphasis> profile, your <replaceable><PROFILE></replaceable> directory would be <filename><replaceable><JBOSS_HOME></replaceable>/server/default/</filename>
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </note>
+ <section id="sect-Reference_Guide-Introduction-Related_Links">
+ <title>Related Links</title>
+ <variablelist>
+ <varlistentry>
+ <term>Technical documentation</term>
+ <listitem>
+ <para>
+ Other technical documentation, including an <emphasis role="bold">Installation Guide</emphasis>, and a <emphasis role="bold">User Guide</emphasis> can be found at <ulink type="http" url="http://www.redhat.com/docs/en-US/JBoss_Enterprise_Portal_Platform">www.redhat.com/docs</ulink>
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Non-technical documentation</term>
+ <listitem>
+ <para>
+ Links to non-technical documents are included on the front page of the portal:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/Common/Non-tech-docs.png" format="PNG" scale="90" width="444" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="130mm" fileref="images/Common/Non-tech-docs.png" format="PNG" width="444" />
+ </imageobject>
+ </mediaobject>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Videos</term>
+ <listitem>
+ <para>
+ A link to <ulink type="http" url="http://vimeo.com/channels/gatein">videos</ulink> related to the JBoss Enterprise Portal Platform is also included on the front page:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/Common/Videos.png" format="PNG" scale="90" width="444" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="130mm" fileref="images/Common/Videos.png" format="PNG" width="444" />
+ </imageobject>
+ </mediaobject>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
</chapter>
Modified: epp/docs/branches/5.1/Reference_Guide/en-US/modules/WSRP.xml
===================================================================
--- epp/docs/branches/5.1/Reference_Guide/en-US/modules/WSRP.xml 2011-07-26 04:48:07 UTC (rev 6928)
+++ epp/docs/branches/5.1/Reference_Guide/en-US/modules/WSRP.xml 2011-07-26 05:04:46 UTC (rev 6929)
@@ -4,70 +4,70 @@
%BOOK_ENTITIES;
]>
<chapter id="chap-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP">
- <title>Web Services for Remote Portlets (WSRP)</title>
- <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Introduction">
- <title>Introduction</title>
- <para>
- The Web Services for Remote Portlets (WSRP) specification defines a web service interface for accessing and interacting with interactive presentation-oriented web services.
- </para>
- <para>
- It has been produced through the efforts of the Web Services for Remote Portlets (WSRP) OASIS Technical Committee. It is based on the requirements gathered and the proposals made to the committee.
- </para>
- <para>
- Scenarios that motivate WSRP functionality include:
- </para>
- <itemizedlist>
- <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>
- <para>
- Aggregating frameworks, including portal servers, consuming presentation-oriented web services offered by content providers and integrating them into the framework.
- </para>
- </listitem>
- </itemizedlist>
+ <title>Web Services for Remote Portlets (WSRP)</title>
+ <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Introduction">
+ <title>Introduction</title>
+ <para>
+ The Web Services for Remote Portlets (WSRP) specification defines a web service interface for accessing and interacting with interactive presentation-oriented web services.
+ </para>
+ <para>
+ It has been produced through the efforts of the Web Services for Remote Portlets (WSRP) OASIS Technical Committee. It is based on the requirements gathered and the proposals made to the committee.
+ </para>
+ <para>
+ Scenarios that motivate WSRP functionality include:
+ </para>
+ <itemizedlist>
+ <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>
+ <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>
- More information on WSRP can be found on the official <ulink url="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsrp">website</ulink>. We suggest reading the <ulink url="http://www.oasis-open.org/committees/download.php/10539/wsrp-primer-1.0.html">primer</ulink> for a good, albeit technical, overview of WSRP.
- </para>
- </section>
+ <para>
+ More information on WSRP can be found on the official <ulink url="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsrp">website</ulink>. We suggest reading the <ulink url="http://www.oasis-open.org/committees/download.php/10539/wsrp-primer-1.0.html">primer</ulink> for a good, albeit technical, overview of WSRP.
+ </para>
+ </section>
-
- <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Level_of_Support">
- <title>Level of Support</title>
- <para>
- The WSRP Technical Committee defined <ulink url="http://www.oasis-open.org/committees/download.php/3073">WSRP Use Profiles</ulink> to help with WSRP interoperability. Terms defined in that document will be used in this section.
- </para>
- <para>
- JBoss Enterprise Portal Platform provides a <emphasis>Simple</emphasis> level of support for the WSRP Producer, with the exception of out-of-band registration. In-band registration and persistent local state (which are defined at the <emphasis>Complex</emphasis> level) are supported.
- </para>
- <para>
- JBoss Enterprise Portal Platform provides a <emphasis>Medium</emphasis> level of support for the Consumer, excepting HTML markup (as JBoss Enterprise Portal Platform itself does not handle other markup types). Explicit portlet cloning and the <literal>PortletManagement</literal> interface are supported.
- </para>
- <para>
- The WSRP component has Level 1 Producer and Consumer caching. Cookie handling is supported properly on the Consumer. The Producer requires cookie initialization (as this improves interoperability with some consumers).
- </para>
- <para>
- JBoss Enterprise Portal Platform does not support custom window states or modes, therefore neither does the WSRP component. It does, however, support CSS on both the Producer (although this is more a function of the portlets than an inherent Producer capability) and Consumer.
- </para>
- <para>
- JBoss Enterprise Portal Platform 5.1 includes implementations of WSRP 1.0 and 2.0.
+
+ <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Level_of_Support">
+ <title>Level of Support</title>
+ <para>
+ The WSRP Technical Committee defined <ulink url="http://www.oasis-open.org/committees/download.php/3073">WSRP Use Profiles</ulink> to help with WSRP interoperability. Terms defined in that document will be used in this section.
+ </para>
+ <para>
+ JBoss Enterprise Portal Platform provides a <emphasis>Simple</emphasis> level of support for the WSRP Producer, with the exception of out-of-band registration. In-band registration and persistent local state (which are defined at the <emphasis>Complex</emphasis> level) are supported.
+ </para>
+ <para>
+ JBoss Enterprise Portal Platform provides a <emphasis>Medium</emphasis> level of support for the Consumer, excepting HTML markup (as JBoss Enterprise Portal Platform itself does not handle other markup types). Explicit portlet cloning and the <literal>PortletManagement</literal> interface are supported.
+ </para>
+ <para>
+ The WSRP component has Level 1 Producer and Consumer caching. Cookie handling is supported properly on the Consumer. The Producer requires cookie initialization (as this improves interoperability with some consumers).
+ </para>
+ <para>
+ JBoss Enterprise Portal Platform does not support custom window states or modes, therefore neither does the WSRP component. It does, however, support CSS on both the Producer (although this is more a function of the portlets than an inherent Producer capability) and Consumer.
+ </para>
+ <para>
+ JBoss Enterprise Portal Platform 5.1 includes implementations of WSRP 1.0 and 2.0.
</para>
<para>
All optional features in WSRP 2 are implemented in JBoss Enterprise Portal Platform 5.1 except support for lifetimes and leasing support.
</para>
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Deploying_WSRP">
- <title>Deploying WSRP</title>
- <note>
- <title>Notational Devices</title>
- <para>
- The following list of support files uses the following notational devices:
- </para>
+
+ <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Deploying_WSRP">
+ <title>Deploying WSRP</title>
+ <note>
+ <title>Notational Devices</title>
+ <para>
+ The following list of support files uses the following notational devices:
+ </para>
<variablelist>
<title>Notations:</title>
<varlistentry>
@@ -106,50 +106,50 @@
</listitem>
</varlistentry>
</variablelist>
- </note>
+ </note>
- <variablelist id="vari-Reference_Guide-Deploying_WSRP-WSRP_support_files">
- <title>WSRP support files</title>
- <varlistentry>
+ <variablelist id="vari-Reference_Guide-Deploying_WSRP-WSRP_support_files">
+ <title>WSRP support files</title>
+ <varlistentry>
<term><replaceable>WSRP_PATH</replaceable>/wsrp-admin-gui.war</term>
- <listitem>
- <para>
- This file contains the WSRP Configuration portlet with which you can configure consumers to access remote servers and how the WSRP producer is configured.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><replaceable>WSRP_PATH</replaceable>/wsrp-producer.war</term>
- <listitem>
- <para>
- This file contains the WSRP producer web application.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-common-<replaceable>WSRP_VERSION</replaceable>.jar</term>
- <listitem>
- <para>
- This file contains common classes needed by the different WSRP libraries.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-consumer-<replaceable>WSRP_VERSION</replaceable>.jar</term>
- <listitem>
- <para>
- This file contains the WSRP consumer.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-integration-api-<replaceable>WSRP_VERSION</replaceable>.jar</term>
- <listitem>
- <para>
- This file contains the API classes needed to integrate the WSRP component into portals.
- </para>
- </listitem>
- </varlistentry>
+ <listitem>
+ <para>
+ This file contains the WSRP Configuration portlet with which you can configure consumers to access remote servers and how the WSRP producer is configured.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><replaceable>WSRP_PATH</replaceable>/wsrp-producer.war</term>
+ <listitem>
+ <para>
+ This file contains the WSRP producer web application.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-common-<replaceable>WSRP_VERSION</replaceable>.jar</term>
+ <listitem>
+ <para>
+ This file contains common classes needed by the different WSRP libraries.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-consumer-<replaceable>WSRP_VERSION</replaceable>.jar</term>
+ <listitem>
+ <para>
+ This file contains the WSRP consumer.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-integration-api-<replaceable>WSRP_VERSION</replaceable>.jar</term>
+ <listitem>
+ <para>
+ This file contains the API classes needed to integrate the WSRP component into portals.
+ </para>
+ </listitem>
+ </varlistentry>
<varlistentry>
<term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-producer-lib-$WSRP_VERSION.jar</term>
<listitem>
@@ -158,14 +158,14 @@
</para>
</listitem>
</varlistentry>
- <varlistentry>
- <term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-wsrp1-ws-<replaceable>WSRP_VERSION</replaceable>.jar</term>
- <listitem>
- <para>
- This file contains the generated JAX-WS classes for WSRP version 1.
- </para>
- </listitem>
- </varlistentry>
+ <varlistentry>
+ <term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-wsrp1-ws-<replaceable>WSRP_VERSION</replaceable>.jar</term>
+ <listitem>
+ <para>
+ This file contains the generated JAX-WS classes for WSRP version 1.
+ </para>
+ </listitem>
+ </varlistentry>
<varlistentry>
<term><replaceable>WSRP_PATH</replaceable>/lib/wsrp-wsrp2-ws-<replaceable>WSRP_VERSION</replaceable>.jar</term>
<listitem>
@@ -174,105 +174,105 @@
</para>
</listitem>
</varlistentry>
- <varlistentry>
- <term><replaceable>WSRP_PATH</replaceable>/lib/gatein.portal.component.wsrp-<replaceable>PORTAL_VERSION</replaceable>.jar</term>
- <listitem>
- <para>
- This file contains the code to integrate the WSRP service into JBoss Enterprise Portal Platform.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
+ <varlistentry>
+ <term><replaceable>WSRP_PATH</replaceable>/lib/gatein.portal.component.wsrp-<replaceable>PORTAL_VERSION</replaceable>.jar</term>
+ <listitem>
+ <para>
+ This file contains the code to integrate the WSRP service into JBoss Enterprise Portal Platform.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
- <section id="sect-Reference_Guide-Deploying_WSRP-Non_default_Ports_or_Hostnames">
- <title>Non-default Ports or Hostnames</title>
- <para>
- JBoss WS (the web service stack that JBoss Enterprise Portal Platform uses) should update the port and host name used in WSDL. Refer to the JBoss WS <ulink url="http://community.jboss.org/wiki/JBossWS-UserGuide#Configuration">user guide</ulink> for more information.
- </para>
- <para>
- If the host name and port on which the server runs have been modified, the configuration for the Consumer used to consume JBoss Enterprise Portal Platform's "self" Producer will need to be updated. Refer to <xref linkend="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Consuming_Remote_WSRP_Portlets" /> for directions on how to do this.
- </para>
- </section>
+ <section id="sect-Reference_Guide-Deploying_WSRP-Non_default_Ports_or_Hostnames">
+ <title>Non-default Ports or Hostnames</title>
+ <para>
+ JBoss WS (the web service stack that JBoss Enterprise Portal Platform uses) should update the port and host name used in WSDL. Refer to the JBoss WS <ulink url="http://community.jboss.org/wiki/JBossWS-UserGuide#Configuration">user guide</ulink> for more information.
+ </para>
+ <para>
+ If the host name and port on which the server runs have been modified, the configuration for the Consumer used to consume JBoss Enterprise Portal Platform's "self" Producer will need to be updated. Refer to <xref linkend="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Consuming_Remote_WSRP_Portlets" /> for directions on how to do this.
+ </para>
+ </section>
-
- <section id="sect-Reference_Guide-Deploying_WSRP-Using_WSRP_with_SSL">
- <title>Using WSRP with SSL</title>
- <para>
- It is possible to use WSRP over SSL for secure exchange of data. Refer to these <ulink url="http://community.jboss.org/wiki/ConfiguringWSRPforuseoverSSL">instructions</ulink> for how to do this.
- </para>
- </section>
- </section>
+
+ <section id="sect-Reference_Guide-Deploying_WSRP-Using_WSRP_with_SSL">
+ <title>Using WSRP with SSL</title>
+ <para>
+ It is possible to use WSRP over SSL for secure exchange of data. Refer to these <ulink url="http://community.jboss.org/wiki/ConfiguringWSRPforuseoverSSL">instructions</ulink> for how to do this.
+ </para>
+ </section>
+ </section>
-
- <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Making_a_Portlet_Remotable">
- <title>Making a Portlet Remotable</title>
- <note>
- <para>
- Only JSR-286 (Portlet 2.0) portlets can be made remotable as the mechanism to expose a portlet to WSRP relies on a JSR-286-only functionality.
- </para>
- </note>
- <para>
- JBoss Enterprise Portal Platform does <emphasis role="bold">not</emphasis>, by default, expose local portlets for consumption by remote WSRP consumers.
- </para>
- <para>
- 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>.
- </para>
- <para>
- A specific <code>org.gatein.pc.remotable container-runtime-option</code> is used to accomplish this. Setting its value to <code>true</code> makes the portlet available for remote consumption, while setting its value to <code>false</code> will not publish it remotely.
- </para>
- <para>
- As specifying the remotable status for a portlet is optional, nothing need be done if portlets do not need to be remotely available.
- </para>
- <para>
- In the following example, the "BasicPortlet" portlet is specified as being remotable.
- </para>
-
+
+ <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Making_a_Portlet_Remotable">
+ <title>Making a Portlet Remotable</title>
+ <note>
+ <para>
+ Only JSR-286 (Portlet 2.0) portlets can be made remotable as the mechanism to expose a portlet to WSRP relies on a JSR-286-only functionality.
+ </para>
+ </note>
+ <para>
+ JBoss Enterprise Portal Platform does <emphasis role="bold">not</emphasis>, by default, expose local portlets for consumption by remote WSRP consumers.
+ </para>
+ <para>
+ 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>.
+ </para>
+ <para>
+ A specific <code>org.gatein.pc.remotable container-runtime-option</code> is used to accomplish this. Setting its value to <code>true</code> makes the portlet available for remote consumption, while setting its value to <code>false</code> will not publish it remotely.
+ </para>
+ <para>
+ As specifying the remotable status for a portlet is optional, nothing need be done if portlets do not need to be remotely available.
+ </para>
+ <para>
+ In the following example, the "BasicPortlet" portlet is specified as being remotable.
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../extras/WSRP/default255.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- It is also possible to specify that all the portlets declared within a given portlet application be remotable by default.
- </para>
- <para>
- This is done by specifying the <code>container-runtime-option</code> at the <code>portlet-app</code> element level. Individual portlets can override that value to not be remotely exposed.
- </para>
- <para>
- For example:
- </para>
-
+ <para>
+ It is also possible to specify that all the portlets declared within a given portlet application be remotable by default.
+ </para>
+ <para>
+ This is done by specifying the <code>container-runtime-option</code> at the <code>portlet-app</code> element level. Individual portlets can override that value to not be remotely exposed.
+ </para>
+ <para>
+ For example:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../extras/WSRP/default256.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- This example defines two portlets. As the <code>org.gatein.pc.remotable container-runtime-option</code> is set to <code>true</code> at the <code>portlet-app</code> level, all portlets defined in this particular portlet application are exposed remotely by JBoss Enterprise Portal Platform's WSRP Producer.
- </para>
- <para>
- It is possible to override this default behavior. Specifying a value for the <code>org.gatein.pc.remotable container-runtime-option</code> at the <code>portlet</code> level will take precedence over the default.
- </para>
- <para>
- In the example above, the <varname>RemotelyExposedPortlet</varname> inherits the remotable status defined at the <code>portlet-app</code> level since it does not specify a value for the <code>org.gatein.pc.remotable container-runtime-option</code>.
- </para>
- <para>
- The <varname>NotRemotelyExposedPortlet</varname>, however, overrides the default behavior and is not remotely exposed.
- </para>
- <note>
- <para>
- Portlets are not remotely exposed if no top-level <code>org.gatein.pc.remotable container-runtime-option</code> value is set to <code>true</code>.
- </para>
- </note>
- </section>
+ <para>
+ This example defines two portlets. As the <code>org.gatein.pc.remotable container-runtime-option</code> is set to <code>true</code> at the <code>portlet-app</code> level, all portlets defined in this particular portlet application are exposed remotely by JBoss Enterprise Portal Platform's WSRP Producer.
+ </para>
+ <para>
+ It is possible to override this default behavior. Specifying a value for the <code>org.gatein.pc.remotable container-runtime-option</code> at the <code>portlet</code> level will take precedence over the default.
+ </para>
+ <para>
+ In the example above, the <varname>RemotelyExposedPortlet</varname> inherits the remotable status defined at the <code>portlet-app</code> level since it does not specify a value for the <code>org.gatein.pc.remotable container-runtime-option</code>.
+ </para>
+ <para>
+ The <varname>NotRemotelyExposedPortlet</varname>, however, overrides the default behavior and is not remotely exposed.
+ </para>
+ <note>
+ <para>
+ Portlets are not remotely exposed if no top-level <code>org.gatein.pc.remotable container-runtime-option</code> value is set to <code>true</code>.
+ </para>
+ </note>
+ </section>
-
+
<section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Consuming_WSRP_portlets_from_a_remote_Consumer">
- <title>Consuming WSRP portlets from a remote Consumer</title>
- <para>
- Configuration is extremely variable between different WSRP Consumers. Most, however, require a specification of the URL for the Producer's WSDL definition. If the JBoss Enterprise Portal Platform Consumer is not being used, refer to the documentation for the Consumer that is in use for specific instructions.
- </para>
- <para>
- For instructions on how to specify this URL in JBoss Enterprise Portal Platform, refer to <xref linkend="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Consuming_Remote_WSRP_Portlets" />.
- </para>
- <para>
- JBoss Enterprise Portal Platform's Producer is automatically set up when a portal instance is deployed with the WSRP service.
- </para>
- <para>
+ <title>Consuming WSRP portlets from a remote Consumer</title>
+ <para>
+ Configuration is extremely variable between different WSRP Consumers. Most, however, require a specification of the URL for the Producer's WSDL definition. If the JBoss Enterprise Portal Platform Consumer is not being used, refer to the documentation for the Consumer that is in use for specific instructions.
+ </para>
+ <para>
+ For instructions on how to specify this URL in JBoss Enterprise Portal Platform, refer to <xref linkend="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Consuming_Remote_WSRP_Portlets" />.
+ </para>
+ <para>
+ JBoss Enterprise Portal Platform's Producer is automatically set up when a portal instance is deployed with the WSRP service.
+ </para>
+ <para>
The WSDL file can be accessed at:
- </para>
+ </para>
<variablelist>
<title>File paths:</title>
<varlistentry>
@@ -295,56 +295,56 @@
<para>
The default hostname is <literal>localhost</literal> and the default port is <literal>8080</literal>.
</para>
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Consuming_Remote_WSRP_Portlets">
- <title>Consuming Remote WSRP Portlets</title>
- <section id="sect-Reference_Guide-Consuming_Remote_WSRP_Portlets-Overview">
- <title>Overview</title>
- <para>
- To be able to consume WSRP portlets exposed by a remote producer, JBoss Enterprise Portal Platform's WSRP consumer must be configured to access that remote producer.
- </para>
- <para>
- Access to a remote producer can be configured using WSRP Producer descriptors. Alternatively, a portlet is provided to configure remote producers.
- </para>
- <para>
- 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>
+
+ <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Consuming_Remote_WSRP_Portlets">
+ <title>Consuming Remote WSRP Portlets</title>
+ <section id="sect-Reference_Guide-Consuming_Remote_WSRP_Portlets-Overview">
+ <title>Overview</title>
+ <para>
+ To be able to consume WSRP portlets exposed by a remote producer, JBoss Enterprise Portal Platform's WSRP consumer must be configured to access that remote producer.
+ </para>
+ <para>
+ Access to a remote producer can be configured using WSRP Producer descriptors. Alternatively, a portlet is provided to configure remote producers.
+ </para>
+ <para>
+ 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>
<!-- Removed as out of date and not in Community version of doc.
- <para>
- A default consumer named <literal>self</literal>, that consumes the portlets exposed by JBoss Enterprise Portal Platform's producer, has been configured as a way to test the WSRP producer service and to check that portlets are correctly published via WSRP.
- </para>
+ <para>
+ A default consumer named <literal>self</literal>, that consumes the portlets exposed by JBoss Enterprise Portal Platform's producer, has been configured as a way to test the WSRP producer service and to check that portlets are correctly published via WSRP.
+ </para>
-->
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Consuming_Remote_WSRP_Portlets-Configuring_a_Remote_Producer">
- <title>Configuring a Remote Producer</title>
- <para>
- Access to a remote producer needs to be defined so that portlets can be consumed within JBoss Enterprise Portal Platform. This section will show how to configure access to <emphasis role="bold">Oracle</emphasis>'s public WSRP producer. Firstly using the configuration portlet. Then how the same result can be accomplished with a producer descriptor, though it is far easier to do so via the configuration portlet.
- </para>
- <important>
- <title>Chunked Encoding</title>
- <para>
- Some WSRP producers, such as Oracle, do not support chunked encoding. If your producer does not support chunked encoding, it will not be able to properly connect to the producer.
- </para>
+
+ <section id="sect-Reference_Guide-Consuming_Remote_WSRP_Portlets-Configuring_a_Remote_Producer">
+ <title>Configuring a Remote Producer</title>
<para>
+ Access to a remote producer needs to be defined so that portlets can be consumed within JBoss Enterprise Portal Platform. This section will show how to configure access to <emphasis role="bold">Oracle</emphasis>'s public WSRP producer. Firstly using the configuration portlet. Then how the same result can be accomplished with a producer descriptor, though it is far easier to do so via the configuration portlet.
+ </para>
+ <important>
+ <title>Chunked Encoding</title>
+ <para>
+ Some WSRP producers, such as Oracle, do not support chunked encoding. If your producer does not support chunked encoding, it will not be able to properly connect to the producer.
+ </para>
+ <para>
This will manifest itself with the following error:
</para>
<screen>Caused by: org.jboss.ws.WSException: Invalid HTTP server response [503] - Service Unavailable.
</screen>
- <para>
- A workaround for this issue involves editing the <parameter>chunksize</parameter> setting in the <filename>standard-jaxws-client-config.xml</filename> file.
- </para>
- <para>
- Refer to <ulink type="http" url="http://community.jboss.org/wiki/Workaroundwhenchunkedencodingisnotsupported">http://community.jboss.org/wiki/Workaroundwhenchunkedencodingisnotsupported</ulink> for more information.
- </para>
- </important>
- <section id="sect-Reference_Guide-Configuring_a_Remote_Producer-The_Configuration_Portlet">
- <title>The Configuration Portlet</title>
- <para>
- JBoss Enterprise Portal Platform provides a graphical portlet to assist with configuring access to, and other facets of, remote WSRP Producers.
+ <para>
+ A workaround for this issue involves editing the <parameter>chunksize</parameter> setting in the <filename>standard-jaxws-client-config.xml</filename> file.
+ </para>
+ <para>
+ Refer to <ulink type="http" url="http://community.jboss.org/wiki/Workaroundwhenchunkedencodingisnotsupported">http://community.jboss.org/wiki/Workaroundwhenchunkedencodingisnotsupported</ulink> for more information.
+ </para>
+ </important>
+ <section id="sect-Reference_Guide-Configuring_a_Remote_Producer-The_Configuration_Portlet">
+ <title>The Configuration Portlet</title>
+ <para>
+ JBoss Enterprise Portal Platform provides a graphical portlet to assist with configuring access to, and other facets of, remote WSRP Producers.
</para>
<para>
It is available at: <ulink type="http" url="http://localhost:8080/portal/login?initialURI=%2Fportal%2Fprivate%2Fclass..."></ulink>.
@@ -495,133 +495,133 @@
</imageobject>
</mediaobject>
</section>
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Configuring_a_Remote_Producer-Using_XML">
- <title>Using XML</title>
- <para>
- Although using the WSRP Configuration portlet to configure Consumers is recommended, the WSRP component provides an alternative way to configure consumers.
- </para>
- <para>
- This is done by editing the XML file located at <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-consumer-<replaceable>WSRP_VERSION</replaceable>.jar/conf/wsrp-consumers-config.xml</filename>.
- </para>
-
+
+ <section id="sect-Reference_Guide-Configuring_a_Remote_Producer-Using_XML">
+ <title>Using XML</title>
+ <para>
+ Although using the WSRP Configuration portlet to configure Consumers is recommended, the WSRP component provides an alternative way to configure consumers.
+ </para>
+ <para>
+ This is done by editing the XML file located at <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-consumer-<replaceable>WSRP_VERSION</replaceable>.jar/conf/wsrp-consumers-config.xml</filename>.
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../extras/WSRP/default257.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- The file as shown above specifies access to two producers: <literal>self</literal>, which consumes JBoss Enterprise Portal Platform's own WSRP producer (albeit in a version that assumes that the producer requires a value for an <literal>email</literal> registration property), and <literal>oracle</literal>, which consumes Oracle's public producer, both in configurations as shown in the procedure above.
- </para>
- <note>
- <para>
- An XML Schema defining which elements are available to configure Consumers via XML can be found in <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-integration-api-<replaceable>WSRP_VERSION</replaceable>.jar/xsd/gatein_wsrp_consumer_1_0.xsd </filename>
- </para>
- </note>
- </section>
+ <para>
+ The file as shown above specifies access to two producers: <literal>self</literal>, which consumes JBoss Enterprise Portal Platform's own WSRP producer (albeit in a version that assumes that the producer requires a value for an <literal>email</literal> registration property), and <literal>oracle</literal>, which consumes Oracle's public producer, both in configurations as shown in the procedure above.
+ </para>
+ <note>
+ <para>
+ An XML Schema defining which elements are available to configure Consumers via XML can be found in <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-integration-api-<replaceable>WSRP_VERSION</replaceable>.jar/xsd/gatein_wsrp_consumer_1_0.xsd </filename>
+ </para>
+ </note>
+ </section>
- <section id="sect-Reference_Guide-Configuring_a_Remote_Producer-Adding_remote_portlets_to_categories">
- <title>Adding remote portlets to categories</title>
- <para>
- Clicking on the Portlet link in the Application Registry will now show the remote portlets in the <emphasis role="bold">REMOTE</emphasis> tab in the left column:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/remote_portlets.png" format="PNG" scale="120" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/remote_portlets.png" format="PNG" />
- </imageobject>
- </mediaobject>
- <para>
- These portlets are available to be used as regular portlets: they can be used in categories and added to pages. Using the Import Applications functionality will also automatically import them into categories based on the keywords they define.
- </para>
- <para>
- More specifically, to add a <emphasis>WSRP</emphasis> portlet to a category, select <literal>wsrp</literal> in the Application Type drop-down menu:
- </para>
- <mediaobject>
- <imageobject>
- <imagedata align="center" fileref="images/WSRP/remote_portlets_category.png" format="PNG" scalefit="1" valign="middle" />
- </imageobject>
- </mediaobject>
- </section>
+ <section id="sect-Reference_Guide-Configuring_a_Remote_Producer-Adding_remote_portlets_to_categories">
+ <title>Adding remote portlets to categories</title>
+ <para>
+ Clicking on the Portlet link in the Application Registry will now show the remote portlets in the <emphasis role="bold">REMOTE</emphasis> tab in the left column:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/remote_portlets.png" format="PNG" scale="120" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/remote_portlets.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ These portlets are available to be used as regular portlets: they can be used in categories and added to pages. Using the Import Applications functionality will also automatically import them into categories based on the keywords they define.
+ </para>
+ <para>
+ More specifically, to add a <emphasis>WSRP</emphasis> portlet to a category, select <literal>wsrp</literal> in the Application Type drop-down menu:
+ </para>
+ <mediaobject>
+ <imageobject>
+ <imagedata align="center" fileref="images/WSRP/remote_portlets_category.png" format="PNG" scalefit="1" valign="middle" />
+ </imageobject>
+ </mediaobject>
+ </section>
- </section>
+ </section>
- <section id="sect-Reference_Guide-Consuming_Remote_WSRP_Portlets-Configuring_Access_to_Remote_Producers_via_XML">
- <title>Configuring Access to Remote Producers via XML</title>
- <para>
- Again, configuring consumers via XML is done by editing <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-consumer-<replaceable>WSRP_VERSION</replaceable>.jar/conf/wsrp-consumers-config.xml</filename>.
- </para>
- <note>
- <title>XML Elements</title>
- <para>
- An XML Schema defining which elements are available to configure Consumers via XML can be found in <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-integration-api-<replaceable>WSRP_VERSION</replaceable>.jar/xsd/gatein_wsrp_consumer_1_0.xsd </filename>
- </para>
- </note>
- <note>
- <title>The Consumer Configuration file</title>
- <para>
- It is important to understand how the XML Consumers configuration file is processed. It is read the first time the WSRP service starts and the associated information is then put under control of the JCR (Java Content Repository).
- </para>
- <para>
- Subsequent launches of the WSRP service will use the JCR-stored information for all producers that are already known to JBoss Enterprise Portal Platform. More specifically, the <filename>wsrp-consumers-config.xml</filename> file is scanned for producer identifiers. Any identifier that is already known will be bypassed and the JCR information associated with this remote producer will be used.
- </para>
- <para>
- The information defined at the XML level is only processed for producer definition for which no information is already present in the JCR.
- </para>
- <para>
- Therefore, to delete a Producer configuration, the associated information in the database must be deleted (this can be accomplished using the configuration portlet as shown in <xref linkend="sect-Reference_Guide-Configuring_a_Remote_Producer-The_Configuration_Portlet" />).
- </para>
- <para>
- The associated information in <filename>wsrp-consumers-config.xml</filename> (if such information exists) must also be removed, otherwise the producer will be re-created the next time the WSRP is launched.
- </para>
- </note>
- <section id="sect-Reference_Guide-Configuring_Access_to_Remote_Producers_via_XML-Required_Configuration_Information">
- <title>Required Configuration Information</title>
- <para>
- The following information needs to be provided to configure access to a remote Producer:
- </para>
- <orderedlist>
- <listitem>
- <para>
- An identifier must be provided for the producer being configured so that it can be referred to later. This is done in the mandatory <literal>id</literal> attribute of the <literal><wsrp-producer></literal> element.
- </para>
- </listitem>
- <listitem>
- <para>
- JBoss Enterprise Portal Platform also needs to know about the remote Producer's endpoints to be able to connect to the remote web services and perform WSRP invocations. Use the <literal><endpoint-wsdl-url></literal> element to specify the URL for the WSDL description of the remote WSRP service.
- </para>
- </listitem>
- </orderedlist>
- <para>
- Both the <literal>id</literal> attribute and <literal><endpoint-wsdl-url></literal> elements are required for a functional remote producer configuration.
- </para>
- </section>
+ <section id="sect-Reference_Guide-Consuming_Remote_WSRP_Portlets-Configuring_Access_to_Remote_Producers_via_XML">
+ <title>Configuring Access to Remote Producers via XML</title>
+ <para>
+ Again, configuring consumers via XML is done by editing <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-consumer-<replaceable>WSRP_VERSION</replaceable>.jar/conf/wsrp-consumers-config.xml</filename>.
+ </para>
+ <note>
+ <title>XML Elements</title>
+ <para>
+ An XML Schema defining which elements are available to configure Consumers via XML can be found in <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-integration-api-<replaceable>WSRP_VERSION</replaceable>.jar/xsd/gatein_wsrp_consumer_1_0.xsd </filename>
+ </para>
+ </note>
+ <note>
+ <title>The Consumer Configuration file</title>
+ <para>
+ It is important to understand how the XML Consumers configuration file is processed. It is read the first time the WSRP service starts and the associated information is then put under control of the JCR (Java Content Repository).
+ </para>
+ <para>
+ Subsequent launches of the WSRP service will use the JCR-stored information for all producers that are already known to JBoss Enterprise Portal Platform. More specifically, the <filename>wsrp-consumers-config.xml</filename> file is scanned for producer identifiers. Any identifier that is already known will be bypassed and the JCR information associated with this remote producer will be used.
+ </para>
+ <para>
+ The information defined at the XML level is only processed for producer definition for which no information is already present in the JCR.
+ </para>
+ <para>
+ Therefore, to delete a Producer configuration, the associated information in the database must be deleted (this can be accomplished using the configuration portlet as shown in <xref linkend="sect-Reference_Guide-Configuring_a_Remote_Producer-The_Configuration_Portlet" />).
+ </para>
+ <para>
+ The associated information in <filename>wsrp-consumers-config.xml</filename> (if such information exists) must also be removed, otherwise the producer will be re-created the next time the WSRP is launched.
+ </para>
+ </note>
+ <section id="sect-Reference_Guide-Configuring_Access_to_Remote_Producers_via_XML-Required_Configuration_Information">
+ <title>Required Configuration Information</title>
+ <para>
+ The following information needs to be provided to configure access to a remote Producer:
+ </para>
+ <orderedlist>
+ <listitem>
+ <para>
+ An identifier must be provided for the producer being configured so that it can be referred to later. This is done in the mandatory <literal>id</literal> attribute of the <literal><wsrp-producer></literal> element.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ JBoss Enterprise Portal Platform also needs to know about the remote Producer's endpoints to be able to connect to the remote web services and perform WSRP invocations. Use the <literal><endpoint-wsdl-url></literal> element to specify the URL for the WSDL description of the remote WSRP service.
+ </para>
+ </listitem>
+ </orderedlist>
+ <para>
+ Both the <literal>id</literal> attribute and <literal><endpoint-wsdl-url></literal> elements are required for a functional remote producer configuration.
+ </para>
+ </section>
-
- <section id="sect-Reference_Guide-Configuring_Access_to_Remote_Producers_via_XML-Optional_Configuration">
- <title>Optional Configuration</title>
- <para>
- It is also possible to provide additional configuration, which, in some cases, might be important to establish a proper connection to the remote producer.
- </para>
- <variablelist id="vari-Reference_Guide-Optional_Configuration-Optional_Configurations">
- <title>Optional Configurations</title>
- <varlistentry>
- <term>Caching</term>
- <listitem>
- <para>
- To prevent unnecessary traffic between the local consumer and the remote producer, it is possible to cache some of the information sent by the producer (such as the list of offered portlets) for a given duration.
- </para>
- <para>
- The rate at which the information is refreshed is defined by the <literal>expiration-cache</literal> attribute of the <literal><wsrp-producer></literal> element (in seconds).
- </para>
- <para>
+
+ <section id="sect-Reference_Guide-Configuring_Access_to_Remote_Producers_via_XML-Optional_Configuration">
+ <title>Optional Configuration</title>
+ <para>
+ It is also possible to provide additional configuration, which, in some cases, might be important to establish a proper connection to the remote producer.
+ </para>
+ <variablelist id="vari-Reference_Guide-Optional_Configuration-Optional_Configurations">
+ <title>Optional Configurations</title>
+ <varlistentry>
+ <term>Caching</term>
+ <listitem>
+ <para>
+ To prevent unnecessary traffic between the local consumer and the remote producer, it is possible to cache some of the information sent by the producer (such as the list of offered portlets) for a given duration.
+ </para>
+ <para>
+ The rate at which the information is refreshed is defined by the <literal>expiration-cache</literal> attribute of the <literal><wsrp-producer></literal> element (in seconds).
+ </para>
+ <para>
For example; providing a value of <literal>120</literal> for expiration-cache means that the producer information will not be refreshed for 2 minutes after it has been accessed. If no value is provided, JBoss Enterprise Portal Platform will always access the remote producer regardless of whether the remote information has changed or not.
- </para>
- <para>
- Since, in most instances, the information provided by the producer does not change often, use of this caching facility to minimize bandwidth usage is recommended.
- </para>
- </listitem>
- </varlistentry>
+ </para>
+ <para>
+ Since, in most instances, the information provided by the producer does not change often, use of this caching facility to minimize bandwidth usage is recommended.
+ </para>
+ </listitem>
+ </varlistentry>
<varlistentry>
<term>WS Timeout</term>
<listitem>
@@ -633,247 +633,247 @@
</para>
</listitem>
</varlistentry>
- <varlistentry>
- <term>Pre-registration information</term>
- <listitem>
- <para>
- Some producers require consumers to register with them before authorizing them to access their offered portlets. If known, some registration information can be provided in the producer configuration beforehand, so that the consumer can register with the remote producer when required.
- </para>
- <note>
- <para>
- Only simple String properties are supported. It is not possible to configure complex registration data. However, this should be sufficient for most cases.
- </para>
- </note>
- <para>
- This pre-registration configuration is done via the <literal><registration-data></literal> element.
- </para>
- <para>
- If the remote producer does not require any registration properties, only an empty <literal><registration-data></literal> element need be provided, as JBoss Enterprise Portal Platform can generate the mandatory information.
- </para>
- <para>
- Values for the registration properties required by the remote producer can be provided via <literal><property></literal> elements. Refer to the example below for more details.
- </para>
- <para>
- Additionally, the default consumer name automatically provided by JBoss Enterprise Portal Platform can be overridden via the <literal><consumer-name></literal> element. When providing a consumer name, please remember that it should uniquely identify your consumer.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </section>
+ <varlistentry>
+ <term>Pre-registration information</term>
+ <listitem>
+ <para>
+ Some producers require consumers to register with them before authorizing them to access their offered portlets. If known, some registration information can be provided in the producer configuration beforehand, so that the consumer can register with the remote producer when required.
+ </para>
+ <note>
+ <para>
+ Only simple String properties are supported. It is not possible to configure complex registration data. However, this should be sufficient for most cases.
+ </para>
+ </note>
+ <para>
+ This pre-registration configuration is done via the <literal><registration-data></literal> element.
+ </para>
+ <para>
+ If the remote producer does not require any registration properties, only an empty <literal><registration-data></literal> element need be provided, as JBoss Enterprise Portal Platform can generate the mandatory information.
+ </para>
+ <para>
+ Values for the registration properties required by the remote producer can be provided via <literal><property></literal> elements. Refer to the example below for more details.
+ </para>
+ <para>
+ Additionally, the default consumer name automatically provided by JBoss Enterprise Portal Platform can be overridden via the <literal><consumer-name></literal> element. When providing a consumer name, please remember that it should uniquely identify your consumer.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </section>
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Consuming_Remote_WSRP_Portlets-Examples">
- <title>Examples</title>
- <para>
+
+ <section id="sect-Reference_Guide-Consuming_Remote_WSRP_Portlets-Examples">
+ <title>Examples</title>
+ <para>
This is the configuration of the <literal>selfv1</literal> and <literal>selfv2</literal> consumers as found in <filename>default-wsrp.xml</filename> with a cache expiring every five minutes and with a 30 second timeout for web service operations:
- </para>
-
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../extras/WSRP/default258.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- <para>
- This is an example of a WSRP descriptor with registration data and cache expiring every minute:
- </para>
-
+ <para>
+ This is an example of a WSRP descriptor with registration data and cache expiring every minute:
+ </para>
+
<programlisting language="XML" role="XML"><xi:include href="../extras/WSRP/default259.xml" parse="text" xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
- </section>
+ </section>
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Consumers_Maintenance">
- <title>Consumers Maintenance</title>
- <section id="sect-Reference_Guide-Consumers_Maintenance-Modifying_a_Currently_Held_Registration">
- <title>Modifying a Currently Held Registration</title>
- <section id="sect-Reference_Guide-Modifying_a_Currently_Held_Registration-Registration_Modification_for_Service_Upgrade">
- <title>Registration Modification for Service Upgrade</title>
- <para>
- Producers often offer several levels of service depending on consumers' subscription levels (for example). This is implemented at the WSRP level with the registration concept: producers can assert which level of service to provide to consumers based on the values of given registration properties.
- </para>
- <para>
- There may also be cases where the registration information has changed and must be updated. For example, the producer required you to provide a valid email and the previous email address is not valid anymore and needs to be updated.
- </para>
- <para>
- Therefore at times it may be necessary to modify the registration that sets the service agreement between a consumer and a producer.
- </para>
- <para>
- For example; the producer requiring an email that was configured in <xref linkend="sect-Reference_Guide-Configuring_a_Remote_Producer-The_Configuration_Portlet" />. In that case the producer was requiring registration and required a value to be provided for the <literal>email</literal> property.
- </para>
- <para>
- To update the email address that was provided, the remote producer must be informed that some registration data has been modified.
- </para>
- <para>
- The following procedure assumes access to the producer has been configured as previously described.
- </para>
- <procedure>
- <step>
- <para>
- Go to the configuration screen for the <literal>self</literal> producer and change the value of <literal>email</literal> to <literal>foo(a)example.com</literal> instead of <literal>example(a)example.com</literal>:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/modify_reg_start.png" format="PNG" scale="100" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_start.png" format="PNG" />
- </imageobject>
- </mediaobject>
- </step>
- <step>
- <para>
- Click on "<emphasis role="bold">Update properties</emphasis>" to save the change. A "<emphasis role="bold">Modify registration</emphasis>" button should now appear to let you send this new data to the remote producer:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/modify_reg_modify.png" format="PNG" scale="100" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_modify.png" format="PNG" />
- </imageobject>
- </mediaobject>
- </step>
- <step>
- <para>
- Click on <emphasis role="bold">Modify registration</emphasis> and, if the updated registration details have been accepted by the remote producer the following should appear:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/modify_reg_end.png" format="PNG" scale="120" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_end.png" format="PNG" />
- </imageobject>
- </mediaobject>
- </step>
- </procedure>
- </section>
+
+ <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Consumers_Maintenance">
+ <title>Consumers Maintenance</title>
+ <section id="sect-Reference_Guide-Consumers_Maintenance-Modifying_a_Currently_Held_Registration">
+ <title>Modifying a Currently Held Registration</title>
+ <section id="sect-Reference_Guide-Modifying_a_Currently_Held_Registration-Registration_Modification_for_Service_Upgrade">
+ <title>Registration Modification for Service Upgrade</title>
+ <para>
+ Producers often offer several levels of service depending on consumers' subscription levels (for example). This is implemented at the WSRP level with the registration concept: producers can assert which level of service to provide to consumers based on the values of given registration properties.
+ </para>
+ <para>
+ There may also be cases where the registration information has changed and must be updated. For example, the producer required you to provide a valid email and the previous email address is not valid anymore and needs to be updated.
+ </para>
+ <para>
+ Therefore at times it may be necessary to modify the registration that sets the service agreement between a consumer and a producer.
+ </para>
+ <para>
+ For example; the producer requiring an email that was configured in <xref linkend="sect-Reference_Guide-Configuring_a_Remote_Producer-The_Configuration_Portlet" />. In that case the producer was requiring registration and required a value to be provided for the <literal>email</literal> property.
+ </para>
+ <para>
+ To update the email address that was provided, the remote producer must be informed that some registration data has been modified.
+ </para>
+ <para>
+ The following procedure assumes access to the producer has been configured as previously described.
+ </para>
+ <procedure>
+ <step>
+ <para>
+ Go to the configuration screen for the <literal>self</literal> producer and change the value of <literal>email</literal> to <literal>foo(a)example.com</literal> instead of <literal>example(a)example.com</literal>:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/modify_reg_start.png" format="PNG" scale="100" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_start.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ <step>
+ <para>
+ Click on "<emphasis role="bold">Update properties</emphasis>" to save the change. A "<emphasis role="bold">Modify registration</emphasis>" button should now appear to let you send this new data to the remote producer:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/modify_reg_modify.png" format="PNG" scale="100" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_modify.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ <step>
+ <para>
+ Click on <emphasis role="bold">Modify registration</emphasis> and, if the updated registration details have been accepted by the remote producer the following should appear:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/modify_reg_end.png" format="PNG" scale="120" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_end.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ </procedure>
+ </section>
-
- <section id="sect-Reference_Guide-Modifying_a_Currently_Held_Registration-Registration_Modification_on_Producer_Error">
- <title>Registration Modification on Producer Error</title>
- <para>
- If a Producer administrator changes the requirements for registered consumers, invoking operations on the producer may fail with an <exceptionname>OperationFailedFault</exceptionname>. JBoss Enterprise Portal Platform will attempt to assist in these cases.
- </para>
- <para>
- This section will discuss an example using the <literal>self</literal> producer.
- </para>
- <para>
- Assuming that the registration requires a valid value for an <literal>email</literal> registration property (as has been shown) the configuration screen for this producer should show:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/config_self.png" format="PNG" scale="120" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/config_self.png" format="PNG" />
- </imageobject>
- </mediaobject>
- <para>
- If the administrator of the producer now requires an additional value to be provided for a <literal>name</literal> registration property operations with this producer will fail.
- </para>
- <para>
- If a registration modification is required, go to the configuration screen for this remote producer and refresh the information held by the consumer by pressing "<emphasis role="bold">Refresh & Save</emphasis>":
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/modify_reg_self.png" format="PNG" scale="120" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_self.png" format="PNG" />
- </imageobject>
- </mediaobject>
- <para>
- The configuration screen now shows the currently held registration information and the expected information from the producer.
- </para>
- <para>
- Enter a value for the <literal>name</literal> property and then click on "<emphasis role="bold">Modify registration</emphasis>". If the producer accepts the new registration data, the following screen will appear:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/modify_reg_self_end.png" format="PNG" scale="120" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_self_end.png" format="PNG" />
- </imageobject>
- </mediaobject>
- <note>
+
+ <section id="sect-Reference_Guide-Modifying_a_Currently_Held_Registration-Registration_Modification_on_Producer_Error">
+ <title>Registration Modification on Producer Error</title>
+ <para>
+ If a Producer administrator changes the requirements for registered consumers, invoking operations on the producer may fail with an <exceptionname>OperationFailedFault</exceptionname>. JBoss Enterprise Portal Platform will attempt to assist in these cases.
+ </para>
+ <para>
+ This section will discuss an example using the <literal>self</literal> producer.
+ </para>
+ <para>
+ Assuming that the registration requires a valid value for an <literal>email</literal> registration property (as has been shown) the configuration screen for this producer should show:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/config_self.png" format="PNG" scale="120" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/config_self.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ If the administrator of the producer now requires an additional value to be provided for a <literal>name</literal> registration property operations with this producer will fail.
+ </para>
+ <para>
+ If a registration modification is required, go to the configuration screen for this remote producer and refresh the information held by the consumer by pressing "<emphasis role="bold">Refresh & Save</emphasis>":
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/modify_reg_self.png" format="PNG" scale="120" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_self.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ The configuration screen now shows the currently held registration information and the expected information from the producer.
+ </para>
+ <para>
+ Enter a value for the <literal>name</literal> property and then click on "<emphasis role="bold">Modify registration</emphasis>". If the producer accepts the new registration data, the following screen will appear:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/modify_reg_self_end.png" format="PNG" scale="120" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/modify_reg_self_end.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ <note>
<title><emphasis role="bold">JBoss Enterprise Portal Platform 5.1 and WSRP 1 Exceptions</emphasis></title>
- <para>
- In WSRP 1, it can be difficult to ascertain what caused an <exceptionname>OperationFailedFault</exceptionname> as it is a generic exception returned by producers during a failed method invocation.
- </para>
- <para>
- An <exceptionname>OperationFailedFault</exceptionname> failure can be caused by several different reasons, one of them being a request to modify the registration data.
- </para>
- <para>
- In these instances examining the log files may assist in gathering more information about the problem.
- </para>
- <para>
- WSRP 2 introduces an exception that is specific to a request to modify registrations which reduces the ambiguity that currently exists.
- </para>
- </note>
- </section>
+ <para>
+ In WSRP 1, it can be difficult to ascertain what caused an <exceptionname>OperationFailedFault</exceptionname> as it is a generic exception returned by producers during a failed method invocation.
+ </para>
+ <para>
+ An <exceptionname>OperationFailedFault</exceptionname> failure can be caused by several different reasons, one of them being a request to modify the registration data.
+ </para>
+ <para>
+ In these instances examining the log files may assist in gathering more information about the problem.
+ </para>
+ <para>
+ WSRP 2 introduces an exception that is specific to a request to modify registrations which reduces the ambiguity that currently exists.
+ </para>
+ </note>
+ </section>
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Consumers_Maintenance-Consumer_Operations">
- <title>Consumer Operations</title>
- <para>
- Several operations are available from the consumer list view of the WSRP configuration portlet:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/consumer_operations.png" format="PNG" scale="120" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/consumer_operations.png" format="PNG" />
- </imageobject>
- </mediaobject>
- <para>
- The available operations are:
- </para>
- <variablelist>
- <varlistentry>
- <term>Configure</term>
- <listitem>
- <para>
- Displays the consumer details and allows user to edit them.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Refresh</term>
- <listitem>
- <para>
- Forces the consumer to retrieve the service description from the remote producer to refresh the local information (such as offered portlets, registration information).
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Activate/Deactivate</term>
- <listitem>
- <para>
- Activates or deactivates a consumer, governing whether it will be available to provide portlets and receive portlet invocations.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Register/De-register</term>
- <listitem>
- <para>
- Registers or de-registers a consumer based on whether registration is required and/or acquired.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Delete</term>
- <listitem>
- <para>
- Destroys the consumer, after de-registering it if it was registered.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
+
+ <section id="sect-Reference_Guide-Consumers_Maintenance-Consumer_Operations">
+ <title>Consumer Operations</title>
+ <para>
+ Several operations are available from the consumer list view of the WSRP configuration portlet:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/consumer_operations.png" format="PNG" scale="120" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/consumer_operations.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ The available operations are:
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term>Configure</term>
+ <listitem>
+ <para>
+ Displays the consumer details and allows user to edit them.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Refresh</term>
+ <listitem>
+ <para>
+ Forces the consumer to retrieve the service description from the remote producer to refresh the local information (such as offered portlets, registration information).
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Activate/Deactivate</term>
+ <listitem>
+ <para>
+ Activates or deactivates a consumer, governing whether it will be available to provide portlets and receive portlet invocations.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Register/De-register</term>
+ <listitem>
+ <para>
+ Registers or de-registers a consumer based on whether registration is required and/or acquired.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Delete</term>
+ <listitem>
+ <para>
+ Destroys the consumer, after de-registering it if it was registered.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
<formalpara>
<title><emphasis role="bold">Additional Functionalities in WSRP 2.0</emphasis></title>
<para>
@@ -1082,237 +1082,237 @@
</step>
</procedure>
</section>
- </section>
-
- <section id="sect-Reference_Guide-Consumers_Maintenance-Erasing_Local_Registration_Data">
- <title>Erasing Local Registration Data</title>
- <para>
- In rare cases, it may be necessary to erase the local data without being able to de-register first.
- </para>
- <para>
- This can occur when a consumer is registered with a producer that has been modified by its administrator to not require registration any longer.
- </para>
- <para>
- In this scenario, local registration information can be erased from the consumer to allow it to resume interacting with the remote producer.
- </para>
- <para>
- To do this click on the "<emphasis role="bold">Erase local registration</emphasis>" button next to the registration context information on the consumer configuration screen:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/erase_registration.png" format="PNG" scale="80" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/erase_registration.png" format="PNG" />
- </imageobject>
- </mediaobject>
- <warning>
- <para>
- This operation is dangerous as it can result in inability to interact with the remote producer if invoked when not required. The warning message below will be displayed before any data is erased.
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/erase_registration_warning.png" format="PNG" scale="100" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/erase_registration_warning.png" format="PNG" />
- </imageobject>
- </mediaobject>
- </warning>
- </section>
+ </section>
+
+ <section id="sect-Reference_Guide-Consumers_Maintenance-Erasing_Local_Registration_Data">
+ <title>Erasing Local Registration Data</title>
+ <para>
+ In rare cases, it may be necessary to erase the local data without being able to de-register first.
+ </para>
+ <para>
+ This can occur when a consumer is registered with a producer that has been modified by its administrator to not require registration any longer.
+ </para>
+ <para>
+ In this scenario, local registration information can be erased from the consumer to allow it to resume interacting with the remote producer.
+ </para>
+ <para>
+ To do this click on the "<emphasis role="bold">Erase local registration</emphasis>" button next to the registration context information on the consumer configuration screen:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/erase_registration.png" format="PNG" scale="80" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/erase_registration.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ <warning>
+ <para>
+ This operation is dangerous as it can result in inability to interact with the remote producer if invoked when not required. The warning message below will be displayed before any data is erased.
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/erase_registration_warning.png" format="PNG" scale="100" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/erase_registration_warning.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ </warning>
+ </section>
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Configuring_the_WSRP_Producer">
- <title>Configuring the WSRP Producer</title>
- <section id="sect-Reference_Guide-Configuring_the_WSRP_Producer-Overview">
+
+ <section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Configuring_the_WSRP_Producer">
+ <title>Configuring the WSRP Producer</title>
+ <section id="sect-Reference_Guide-Configuring_the_WSRP_Producer-Overview">
<title>Overview</title>
- <para>
+ <para>
The behavior of the Portal's WSRP Producer can be configured using the WSRP administration interface, (this is the recommended method), or by editing the <filename><replaceable>WSRP_PATH</replaceable>/lib/gatein.portal.component.wsrp-<replaceable><VERSION></replaceable>-epp-GA.jar/conf/wsrp-producer-config.xml</filename> file.
- </para>
- <para>
- Several aspects can be modified with respect to whether registration is required for consumers to access the Producer's services. An XML Schema for the configuration format is available at <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-integration-api-<replaceable>WSRP_VERSION</replaceable>.jar/xsd/gatein_wsrp_producer_1_0.xsd </filename>.
- </para>
+ </para>
+ <para>
+ Several aspects can be modified with respect to whether registration is required for consumers to access the Producer's services. An XML Schema for the configuration format is available at <filename><replaceable>WSRP_PATH</replaceable>/lib/wsrp-integration-api-<replaceable>WSRP_VERSION</replaceable>.jar/xsd/gatein_wsrp_producer_1_0.xsd </filename>.
+ </para>
<para>
An alternative to editing the default <filename>wsrp-producer-config.xml</filename> file is to make a custom copy containing the required configuration options.
</para>
<para>
If a copy is used in place of the original, however, the <filename><replaceable>WSRP_PATH</replaceable>/02portal.war/WEB-INF/conf/wsrp/wsrp-configuration.xml</filename> <emphasis role="bold">must</emphasis> be updated to reference the custom file (this file defines the component <literal>WSRPServiceIntegration</literal> and contains a producer and consumer configuration location).
</para>
- </section>
-
- <section id="sect-Reference_Guide-Configuring_the_WSRP_Producer-Default_Configuration">
- <title>Default Configuration</title>
- <para>
- The default producer configuration requires that consumers register with it before providing access to its services. However it does not require any specific registration properties (excepting those mandated by the WSRP standard).
- </para>
- <para>
- It does, however, require consumers to be registered before sending them a full service description. This means that the WSRP producer will not provide the list of offered portlets and other capabilities to unregistered consumers.
- </para>
- <para>
- The producer also uses the default <classname>RegistrationPolicy</classname> paired with the default <classname>RegistrationPropertyValidator</classname>.
- </para>
- <para>
- This allows users to customize how Portal's WSRP Producer decides whether a given registration property is valid or not (however property validators are discussed in greater detail in <xref linkend="sect-Reference_Guide-Configuring_the_WSRP_Producer-Registration_Configuration" />).
- </para>
- <para>
- JBoss Enterprise Portal Platform provides a web interface to configure the producer's behavior. It can be accessed by clicking on the "<emphasis role="bold">Producer Configuration</emphasis>" tab of the "<emphasis role="bold">WSRP</emphasis>" page of the "<emphasis role="bold">admin</emphasis>" portal.
- </para>
- <para>
- The default configuration should show:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/producer_default.png" format="PNG" scale="110" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/producer_default.png" format="PNG" />
- </imageobject>
- </mediaobject>
- <para>
+ </section>
+
+ <section id="sect-Reference_Guide-Configuring_the_WSRP_Producer-Default_Configuration">
+ <title>Default Configuration</title>
+ <para>
+ The default producer configuration requires that consumers register with it before providing access to its services. However it does not require any specific registration properties (excepting those mandated by the WSRP standard).
+ </para>
+ <para>
+ It does, however, require consumers to be registered before sending them a full service description. This means that the WSRP producer will not provide the list of offered portlets and other capabilities to unregistered consumers.
+ </para>
+ <para>
+ The producer also uses the default <classname>RegistrationPolicy</classname> paired with the default <classname>RegistrationPropertyValidator</classname>.
+ </para>
+ <para>
+ This allows users to customize how Portal's WSRP Producer decides whether a given registration property is valid or not (however property validators are discussed in greater detail in <xref linkend="sect-Reference_Guide-Configuring_the_WSRP_Producer-Registration_Configuration" />).
+ </para>
+ <para>
+ JBoss Enterprise Portal Platform provides a web interface to configure the producer's behavior. It can be accessed by clicking on the "<emphasis role="bold">Producer Configuration</emphasis>" tab of the "<emphasis role="bold">WSRP</emphasis>" page of the "<emphasis role="bold">admin</emphasis>" portal.
+ </para>
+ <para>
+ The default configuration should show:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/producer_default.png" format="PNG" scale="110" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/producer_default.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ <para>
You can specify whether or not the producer will send the full service description to unregistered consumers, and, if it requires registration, which <literal>RegistrationPolicy</literal> to use (and, if needed, which <literal>RegistrationPropertyValidator</literal>), along with required registration property description for which consumers must provide acceptable values to successfully register.
- </para>
+ </para>
<para>
WSDL URLs to access JBoss Enterprise Portal Platform's WSRP producer are now displayed in either in WSRP 1 or WSRP 2 mode.</para>
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Configuring_the_WSRP_Producer-Registration_Configuration">
- <title>Registration Configuration</title>
- <para>
- In order to have consumers register with Portal's producer the Portal's behavior with respect to registration must be configured.
- </para>
- <para>
- Registration is optional, as are registration properties. The producer can require registration without requiring consumers to pass any registration properties as is the case in the default configuration.
- </para>
- <para>
- The following section discusses configuring a producer's registration behavior from a blank state:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/producer_blank.png" format="PNG" width="700" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/producer_blank.png" format="PNG" />
- </imageobject>
- </mediaobject>
- <procedure>
- <step>
- <para>
- To allow unregistered consumers to see the list of offered portlets, leave the first checkbox ("<emphasis role="bold">Access to full service description requires consumers to be registered.</emphasis>") unchecked.
- </para>
- </step>
- <step>
- <para>
- To specify, however, that consumers will need to be registered to be able to interact with the producer, check the second box ("<emphasis role="bold">Requires registration. Modifying this information will trigger invalidation of consumer registrations."</emphasis>).
- </para>
- <para>
- The screen will refresh and display:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/producer_registration.png" format="PNG" width="700" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/producer_registration.png" format="PNG" />
- </imageobject>
- </mediaobject>
- </step>
- <step>
- <para>
- The fully-qualified name for the <classname>RegistrationPolicy</classname> and <classname>RegistrationPropertyValidator</classname> can be specified here. The default values are acceptable. Refer to <xref linkend="sect-Reference_Guide-Registration_Configuration-Customization_of_Registration_Handling_Behavior" /> for more information.
- </para>
- </step>
- <step>
- <para>
- To add a registration property called <literal>email</literal> click "<emphasis role="bold">Add property</emphasis>" and enter the appropriate information in the fields, providing a description for the registration property that can be used by consumers to determine its purpose:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" fileref="images/WSRP/producer_email.png" format="PNG" width="700" />
- </imageobject>
- <imageobject role="fo">
- <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/producer_email.png" format="PNG" />
- </imageobject>
- </mediaobject>
- </step>
- <step>
- <para>
- Press "Save" to record the modifications.
- </para>
- </step>
- </procedure>
-
- <note>
- <para>
+
+ <section id="sect-Reference_Guide-Configuring_the_WSRP_Producer-Registration_Configuration">
+ <title>Registration Configuration</title>
+ <para>
+ In order to have consumers register with Portal's producer the Portal's behavior with respect to registration must be configured.
+ </para>
+ <para>
+ Registration is optional, as are registration properties. The producer can require registration without requiring consumers to pass any registration properties as is the case in the default configuration.
+ </para>
+ <para>
+ The following section discusses configuring a producer's registration behavior from a blank state:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/producer_blank.png" format="PNG" width="700" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/producer_blank.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ <procedure>
+ <step>
+ <para>
+ To allow unregistered consumers to see the list of offered portlets, leave the first checkbox ("<emphasis role="bold">Access to full service description requires consumers to be registered.</emphasis>") unchecked.
+ </para>
+ </step>
+ <step>
+ <para>
+ To specify, however, that consumers will need to be registered to be able to interact with the producer, check the second box ("<emphasis role="bold">Requires registration. Modifying this information will trigger invalidation of consumer registrations."</emphasis>).
+ </para>
+ <para>
+ The screen will refresh and display:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/producer_registration.png" format="PNG" width="700" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/producer_registration.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ <step>
+ <para>
+ The fully-qualified name for the <classname>RegistrationPolicy</classname> and <classname>RegistrationPropertyValidator</classname> can be specified here. The default values are acceptable. Refer to <xref linkend="sect-Reference_Guide-Registration_Configuration-Customization_of_Registration_Handling_Behavior" /> for more information.
+ </para>
+ </step>
+ <step>
+ <para>
+ To add a registration property called <literal>email</literal> click "<emphasis role="bold">Add property</emphasis>" and enter the appropriate information in the fields, providing a description for the registration property that can be used by consumers to determine its purpose:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" fileref="images/WSRP/producer_email.png" format="PNG" width="700" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata align="center" contentwidth="140mm" fileref="images/WSRP/producer_email.png" format="PNG" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ <step>
+ <para>
+ Press "Save" to record the modifications.
+ </para>
+ </step>
+ </procedure>
+
+ <note>
+ <para>
At this time, only String (<literal>xsd:string</literal>) properties are supported.
- </para>
- </note>
- <note>
- <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. The consumer side of that process is documented in <xref linkend="sect-Reference_Guide-Modifying_a_Currently_Held_Registration-Registration_Modification_on_Producer_Error" />.
- </para>
- </note>
- <section id="sect-Reference_Guide-Registration_Configuration-Customization_of_Registration_Handling_Behavior">
- <title>Customization of Registration Handling Behavior</title>
- <para>
- Registration handling behavior can be customized by users to suit their Producer needs. This is done with an implementation of the <classname>RegistrationPolicy</classname> interface.
- </para>
- <para>
- This interface defines methods that are called by Portal's Registration service so that decisions can be made appropriately. A default registration policy that provides basic behavior is provided and should be enough for most user needs.
- </para>
- <para>
- While the default registration policy provides default behavior for most registration-related aspects, one aspect requires specific configuration: whether a given value for a registration property is acceptable by the WSRP Producer.
- </para>
- <para>
- This is done by plugging a <classname>RegistrationPropertyValidator</classname> into the default registration policy. This allows users to define their own validation mechanism.
- </para>
- <para>
- Refer to the <trademark class="trade">Javadoc</trademark> for <classname>org.gatein.registration.RegistrationPolicy</classname> and <classname>org.gatein.registration.policies.RegistrationPropertyValidator</classname> for more details on what is expected of each method.
- </para>
- <para>
- A defined registration policy is required for the producer to be correctly configured. Do this by specifying the qualified class name of the registration policy.
+ </para>
+ </note>
+ <note>
+ <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. The consumer side of that process is documented in <xref linkend="sect-Reference_Guide-Modifying_a_Currently_Held_Registration-Registration_Modification_on_Producer_Error" />.
+ </para>
+ </note>
+ <section id="sect-Reference_Guide-Registration_Configuration-Customization_of_Registration_Handling_Behavior">
+ <title>Customization of Registration Handling Behavior</title>
+ <para>
+ Registration handling behavior can be customized by users to suit their Producer needs. This is done with an implementation of the <classname>RegistrationPolicy</classname> interface.
+ </para>
+ <para>
+ This interface defines methods that are called by Portal's Registration service so that decisions can be made appropriately. A default registration policy that provides basic behavior is provided and should be enough for most user needs.
+ </para>
+ <para>
+ While the default registration policy provides default behavior for most registration-related aspects, one aspect requires specific configuration: whether a given value for a registration property is acceptable by the WSRP Producer.
+ </para>
+ <para>
+ This is done by plugging a <classname>RegistrationPropertyValidator</classname> into the default registration policy. This allows users to define their own validation mechanism.
+ </para>
+ <para>
+ Refer to the <trademark class="trade">Javadoc</trademark> for <classname>org.gatein.registration.RegistrationPolicy</classname> and <classname>org.gatein.registration.policies.RegistrationPropertyValidator</classname> for more details on what is expected of each method.
+ </para>
+ <para>
+ A defined registration policy is required for the producer to be correctly configured. Do this by specifying the qualified class name of the registration policy.
</para>
<para>
As it is anticipated that most users will use the default registration policy, it is possible to provide the class name of a custom property validator instead to customize the default registration policy behavior. Note that property validators are only used by the default policy.
- </para>
- <note>
- <para>
- Since the policy or the validator are defined via their class name and dynamically loaded, it is important to ensure that the identified class is available to the application server.
+ </para>
+ <note>
+ <para>
+ Since the policy or the validator are defined via their class name and dynamically loaded, it is important to ensure that the identified class is available to the application server.
</para>
<para>
One way to accomplish that is to deploy the policy implementation as a JAR file in the AS instance deploy directory.
</para>
<para>
Note also that, since both policies and validators are dynamically instantiated, they must provide a default, no-argument constructor.
- </para>
- </note>
- </section>
+ </para>
+ </note>
+ </section>
- </section>
+ </section>
-
- <section id="sect-Reference_Guide-Configuring_the_WSRP_Producer-WSRP_Validation_Mode">
- <title>WSRP Validation Mode</title>
- <para>
- The lack of conformance kit and the wording of the WSRP specification leaves room for differing interpretations, resulting in interoperability issues. It is therefore possible to encounter issues when using consumers from different vendors.
+
+ <section id="sect-Reference_Guide-Configuring_the_WSRP_Producer-WSRP_Validation_Mode">
+ <title>WSRP Validation Mode</title>
+ <para>
+ The lack of conformance kit and the wording of the WSRP specification leaves room for differing interpretations, resulting in interoperability issues. It is therefore possible to encounter issues when using consumers from different vendors.
</para>
<para>
Experience of these issues has produced a way to relax the validation that the WSRP producer performs on the data provided by consumers to help with interoperability by accepting data that would normally be invalid.
</para>
<para>
Note that the our validation algorithm is only relaxed on aspects of the specification that are deemed harmless such as invalid language codes.
- </para>
- <para>
- By default, the WSRP producer is configured in strict mode. If you experience issues with a given consumer, you may attempt to relax the validation mode. Un-checking the "Use strict WSRP compliance" checkbox on the Producer configuration screen to do this.
- </para>
- </section>
- </section>
+ </para>
+ <para>
+ By default, the WSRP producer is configured in strict mode. If you experience issues with a given consumer, you may attempt to relax the validation mode. Un-checking the "Use strict WSRP compliance" checkbox on the Producer configuration screen to do this.
+ </para>
+ </section>
+ </section>
<section id="sect-Reference_Guide-Web_Services_for_Remote_Portlets_WSRP-Removing_WSRP">
- <title>Removing WSRP</title>
- <para>
+ <title><remark>Removing WSRP</remark></title>
+ <para>
If you are not going to use WSRP in your JBoss Enterprise Portal Platform instance, your installation will not be adversely affected should you leave the WSRP files in place.
</para>
<para>
@@ -1322,7 +1322,7 @@
<title></title>
<step>
<para>
- Navigate to the <filename><replaceable>JBOSS_HOME</replaceable>/jboss-as/server/<replaceable><PROFILE></replaceable>/conf/gatein/</filename> directory of your JBoss Enterprise Portal Platform instance.
+ Navigate to the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/conf/gatein/</filename> directory of your JBoss Enterprise Portal Platform instance.
</para>
<substeps>
<step>
13 years, 5 months
gatein SVN: r6928 - in epp/docs/branches/5.1/User_Guide: en-US and 1 other directories.
by do-not-reply@jboss.org
Author: smumford
Date: 2011-07-26 00:48:07 -0400 (Tue, 26 Jul 2011)
New Revision: 6928
Modified:
epp/docs/branches/5.1/User_Guide/en-US/Book_Info.xml
epp/docs/branches/5.1/User_Guide/en-US/Revision_History.xml
epp/docs/branches/5.1/User_Guide/en-US/User_Guide.ent
epp/docs/branches/5.1/User_Guide/en-US/modules/portal/Manage_Portals.xml
epp/docs/branches/5.1/User_Guide/publican.cfg
Log:
Updated for 5.1.1 release.
Modified: epp/docs/branches/5.1/User_Guide/en-US/Book_Info.xml
===================================================================
--- epp/docs/branches/5.1/User_Guide/en-US/Book_Info.xml 2011-07-26 04:08:27 UTC (rev 6927)
+++ epp/docs/branches/5.1/User_Guide/en-US/Book_Info.xml 2011-07-26 04:48:07 UTC (rev 6928)
@@ -2,27 +2,27 @@
<!ENTITY % BOOK_ENTITIES SYSTEM "User_Guide.ent">
%BOOK_ENTITIES;
]><bookinfo id="book-User_Guide-User_Guide">
- <title>User Guide</title>
+ <title>User Guide</title>
<subtitle>A User Guide for Enterprise Portal Platform &VZ;</subtitle>
- <productname>JBoss Enterprise Portal Platform</productname>
- <productnumber>5.1</productnumber>
- <edition>2</edition>
- <pubsnumber>5.1.1</pubsnumber>
- <abstract>
- <para>
+ <productname>JBoss Enterprise Portal Platform</productname>
+ <productnumber>5.1</productnumber>
+ <edition>2</edition>
+ <pubsnumber>5.1.2</pubsnumber>
+ <abstract>
+ <para>
This document provides an easy to follow guide to the functions and
options available in JBoss Enterprise Portal Platform. It is intended to
be accessible and useful to both experienced and novice portal
users.
</para>
- </abstract>
- <corpauthor>
- <inlinemediaobject>
- <imageobject>
- <imagedata fileref="Common_Content/images/title_logo.svg" format="SVG"/>
- </imageobject>
- </inlinemediaobject>
- </corpauthor>
- <xi:include href="Common_Content/Legal_Notice.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
- <xi:include href="Author_Group.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </abstract>
+ <corpauthor>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="Common_Content/images/title_logo.svg" format="SVG"/>
+ </imageobject>
+ </inlinemediaobject>
+ </corpauthor>
+ <xi:include href="Common_Content/Legal_Notice.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ <xi:include href="Author_Group.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</bookinfo>
Modified: epp/docs/branches/5.1/User_Guide/en-US/Revision_History.xml
===================================================================
--- epp/docs/branches/5.1/User_Guide/en-US/Revision_History.xml 2011-07-26 04:08:27 UTC (rev 6927)
+++ epp/docs/branches/5.1/User_Guide/en-US/Revision_History.xml 2011-07-26 04:48:07 UTC (rev 6928)
@@ -4,38 +4,52 @@
%BOOK_ENTITIES;
]>
<appendix id="appe-User_Guide-Revision_History">
- <title>Revision History</title>
- <simpara>
- <revhistory>
- <revision>
- <revnumber>2-5.1.1</revnumber>
- <date>Monday June 27 2011</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Updated for 5.1.1 Release.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-5.4</revnumber>
- <date>Wed June 22 2011</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Incorporated new Bugzilla feedback link.</member>
- <member>Corrected minor typographical errors.</member>
- </simplelist>
- </revdescription>
- </revision>
+ <title>Revision History</title>
+ <simpara>
+ <revhistory>
+ <revision>
+ <revnumber>2-5.1.2</revnumber>
+ <date>Fri Jul 15 2011</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email></email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Updated for 5.1.1 release.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <!--<revision>
+ <revnumber>2-5.1.1</revnumber>
+ <date>Monday June 27 2011</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Updated for 5.1.1 Release.</member>
+ </simplelist>
+ </revdescription>
+ </revision>-->
+ <revision>
+ <revnumber>1-5.4</revnumber>
+ <date>Wed June 22 2011</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Incorporated new Bugzilla feedback link.</member>
+ <member>Corrected minor typographical errors.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
<!--<revision>
<revnumber>1-5.3</revnumber>
<date>Wed Jun 01 2011</date>
@@ -148,134 +162,134 @@
</simplelist>
</revdescription>
</revision>
- <revision>
- <revnumber>1-2.9</revnumber>
- <date>Tue Oct 26 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Rebuilt for new Publican version features.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-2.7</revnumber>
- <date>Thu Sep 30 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Edit Product version number for publishing restructure.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-2.6</revnumber>
- <date>Fri Sep 10 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Added icons/ folder to workaround Publican bug. Corrected typo in Introduction.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-2.5</revnumber>
- <date>Mon May 10 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Quality Engineering changes.</member>
- </simplelist>
- </revdescription>
- </revision>
+ <revision>
+ <revnumber>1-2.9</revnumber>
+ <date>Tue Oct 26 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Rebuilt for new Publican version features.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-2.7</revnumber>
+ <date>Thu Sep 30 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Edit Product version number for publishing restructure.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-2.6</revnumber>
+ <date>Fri Sep 10 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Added icons/ folder to workaround Publican bug. Corrected typo in Introduction.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-2.5</revnumber>
+ <date>Mon May 10 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Quality Engineering changes.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
- <revision>
- <revnumber>1-2.0</revnumber>
- <date>Sat Mar 20 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Finalised all edits and image updating.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-1.5</revnumber>
- <date>Tue Jan 19 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Finalised first pass of copy edit.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-1.1</revnumber>
- <date>Mon Dec 07 2009</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>First structural edit.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-1.0</revnumber>
- <date>Thu Nov 19 2009</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>First edit to add/remove content.</member>
- </simplelist>
- </revdescription>
- </revision> -->
- <revision>
- <revnumber>1-0</revnumber>
- <date>Tue Nov 17 2009</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Initial creation of book by publican</member>
- </simplelist>
- </revdescription>
- </revision>
- </revhistory>
- </simpara>
+ <revision>
+ <revnumber>1-2.0</revnumber>
+ <date>Sat Mar 20 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Finalised all edits and image updating.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-1.5</revnumber>
+ <date>Tue Jan 19 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Finalised first pass of copy edit.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-1.1</revnumber>
+ <date>Mon Dec 07 2009</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>First structural edit.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-1.0</revnumber>
+ <date>Thu Nov 19 2009</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>First edit to add/remove content.</member>
+ </simplelist>
+ </revdescription>
+ </revision> -->
+ <revision>
+ <revnumber>1-0</revnumber>
+ <date>Tue Nov 17 2009</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Initial creation of book by publican</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ </revhistory>
+ </simpara>
</appendix>
Modified: epp/docs/branches/5.1/User_Guide/en-US/User_Guide.ent
===================================================================
--- epp/docs/branches/5.1/User_Guide/en-US/User_Guide.ent 2011-07-26 04:08:27 UTC (rev 6927)
+++ epp/docs/branches/5.1/User_Guide/en-US/User_Guide.ent 2011-07-26 04:48:07 UTC (rev 6928)
@@ -10,7 +10,7 @@
<!ENTITY BZURL "<ulink url='https://bugzilla.redhat.com/enter_bug.cgi?product=JBoss%20Enterpri...'>http://bugzilla.redhat.com/</ulink>">
<!-- Corporate Specifics: -->
-<!ENTITY YEAR "2010">
+<!ENTITY YEAR "2011">
<!ENTITY HOLDER "Red Hat, Inc">
<!-- Version Specifcs: -->
Modified: epp/docs/branches/5.1/User_Guide/en-US/modules/portal/Manage_Portals.xml
===================================================================
--- epp/docs/branches/5.1/User_Guide/en-US/modules/portal/Manage_Portals.xml 2011-07-26 04:08:27 UTC (rev 6927)
+++ epp/docs/branches/5.1/User_Guide/en-US/modules/portal/Manage_Portals.xml 2011-07-26 04:48:07 UTC (rev 6928)
@@ -8,38 +8,38 @@
<section id="sect-User_Guide-Create_a_New_Portal">
- <title>Create a New Portal</title>
- <para>
- Creating a new portal requires you to have a special permission that only an administrator can give you (if you are not an administrator).
- </para>
- <procedure>
- <step>
- <para>
- Click on <emphasis role="bold">Site</emphasis> in the toolbar then click the <emphasis role="bold">Add New Portal</emphasis> button.
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/AddPortal.png" format="PNG" align="center" scale="90" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/AddPortal.png" format="PNG" align="center" contentwidth="150mm" />
- </imageobject>
- </mediaobject>
- </step>
- <step>
- <para>
- This opens the <emphasis role="bold">Create New Portal</emphasis> window.
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/PortalSetting2.5.png" format="PNG" align="center" scale="90" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/PortalSetting2.5.png" format="PNG" align="center" contentwidth="150mm" />
- </imageobject>
- </mediaobject>
+ <title>Create a New Portal</title>
+ <para>
+ Creating a new portal requires you to have a special permission that only an administrator can give you (if you are not an administrator).
+ </para>
+ <procedure>
+ <step>
+ <para>
+ Click on <emphasis role="bold">Site</emphasis> in the toolbar then click the <emphasis role="bold">Add New Portal</emphasis> button.
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/AddPortal.png" format="PNG" align="center" scale="90" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/AddPortal.png" format="PNG" align="center" contentwidth="150mm" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ <step>
+ <para>
+ This opens the <emphasis role="bold">Create New Portal</emphasis> window.
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/PortalSetting2.5.png" format="PNG" align="center" scale="90" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/PortalSetting2.5.png" format="PNG" align="center" contentwidth="150mm" />
+ </imageobject>
+ </mediaobject>
- </step>
+ </step>
<step>
<para>
The first tab in the window is the <emphasis role="bold">Portal Templates</emphasis> tab. This tab lets you choose a template for the new portal from templates that are saved in the installation.
@@ -56,145 +56,145 @@
Click this tab if you have custom templates stored, or if you wish to use a default template for your portal.
</para>
</step>
- <step>
+ <step>
<para>
Click the next <emphasis role="bold">Portal Setting</emphasis> tab to configure some aspects of the new portal.
</para>
- <para>
- Enter a string for the <emphasis role="bold">Portal Name</emphasis> field. This field is required and must be unique. Only alphabetical, numerical and underscore characters are allowed for this field and the name must have at least 3 characters.
- </para>
- </step>
- <step>
- <para>
- Select the default display language for the portal.
- </para>
- </step>
- <step>
- <para>
- Select a skin for a portal.
- </para>
- </step>
- <step>
- <para>
- Click on the <emphasis role="bold">Properties</emphasis> tab to fill in the <emphasis role="bold">Keep session alive</emphasis> property. There are 3 options:
- <variablelist>
- <varlistentry>
- <term><emphasis role="bold">Never</emphasis></term>
- <listitem>
- <para>
- The session will never timeout, even if an application requests it.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><emphasis role="bold">On-demand</emphasis></term>
- <listitem>
- <para>
- The session will timeout if an application requests it
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><emphasis role="bold">Always</emphasis></term>
- <listitem>
- <para>
- The session will time out after a set period.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </para>
- </step>
- <step>
- <para>
- Click on the <emphasis role="bold">Permission Setting</emphasis> tab and set the permissions for the Portal.
- </para>
- <itemizedlist>
- <listitem>
- <para>
- Two types of permissions need to be set for a new portal; <emphasis>Access Permission</emphasis> and <emphasis>Edit Permission</emphasis>.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Access Permission</emphasis> can be set to allow global access by checking the <emphasis role="bold">Make it Public</emphasis> box. Alternatively, specific permission for groups can be added by clicking <emphasis role="bold">Add Permission</emphasis>, then selecting a group in the left pane of the box and then a membership level in the right pane.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Edit Permission</emphasis> requires specific permissions to be set. Click on <emphasis role="bold">Select Permission</emphasis> and choose a group and level as above.
- </para>
- </listitem>
- </itemizedlist>
- <para>
- See <xref linkend="sect-User_Guide-User_management"/> and <xref linkend="sect-User_Guide-Manage_Permissions"/> for further information.
- </para>
- </step>
- <step>
- <para>
- Click <emphasis role="bold">Save</emphasis>
- </para>
- </step>
- </procedure>
- <para>
- You also can edit or delete a portal. See <xref linkend="sect-User_Guide-Manage_Portals-Access_a_Portal" /> or <xref linkend="sect-User_Guide-Manage_Portals-Delete_a_Portal" /> for more details.
- </para>
+ <para>
+ Enter a string for the <emphasis role="bold">Portal Name</emphasis> field. This field is required and must be unique. Only alphabetical, numerical and underscore characters are allowed for this field and the name must have at least 3 characters.
+ </para>
+ </step>
+ <step>
+ <para>
+ Select the default display language for the portal.
+ </para>
+ </step>
+ <step>
+ <para>
+ Select a skin for a portal.
+ </para>
+ </step>
+ <step>
+ <para>
+ Click on the <emphasis role="bold">Properties</emphasis> tab to fill in the <emphasis role="bold">Keep session alive</emphasis> property. There are 3 options:
+ <variablelist>
+ <varlistentry>
+ <term><emphasis role="bold">Never</emphasis></term>
+ <listitem>
+ <para>
+ The session will never timeout, even if an application requests it.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><emphasis role="bold">On-demand</emphasis></term>
+ <listitem>
+ <para>
+ The session will timeout if an application requests it
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><emphasis role="bold">Always</emphasis></term>
+ <listitem>
+ <para>
+ The session will time out after a set period.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </step>
+ <step>
+ <para>
+ Click on the <emphasis role="bold">Permission Setting</emphasis> tab and set the permissions for the Portal.
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ Two types of permissions need to be set for a new portal; <emphasis>Access Permission</emphasis> and <emphasis>Edit Permission</emphasis>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <emphasis>Access Permission</emphasis> can be set to allow global access by checking the <emphasis role="bold">Make it Public</emphasis> box. Alternatively, specific permission for groups can be added by clicking <emphasis role="bold">Add Permission</emphasis>, then selecting a group in the left pane of the box and then a membership level in the right pane.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <emphasis>Edit Permission</emphasis> requires specific permissions to be set. Click on <emphasis role="bold">Select Permission</emphasis> and choose a group and level as above.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ See <xref linkend="sect-User_Guide-User_management"/> and <xref linkend="sect-User_Guide-Manage_Permissions"/> for further information.
+ </para>
+ </step>
+ <step>
+ <para>
+ Click <emphasis role="bold">Save</emphasis>
+ </para>
+ </step>
+ </procedure>
+ <para>
+ You also can edit or delete a portal. See <xref linkend="sect-User_Guide-Manage_Portals-Access_a_Portal" /> or <xref linkend="sect-User_Guide-Manage_Portals-Delete_a_Portal" /> for more details.
+ </para>
</section>
<section id="sect-User_Guide-Manage_Portals-Access_a_Portal">
- <title>Access a Portal</title>
- <para>
- An administrator can easily access numerous portals running in the JBoss Enterprise Portal Platform instance.
- </para>
- <para>
- To access a portal, click <emphasis role="bold">Site</emphasis> on the Toolbar. You will be taken to the Site Management page, which shows a list of portals and possible actions:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/ActivePortals.png" format="PNG" align="center" scale="110" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/ActivePortals.png" format="PNG" align="center" contentwidth="150mm" />
- </imageobject>
- </mediaobject>
-
+ <title>Access a Portal</title>
+ <para>
+ An administrator can easily access numerous portals running in the JBoss Enterprise Portal Platform instance.
+ </para>
+ <para>
+ To access a portal, click <emphasis role="bold">Site</emphasis> on the Toolbar. You will be taken to the Site Management page, which shows a list of portals and possible actions:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/ActivePortals.png" format="PNG" align="center" scale="110" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/ActivePortals.png" format="PNG" align="center" contentwidth="150mm" />
+ </imageobject>
+ </mediaobject>
+
</section>
- <section id="proc-User_Guide-Manage_Portals-Edit_Layout">
- <title>Edit Layout</title>
- <para>
- To edit the layout of a portal, click the <emphasis>Edit Layout</emphasis> key beside the active portal you wish to edit:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/EditLayout.png" format="PNG" align="center" scale="110" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/EditLayout.png" format="PNG" align="center" contentwidth="150mm" />
- </imageobject>
- </mediaobject>
- <para>
- New applications, containers or gadgets can be dragged from the <emphasis role="bold">Edit Inline Composer</emphasis> window (inset on the right of the screen) onto the main portal body.
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/EditLayout2.png" format="PNG" align="center" scale="110" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/EditLayout2.png" format="PNG" align="center" contentwidth="150mm" />
- </imageobject>
- </mediaobject>
- <para>
- Elements already in place in the portal body can be rearranged or removed as required. Use the relevant button in the overlay that appears when you mouse over each element:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/EditLayout3.png" format="PNG" align="center" scale="110" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/EditLayout3.png" format="PNG" align="center" contentwidth="150mm" />
- </imageobject>
- </mediaobject>
+ <section id="proc-User_Guide-Manage_Portals-Edit_Layout">
+ <title><remark>Edit Layout</remark></title>
+ <para>
+ To edit the layout of a portal, click the <emphasis>Edit Layout</emphasis> key beside the active portal you wish to edit:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/EditLayout.png" format="PNG" align="center" scale="110" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/EditLayout.png" format="PNG" align="center" contentwidth="150mm" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ New applications, containers or gadgets can be dragged from the <emphasis role="bold">Edit Inline Composer</emphasis> window (inset on the right of the screen) onto the main portal body.
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/EditLayout2.png" format="PNG" align="center" scale="110" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/EditLayout2.png" format="PNG" align="center" contentwidth="150mm" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ Elements already in place in the portal body can be rearranged or removed as required. Use the relevant button in the overlay that appears when you mouse over each element:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/EditLayout3.png" format="PNG" align="center" scale="110" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/EditLayout3.png" format="PNG" align="center" contentwidth="150mm" />
+ </imageobject>
+ </mediaobject>
<para>
Click the <guilabel>Finish</guilabel> or <guilabel>Abort</guilabel> buttons on the <emphasis role="bold">Edit Inline Composer</emphasis> window to save or discard your changes. <inlinemediaobject><imageobject><imagedata fileref="images/FinishAbortButtons.png"/></imageobject></inlinemediaobject>
</para>
@@ -204,196 +204,196 @@
If you want to include a custom portlet or gadget on a page, you may wish to refer to the <emphasis>JBoss Portlet Tools User Guide</emphasis> in the JBoss Developer Studio documentation (<ulink type="http" url="http://docs.redhat.com/docs/en-US/JBoss_Developer_Studio/4.0/"></ulink>) and/or the <emphasis role="bold">Portlet development</emphasis> section of the <emphasis>JBoss Enterprise Portal Platform Reference Guide</emphasis> (<ulink type="http" url="http://docs.redhat.com/docs/en-US/JBoss_Enterprise_Portal_Platform/5.1"></ulink>) for more information about creating and deploying portlets.
</para>
</note>
- </section>
+ </section>
-
- <section id="proc-User_Guide-Manage_Portals-Edit_Navigation">
- <title>Edit Navigation</title>
- <para>
- The portal navigation can be edited by clicking <emphasis role="bold">Site</emphasis> in the <emphasis role="bold">Toolbar</emphasis> and selecting the <emphasis>Edit Navigation</emphasis> link next to the portal you wish to edit:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/EditNavigation1.png" format="PNG" align="center" scale="110" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/EditNavigation1.png" format="PNG" align="center" contentwidth="150mm" />
- </imageobject>
- </mediaobject>
- <para>
- The <emphasis>Navigation Management</emphasis> window appears:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/NavigationManagement.png" format="PNG" align="center" scale="100" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/NavigationManagement.png" format="PNG" align="center" contentwidth="70mm" />
- </imageobject>
- </mediaobject>
- <para>
- More information about actions possible in this window can be found in <xref linkend="sect-User_Guide-Manage_Navigation_Nodes"/>
- </para>
- </section>
+
+ <section id="proc-User_Guide-Manage_Portals-Edit_Navigation">
+ <title>Edit Navigation</title>
+ <para>
+ The portal navigation can be edited by clicking <emphasis role="bold">Site</emphasis> in the <emphasis role="bold">Toolbar</emphasis> and selecting the <emphasis>Edit Navigation</emphasis> link next to the portal you wish to edit:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/EditNavigation1.png" format="PNG" align="center" scale="110" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/EditNavigation1.png" format="PNG" align="center" contentwidth="150mm" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ The <emphasis>Navigation Management</emphasis> window appears:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/NavigationManagement.png" format="PNG" align="center" scale="100" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/NavigationManagement.png" format="PNG" align="center" contentwidth="70mm" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ More information about actions possible in this window can be found in <xref linkend="sect-User_Guide-Manage_Navigation_Nodes"/>
+ </para>
+ </section>
- <section id="proc-User_Guide-Manage_Portals-Edit_Properties">
- <title>Edit Properties</title>
- <para>
- Portal properties such as language, skin and permissions can be set by clicking on <emphasis role="bold">Site</emphasis> in the <emphasis role="bold">Toolbar</emphasis> and selecting the <emphasis role="bold">Edit Portal Properties</emphasis> link for the portal you wish to edit:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/PortalProperties.png" format="PNG" align="center" scale="100" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/PortalProperties.png" format="PNG" align="center" contentwidth="130mm" />
- </imageobject>
- </mediaobject>
- <para>
- The various tabs available in the edit properties window give access to the properties that can be edited for the chosen portal:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/EditPortal2.6New.png" format="PNG" align="center" scale="110" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/EditPortal2.6New.png" format="PNG" align="center" contentwidth="150mm" />
- </imageobject>
- </mediaobject>
- <para>
- Click on <emphasis role="bold">Save</emphasis> or <emphasis role="bold">Cancel</emphasis> to either set or discard any changes you have made in the portal.
- </para>
- </section>
+ <section id="proc-User_Guide-Manage_Portals-Edit_Properties">
+ <title>Edit Properties</title>
+ <para>
+ Portal properties such as language, skin and permissions can be set by clicking on <emphasis role="bold">Site</emphasis> in the <emphasis role="bold">Toolbar</emphasis> and selecting the <emphasis role="bold">Edit Portal Properties</emphasis> link for the portal you wish to edit:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/PortalProperties.png" format="PNG" align="center" scale="100" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/PortalProperties.png" format="PNG" align="center" contentwidth="130mm" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ The various tabs available in the edit properties window give access to the properties that can be edited for the chosen portal:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/EditPortal2.6New.png" format="PNG" align="center" scale="110" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/EditPortal2.6New.png" format="PNG" align="center" contentwidth="150mm" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ Click on <emphasis role="bold">Save</emphasis> or <emphasis role="bold">Cancel</emphasis> to either set or discard any changes you have made in the portal.
+ </para>
+ </section>
- <section id="sect-User_Guide-Manage_Portals-Delete_a_Portal">
- <title>Delete a Portal</title>
- <procedure>
- <step>
- <para>
- To delete a portal click on the Delete icon beside the portal you no longer require.
- </para>
- <para>
- The confirmation message will appear:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/SureDelete.png" format="PNG" align="center" scale="100" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/SureDelete.png" format="PNG" align="center" contentwidth="100mm" />
- </imageobject>
- </mediaobject>
- </step>
- <step>
- <para>
- Click <emphasis role="bold">OK</emphasis>
- </para>
- </step>
- </procedure>
- </section>
+ <section id="sect-User_Guide-Manage_Portals-Delete_a_Portal">
+ <title>Delete a Portal</title>
+ <procedure>
+ <step>
+ <para>
+ To delete a portal click on the Delete icon beside the portal you no longer require.
+ </para>
+ <para>
+ The confirmation message will appear:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/SureDelete.png" format="PNG" align="center" scale="100" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/SureDelete.png" format="PNG" align="center" contentwidth="100mm" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ <step>
+ <para>
+ Click <emphasis role="bold">OK</emphasis>
+ </para>
+ </step>
+ </procedure>
+ </section>
<section id="sect-User_Guide-Change_Portal_Skins">
- <title>Change Portal Skins</title>
- <para>
- Skins are graphic styles used to provide an attractive user interface. Each skin has its own characteristics with different backgrounds, icons, and other visual elements.
- </para>
- <para>
- Skins can be changed temporarily (and are reset at log-out) or permanently.
- </para>
- <variablelist>
- <varlistentry>
- <term><emphasis role="bold">Change the skin temporarily</emphasis></term>
- <listitem>
- <procedure>
- <step>
- <para>
- Mouse over the Start menu and click on <emphasis role="bold">Change Skin</emphasis>.
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/StarPortlet.png" format="PNG" scale="100" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/StarPortlet.png" format="PNG" contentwidth="120mm" />
- </imageobject>
- </mediaobject>
- </step>
- <step>
- <para>
- Select a new skin from the Skin list. By clicking on the skin name a picture will appear in the preview pane.
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/SkinSet1.png" format="PNG" scale="90"/>
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/SkinSet1.png" format="PNG" contentwidth="120mm" />
- </imageobject>
- </mediaobject>
- </step>
- <step>
- <para>
- Click <emphasis role="bold">Apply</emphasis> to apply to the portal.
- </para>
- </step>
- </procedure>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><emphasis role="bold">Change the skin permanently</emphasis></term>
- <listitem>
- <procedure>
- <step>
- <para>
- Click on <emphasis role="bold">Site</emphasis>, then <emphasis role="bold">Edit Portal's Properties</emphasis>.
- </para>
- </step>
+ <title>Change Portal Skins</title>
+ <para>
+ Skins are graphic styles used to provide an attractive user interface. Each skin has its own characteristics with different backgrounds, icons, and other visual elements.
+ </para>
+ <para>
+ Skins can be changed temporarily (and are reset at log-out) or permanently.
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term><emphasis role="bold">Change the skin temporarily</emphasis></term>
+ <listitem>
+ <procedure>
+ <step>
+ <para>
+ Mouse over the Start menu and click on <emphasis role="bold">Change Skin</emphasis>.
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/StarPortlet.png" format="PNG" scale="100" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/StarPortlet.png" format="PNG" contentwidth="120mm" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ <step>
+ <para>
+ Select a new skin from the Skin list. By clicking on the skin name a picture will appear in the preview pane.
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/SkinSet1.png" format="PNG" scale="90"/>
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/SkinSet1.png" format="PNG" contentwidth="120mm" />
+ </imageobject>
+ </mediaobject>
+ </step>
+ <step>
+ <para>
+ Click <emphasis role="bold">Apply</emphasis> to apply to the portal.
+ </para>
+ </step>
+ </procedure>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><emphasis role="bold">Change the skin permanently</emphasis></term>
+ <listitem>
+ <procedure>
+ <step>
+ <para>
+ Click on <emphasis role="bold">Site</emphasis>, then <emphasis role="bold">Edit Portal's Properties</emphasis>.
+ </para>
+ </step>
- <step>
- <para>
- In the <emphasis role="bold">Portal Setting</emphasis> tab, select another skin <emphasis role="bold">Skin</emphasis> list
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/Skin1.png" format="PNG" scale="90"/>
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/Skin1.png" format="PNG" contentwidth="120mm"/>
- </imageobject>
- </mediaobject>
- </step>
- <step>
- <para>
- Click <emphasis role="bold">Save</emphasis> to <emphasis role="bold">Finish</emphasis>.
- </para>
- </step>
- </procedure>
- </listitem>
- </varlistentry>
- </variablelist>
- <para>
- More information about adding skins to a portal can be found in the <ulink type="http" url="http://www.redhat.com/docs/en-US/JBoss_Enterprise_Portal_Platform/">Reference Guide</ulink> for this product.
- </para>
+ <step>
+ <para>
+ In the <emphasis role="bold">Portal Setting</emphasis> tab, select another skin <emphasis role="bold">Skin</emphasis> list
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/Skin1.png" format="PNG" scale="90"/>
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/Skin1.png" format="PNG" contentwidth="120mm"/>
+ </imageobject>
+ </mediaobject>
+ </step>
+ <step>
+ <para>
+ Click <emphasis role="bold">Save</emphasis> to <emphasis role="bold">Finish</emphasis>.
+ </para>
+ </step>
+ </procedure>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <para>
+ More information about adding skins to a portal can be found in the <ulink type="http" url="http://www.redhat.com/docs/en-US/JBoss_Enterprise_Portal_Platform/">Reference Guide</ulink> for this product.
+ </para>
- </section>
+ </section>
<section id="sect-User_Guide-Switching_between_Portals">
- <title>Switching between portals</title>
- <para>
- Mouse over <emphasis role="bold">Site</emphasis> on the Toolbar for a list all portals in which you have at least access rights:
- </para>
- <mediaobject>
- <imageobject role="html">
- <imagedata fileref="images/SitePortlet.png" format="PNG" align="center" scale="100" />
- </imageobject>
- <imageobject role="fo">
- <imagedata fileref="images/SitePortlet.png" format="PNG" align="center" scalefit="1" contentwidth="130mm" />
- </imageobject>
- </mediaobject>
- <para>
- Users switch between portals by clicking on the desired portal. Please wait a few seconds for the change to take effect.
- </para>
- </section>
+ <title>Switching between portals</title>
+ <para>
+ Mouse over <emphasis role="bold">Site</emphasis> on the Toolbar for a list all portals in which you have at least access rights:
+ </para>
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata fileref="images/SitePortlet.png" format="PNG" align="center" scale="100" />
+ </imageobject>
+ <imageobject role="fo">
+ <imagedata fileref="images/SitePortlet.png" format="PNG" align="center" scalefit="1" contentwidth="130mm" />
+ </imageobject>
+ </mediaobject>
+ <para>
+ Users switch between portals by clicking on the desired portal. Please wait a few seconds for the change to take effect.
+ </para>
+ </section>
</section>
Modified: epp/docs/branches/5.1/User_Guide/publican.cfg
===================================================================
--- epp/docs/branches/5.1/User_Guide/publican.cfg 2011-07-26 04:08:27 UTC (rev 6927)
+++ epp/docs/branches/5.1/User_Guide/publican.cfg 2011-07-26 04:48:07 UTC (rev 6928)
@@ -5,7 +5,7 @@
type: Book
brand: JBoss
debug:1
-show_remarks: 0
+show_remarks: 1
cvs_branch: DOCS-RHEL-6
cvs_root: :ext:cvs.devel.redhat.com:/cvs/dist
cvs_pkg: JBoss_Enterprise_Portal_Platform-User_Guide-5.1-web-__LANG__
\ No newline at end of file
13 years, 5 months
gatein SVN: r6927 - in epp/docs/branches/5.1/Installation_Guide: en-US and 1 other directory.
by do-not-reply@jboss.org
Author: smumford
Date: 2011-07-26 00:08:27 -0400 (Tue, 26 Jul 2011)
New Revision: 6927
Modified:
epp/docs/branches/5.1/Installation_Guide/en-US/Book_Info.xml
epp/docs/branches/5.1/Installation_Guide/en-US/Installation_Guide.ent
epp/docs/branches/5.1/Installation_Guide/en-US/Post_Installation.xml
epp/docs/branches/5.1/Installation_Guide/en-US/Revision_History.xml
epp/docs/branches/5.1/Installation_Guide/publican.cfg
Log:
Updated for 5.1.1 Release.
Modified: epp/docs/branches/5.1/Installation_Guide/en-US/Book_Info.xml
===================================================================
--- epp/docs/branches/5.1/Installation_Guide/en-US/Book_Info.xml 2011-07-25 16:55:48 UTC (rev 6926)
+++ epp/docs/branches/5.1/Installation_Guide/en-US/Book_Info.xml 2011-07-26 04:08:27 UTC (rev 6927)
@@ -4,24 +4,24 @@
%BOOK_ENTITIES;
]>
<bookinfo id="book-Install_Guide-Install_Guide">
- <title>Installation Guide</title>
+ <title>Installation Guide</title>
<subtitle>An Installation Guide for JBoss Enterprise Portal Platform &VZ;</subtitle>
- <productname>JBoss Enterprise Portal Platform</productname>
- <productnumber>5.1</productnumber>
- <edition>2</edition>
- <pubsnumber>5.1.1</pubsnumber>
- <abstract>
- <para>
+ <productname>JBoss Enterprise Portal Platform</productname>
+ <productnumber>5.1</productnumber>
+ <edition>2</edition>
+ <pubsnumber>5.1.3</pubsnumber>
+ <abstract>
+ <para>
This book provides information about obtaining, installing and running JBoss Enterprise Portal Platform. It forms part of the complete document suite along with the <emphasis role="bold">User Guide</emphasis> and <emphasis role="bold">Reference Guide</emphasis> available at <ulink type="http" url="http://docs.redhat.com/docs/en-US/JBoss_Enterprise_Portal_Platform/index...." />.
</para>
- </abstract>
- <corpauthor>
- <inlinemediaobject>
- <imageobject>
- <imagedata fileref="Common_Content/images/title_logo.svg" format="SVG" />
- </imageobject>
- </inlinemediaobject>
- </corpauthor>
+ </abstract>
+ <corpauthor>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="Common_Content/images/title_logo.svg" format="SVG" />
+ </imageobject>
+ </inlinemediaobject>
+ </corpauthor>
<!--FOR PUBLICAN -->
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Common_Content/Legal_Notice.xml">
@@ -31,6 +31,6 @@
xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
</xi:fallback>
</xi:include>
- <xi:include href="Author_Group.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="Author_Group.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
</bookinfo>
Modified: epp/docs/branches/5.1/Installation_Guide/en-US/Installation_Guide.ent
===================================================================
--- epp/docs/branches/5.1/Installation_Guide/en-US/Installation_Guide.ent 2011-07-25 16:55:48 UTC (rev 6926)
+++ epp/docs/branches/5.1/Installation_Guide/en-US/Installation_Guide.ent 2011-07-26 04:08:27 UTC (rev 6927)
@@ -10,7 +10,7 @@
<!ENTITY BZURL "<ulink url='https://bugzilla.redhat.com/enter_bug.cgi?product=JBoss%20Enterpri...'>http://bugzilla.redhat.com/</ulink>">
<!-- Corporate Specifics: -->
-<!ENTITY YEAR "2010">
+<!ENTITY YEAR "2011">
<!ENTITY HOLDER "Red Hat, Inc">
<!-- Version Specifcs: -->
Modified: epp/docs/branches/5.1/Installation_Guide/en-US/Post_Installation.xml
===================================================================
--- epp/docs/branches/5.1/Installation_Guide/en-US/Post_Installation.xml 2011-07-25 16:55:48 UTC (rev 6926)
+++ epp/docs/branches/5.1/Installation_Guide/en-US/Post_Installation.xml 2011-07-26 04:08:27 UTC (rev 6927)
@@ -4,109 +4,109 @@
%BOOK_ENTITIES;
]>
<chapter id="Post_Installation_Configuration">
- <title>Post Installation Configuration</title>
- <section id="Set_JBOSS_HOME">
- <title>
- Set JBOSS_HOME Environment Variable
- </title>
- <formalpara>
- <title>
- On a Linux Platform
- </title>
- <para>
+ <title>Post Installation Configuration</title>
+ <section id="Set_JBOSS_HOME">
+ <title>
+ Set JBOSS_HOME Environment Variable
+ </title>
+ <formalpara>
+ <title>
+ On a Linux Platform
+ </title>
+ <para>
Create an environment variable that points to the installation directory (<filename><replaceable><JBOSS_DIST></replaceable>/jboss-as</filename>) and call it <literal>JBOSS_HOME</literal>. Add <literal>$JBOSS_HOME/bin</literal> to the system path to be able to run the server from the command line. You can do this by adding the following lines to the <filename>.bashrc</filename> file in your home directory.
- </para>
- </formalpara>
+ </para>
+ </formalpara>
<programlisting>
-#In this example /home/user/jboss-epp-5.0/jboss-as is the installation directory.
- export JBOSS_HOME=/home/user/jboss-epp-5.0/jboss-as
+#In this example /home/user/jboss-epp-<replaceable><VERS></replaceable>/jboss-as is the installation directory.
+ export JBOSS_HOME=/home/user/jboss-epp-<replaceable><VERS></replaceable>/jboss-as
export PATH=$PATH:$JBOSS_HOME/bin
</programlisting>
- <para>
- Set this variable for the user account(s) that will run the server.
- </para>
+ <para>
+ Set this variable for the user account(s) that will run the server.
+ </para>
- <formalpara>
- <title>
- On Microsoft Windows
- </title>
- <para>
- Create an environment variable called <literal>JBOSS_HOME</literal> that points to the installation directory, for example: <filename>C:\jboss-epp-5.0\jboss-as\</filename>.
- </para>
- </formalpara>
+ <formalpara>
+ <title>
+ On Microsoft Windows
+ </title>
+ <para>
+ Create an environment variable called <literal>JBOSS_HOME</literal> that points to the installation directory, for example: <filename>C:\jboss-epp-<replaceable><VERS></replaceable>\jboss-as\</filename>.
+ </para>
+ </formalpara>
<para>
- In order to run the server from the command line add the <filename>bin</filename> directory to your path, for example: <filename>C:\jboss-epp-5.0\jboss-as\bin</filename>.
+ In order to run the server from the command line add the <filename>bin</filename> directory to your path, for example: <filename>C:\jboss-epp-<replaceable><VERS></replaceable>\jboss-as\bin</filename>.
</para>
<para>
You may set these variables by going to the System Properties window then select the Advanced tab and finally click on the Environment Variables button.
</para>
- </section>
-
- <section id="Adjust_Memory_Settings">
- <title>Adjust memory settings</title>
+ </section>
+
+ <section id="Adjust_Memory_Settings">
+ <title>Adjust memory settings</title>
- <para>
+ <para>
If the server is running out of memory, you may adjust the memory settings before deploying the applications. You can do this by updating <literal>JAVA_OPTS</literal> settings in the file <filename><replaceable>JBOSS_HOME</replaceable>/jboss-as/bin/run.conf</filename> on Linux or <filename><replaceable>JBOSS_HOME</replaceable>/jboss-as/bin/run.conf.bat</filename> on Windows. The default values don't take into account the memory requirements of your applications:
<programlisting>
-Xms1303m -Xmx1303m -XX:MaxPermSize=256m ....
</programlisting>
- </para>
- </section>
-
-
-
- <section id="Post-Installation">
- <title>
- Post Installation Security Configuration
- </title>
- <para>
- When installed from the zip archive, authentication is required to access the majority of JBoss services, including administrative services. User accounts have not been set up to eliminate the possibility of default username/password based attacks.
- </para>
+ </para>
+ </section>
+
+
+
+ <section id="Post-Installation">
+ <title>
+ Post Installation Security Configuration
+ </title>
+ <para>
+ When installed from the zip archive, authentication is required to access the majority of JBoss services, including administrative services. User accounts have not been set up to eliminate the possibility of default username/password based attacks.
+ </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 username/password definition format only.
- </para>
- </important>
- <note>
+ <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 username/password definition format only.
+ </para>
+ </important>
+ <note>
<title><replaceable>JBOSS_HOME</replaceable> and <replaceable><PROFILE></replaceable></title>
- <para>
- <replaceable>JBOSS_HOME</replaceable> is the <filename>jboss-as</filename> directory, a level above the bin directory. <replaceable><PROFILE></replaceable> is the chosen server profile: all, default, minimal production, standard or web.
- </para>
- </note>
- <formalpara><title>Set up the <literal>jmx-console</literal> users and roles</title>
- <para>
+ <para>
+ <replaceable>JBOSS_HOME</replaceable> is the <filename>jboss-as</filename> directory, a level above the bin directory. <replaceable><PROFILE></replaceable> is the chosen server profile: all, default, minimal production, standard or web.
+ </para>
+ </note>
+ <formalpara><title>Set up the <literal>jmx-console</literal> users and roles</title>
+ <para>
Edit the <filename>jmx-console-users.properties</filename> file located in the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/conf/props/</filename> directory defining the username and password:
- </para>
- </formalpara>
- <programlisting>user=password</programlisting>
- <para>
- Edit the <filename>jmx-console-roles.properties</filename> file located in the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/conf/props/</filename> directory to define the user's roles:
- </para>
- <programlisting>user=JBossAdmin,HttpInvoker</programlisting>
-
- <formalpara><title>Set up the <literal>admin-console</literal> users and roles</title>
- <para>
- Edit the <filename>web-console-users.properties</filename> file located in the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/classes/</filename> directory:
- </para>
- </formalpara>
- <programlisting>user=password</programlisting>
- <para>
- Edit the <filename>web-console-roles.properties</filename> file located in the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/classes/</filename> directory:
- </para>
- <programlisting>user=JBossAdmin,HttpInvoker</programlisting>
-
- <important>
- <para>
- Login credentials for the <literal>admin-console</literal> are the same as those used for the JMX console.
- </para>
- </important>
- <formalpara>
- <title>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 the <literal>suckerPassword</literal> attribute in the Server Peer configuration file: <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/messaging/messaging-jboss-beans.xml</filename>.
+ </para>
+ </formalpara>
+ <programlisting>user=password</programlisting>
+ <para>
+ Edit the <filename>jmx-console-roles.properties</filename> file located in the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/conf/props/</filename> directory to define the user's roles:
+ </para>
+ <programlisting>user=JBossAdmin,HttpInvoker</programlisting>
+
+ <formalpara><title>Set up the <literal>admin-console</literal> users and roles</title>
+ <para>
+ Edit the <filename>web-console-users.properties</filename> file located in the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/classes/</filename> directory:
+ </para>
+ </formalpara>
+ <programlisting>user=password</programlisting>
+ <para>
+ Edit the <filename>web-console-roles.properties</filename> file located in the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/classes/</filename> directory:
+ </para>
+ <programlisting>user=JBossAdmin,HttpInvoker</programlisting>
+
+ <important>
+ <para>
+ Login credentials for the <literal>admin-console</literal> are the same as those used for the JMX console.
+ </para>
+ </important>
+ <formalpara>
+ <title>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 the <literal>suckerPassword</literal> attribute in the Server Peer configuration file: <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/messaging/messaging-jboss-beans.xml</filename>.
</para>
- </formalpara>
+ </formalpara>
<procedure>
<title>Set suckerPassword for JBoss Messaging</title>
<step>
@@ -149,21 +149,21 @@
</bean>
</programlisting>-->
- </section>
-
- <section id="Disabling_Authentication">
- <title>Disabling Authentication</title>
-
- <para>
- It is possible to disable authentication for specific services by following the instructions in this section.
- </para>
+ </section>
+
+ <section id="Disabling_Authentication">
+ <title>Disabling Authentication</title>
+
+ <para>
+ It is possible to disable authentication for specific services by following the instructions in this section.
+ </para>
- <formalpara>
- <title>Disabling Authentication for JXM Console:</title>
- <para>
+ <formalpara>
+ <title>Disabling Authentication for JXM Console:</title>
+ <para>
To disable authentication for the JMX console, edit the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/jmx-console.war/WEB-INF/web.xml</filename> file and comment out the security-constraint section:
- </para>
- </formalpara>
+ </para>
+ </formalpara>
<programlisting language="XML" role="XML">
<security-constraint>
<web-resource-collection>
@@ -179,9 +179,9 @@
</auth-constraint>
</security-constraint>
</programlisting>
- <formalpara>
- <title>Disabling Authentication for Web Console:</title>
- <para>
+ <formalpara>
+ <title>Disabling Authentication for Web Console:</title>
+ <para>
To disable authentication for the Web console, edit the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/web.xml</filename> file to comment out the security-constraint section:
<programlisting language="XML" role="XML">
<security-constraint>
@@ -198,12 +198,12 @@
<role-name>JBossAdmin</role-name>
</auth-constraint>
</security-constraint>
- </programlisting>
- </para>
- </formalpara>
- <formalpara>
- <title>Disabling Authentication for HTTP Invoker:</title>
- <para>
+ </programlisting>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>Disabling Authentication for HTTP Invoker:</title>
+ <para>
To disable authentication for the http invoker, <literal>JNDIFactory</literal>, <literal>EJBInvokerServlet</literal>, and <literal>JMXInvokerServlet</literal> need to be removed from the security realm in the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/web.xml/deploy/httpha-invoker.sar/invoker.war/WEB-INF/web.xml</filename> file:
<programlisting language="XML" role="XML">
<security-constraint>
@@ -220,15 +220,15 @@
<role-name>HttpInvoker</role-name>
</auth-constraint>
</security-constraint>
- </programlisting>
- </para>
- </formalpara>
- <formalpara>
- <title>Disabling Authentication for JMX Invoker:</title>
- <para>
+ </programlisting>
+ </para>
+ </formalpara>
+ <formalpara>
+ <title>Disabling Authentication for JMX Invoker:</title>
+ <para>
To disable authentication for the JMX invoker, edit the <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/deploy/management/console-mgr.sar/web-console.war/WEB-INF/web.xml/deploy/httpha-invoker.sar/invoker.war/WEB-INF/web.xml/deploy/jmx-invoker-service.xml</filename> file to comment out the security interceptor passthrough:
- </para>
- </formalpara>
+ </para>
+ </formalpara>
<para>
Locate the mbean section with the class <literal>org.jboss.jmx.connector.invoker.InvokerAdaptorService</literal>. In that section comment out the line that relates to authenticated users:
</para>
@@ -245,18 +245,18 @@
</descriptors>
</programlisting>
- <formalpara>
- <title>Disabling Pre-configured Accounts</title>
- <para>
- JBoss Enterprise Portal Platform includes four pre-configured user accounts for testing and evaluation purposes. These accounts can be used for direct access to the portal.
- </para>
- </formalpara>
- <para>
- For security reasons, before going in production, you should restrict the access to the login servlet to POST.
- </para>
- <para>
- To do so, edit the file <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/gatein.ear/02portal.war/WEB-INF/web.xml</filename> and add:
- </para>
+ <formalpara>
+ <title>Disabling Pre-configured Accounts</title>
+ <para>
+ JBoss Enterprise Portal Platform includes four pre-configured user accounts for testing and evaluation purposes. These accounts can be used for direct access to the portal.
+ </para>
+ </formalpara>
+ <para>
+ For security reasons, before going in production, you should restrict the access to the login servlet to POST.
+ </para>
+ <para>
+ To do so, edit the file <filename><replaceable>JBOSS_HOME</replaceable>/server/<replaceable><PROFILE></replaceable>/gatein.ear/02portal.war/WEB-INF/web.xml</filename> and add:
+ </para>
<programlisting language="XML" role="XML"><![CDATA[
<security-constraint>
<web-resource-collection>
@@ -271,11 +271,11 @@
</web-resource-collection>
<auth-constraint/>
</security-constraint> ]]></programlisting>
- <para>
- Doing this will render the login links provided on the front page inactive.
- </para>
-
+ <para>
+ Doing this will render the login links provided on the front page inactive.
+ </para>
+
- </section>
+ </section>
</chapter>
Modified: epp/docs/branches/5.1/Installation_Guide/en-US/Revision_History.xml
===================================================================
--- epp/docs/branches/5.1/Installation_Guide/en-US/Revision_History.xml 2011-07-25 16:55:48 UTC (rev 6926)
+++ epp/docs/branches/5.1/Installation_Guide/en-US/Revision_History.xml 2011-07-26 04:08:27 UTC (rev 6927)
@@ -5,39 +5,53 @@
]>
<appendix id="appe-Install_Guide-Revision_History">
- <title>Revision History</title>
- <simpara>
- <revhistory>
- <revision>
- <revnumber>2-5.1.1</revnumber>
- <date>Monday June 27 2011</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Updated for 5.1.1 Release.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-5.2</revnumber>
- <date>Wed June 22 2011</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Incorporated new Bugzilla feedback link.</member>
- <member>Corrected minor typographical errors.</member>
- </simplelist>
- </revdescription>
- </revision>
- <!--<revision>
+ <title>Revision History</title>
+ <simpara>
+ <revhistory>
+ <revision>
+ <revnumber>2-5.1.3</revnumber>
+ <date>Fri Jul 15 2011</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email></email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Updated for 5.1.1 Release.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <!--<revision>
+ <revnumber>2-5.1.1</revnumber>
+ <date>Monday June 27 2011</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Updated for 5.1.1 Release.</member>
+ </simplelist>
+ </revdescription>
+ </revision>-->
+ <revision>
+ <revnumber>1-5.2</revnumber>
+ <date>Wed June 22 2011</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Incorporated new Bugzilla feedback link.</member>
+ <member>Corrected minor typographical errors.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <!--<revision>
<revnumber>1-5.1</revnumber>
<date>Tue Dec 21 2010</date>
<author>
@@ -107,7 +121,7 @@
</simplelist>
</revdescription>
</revision>
- <revision>
+ <revision>
<revnumber>1-2.1</revnumber>
<date>Mon Nov 22 2010</date>
<author>
@@ -120,8 +134,8 @@
<member>Added Installing Add-ons chapter. Updated .ent file</member>
</simplelist>
</revdescription>
- </revision>
- <revision>
+ </revision>
+ <revision>
<revnumber>1-2.0</revnumber>
<date>Wed Nov 17 2010</date>
<author>
@@ -150,92 +164,92 @@
</revdescription>
</revision>
<revision>
- <revnumber>1-1.8</revnumber>
- <date>Tue Oct 26 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Added Recommended Practices section.</member>
- </simplelist>
- </revdescription>
- </revision>
+ <revnumber>1-1.8</revnumber>
+ <date>Tue Oct 26 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Added Recommended Practices section.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
<!--<revision>
- <revnumber>1-1.7</revnumber>
- <date>Tue Oct 26 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Rebuilt for new Publican version features.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-1.6</revnumber>
- <date>Thu Sep 30 2010</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Edit Product version number for publishing restructure.</member>
- </simplelist>
- </revdescription>
- </revision>-->
- <revision>
- <revnumber>1-1.3</revnumber>
- <date>Tue Apr 28 2010</date>
- <author>
- <firstname>Luc</firstname>
- <surname>Texier</surname>
- <email>ltexier(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>https://jira.jboss.org/jira/browse/JBEPP-274.</member>
- </simplelist>
- </revdescription>
- </revision>
- <revision>
- <revnumber>1-1.2</revnumber>
- <date>Tue Apr 13 2010</date>
- <author>
- <firstname>Ben</firstname>
- <surname>Clare</surname>
- <email>bclare(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Updates as described in JBEPP-288 for the version 5.0 release.</member>
- </simplelist>
- </revdescription>
- </revision>
+ <revnumber>1-1.7</revnumber>
+ <date>Tue Oct 26 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Rebuilt for new Publican version features.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-1.6</revnumber>
+ <date>Thu Sep 30 2010</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Edit Product version number for publishing restructure.</member>
+ </simplelist>
+ </revdescription>
+ </revision>-->
+ <revision>
+ <revnumber>1-1.3</revnumber>
+ <date>Tue Apr 28 2010</date>
+ <author>
+ <firstname>Luc</firstname>
+ <surname>Texier</surname>
+ <email>ltexier(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>https://jira.jboss.org/jira/browse/JBEPP-274.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
+ <revnumber>1-1.2</revnumber>
+ <date>Tue Apr 13 2010</date>
+ <author>
+ <firstname>Ben</firstname>
+ <surname>Clare</surname>
+ <email>bclare(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Updates as described in JBEPP-288 for the version 5.0 release.</member>
+ </simplelist>
+ </revdescription>
+ </revision>
- <revision>
- <revnumber>1-1.1</revnumber>
- <date>Tue Nov 24 2009</date>
- <author>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <email>smumford(a)redhat.com</email>
- </author>
- <revdescription>
- <simplelist>
- <member>Initial creation of book in Publican</member>
- </simplelist>
- </revdescription>
- </revision>
+ <revision>
+ <revnumber>1-1.1</revnumber>
+ <date>Tue Nov 24 2009</date>
+ <author>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <email>smumford(a)redhat.com</email>
+ </author>
+ <revdescription>
+ <simplelist>
+ <member>Initial creation of book in Publican</member>
+ </simplelist>
+ </revdescription>
+ </revision>
- </revhistory>
- </simpara>
+ </revhistory>
+ </simpara>
</appendix>
Modified: epp/docs/branches/5.1/Installation_Guide/publican.cfg
===================================================================
--- epp/docs/branches/5.1/Installation_Guide/publican.cfg 2011-07-25 16:55:48 UTC (rev 6926)
+++ epp/docs/branches/5.1/Installation_Guide/publican.cfg 2011-07-26 04:08:27 UTC (rev 6927)
@@ -7,6 +7,7 @@
brand: JBoss
debug:1
show_remarks:1
+
cvs_branch: DOCS-RHEL-6
cvs_root: :ext:cvs.devel.redhat.com:/cvs/dist
cvs_pkg: JBoss_Enterprise_Portal_Platform-Installation_Guide-5.1-web-__LANG__
\ No newline at end of file
13 years, 5 months
gatein SVN: r6926 - in portal/branches/api: component/api-impl/src/main/java/org/gatein/portal/api/impl and 2 other directories.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2011-07-25 12:55:48 -0400 (Mon, 25 Jul 2011)
New Revision: 6926
Added:
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/PortletImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/WSRPImpl.java
Removed:
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ApplicationImpl.java
Modified:
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/CategoryImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/GadgetImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ManagedContentImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/portal/NavigationImpl.java
portal/branches/api/pom.xml
Log:
- Use version 1.0.0-Alpha01 of the API and adapted for changes.
- In particular, added WSRPImpl and improved content retrieval.
- Added more Id-managing methods.
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java 2011-07-25 10:28:06 UTC (rev 6925)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java 2011-07-25 16:55:48 UTC (rev 6926)
@@ -43,11 +43,12 @@
import org.exoplatform.services.organization.GroupHandler;
import org.exoplatform.services.organization.OrganizationService;
import org.gatein.api.GateIn;
-import org.gatein.api.content.Application;
import org.gatein.api.content.Category;
import org.gatein.api.content.Content;
import org.gatein.api.content.Gadget;
import org.gatein.api.content.ManagedContent;
+import org.gatein.api.content.Portlet;
+import org.gatein.api.content.WSRP;
import org.gatein.api.id.Context;
import org.gatein.api.id.Id;
import org.gatein.api.id.Identifiable;
@@ -74,6 +75,7 @@
private static final Query<PortalData> PORTALS = new Query<PortalData>(SiteType.PORTAL.getName(), null, PortalData.class);
private static final Query<DashboardData> DASHBOARDS = new Query<DashboardData>(SiteType.USER.getName(), null, DashboardData.class);
private static final Query<PageData> GROUPS = new Query<PageData>(SiteType.GROUP.getName(), null, PageData.class);
+
private static final String GROUP_CHARS = "\\w|-|_";
public static final Context CONTEXT = Context.builder()
.requiredComponent("owner", Site.class, Pattern.compile(Site.PORTAL_NAME + "|" + Site.GROUP_NAME + "|" + Site.DASHBOARD_NAME))
@@ -83,8 +85,17 @@
public static final Context GROUP_CONTEXT = Context.builder().requiredUnboundedHierarchicalComponent("group", Identifiable.class, Pattern.compile("(" + GROUP_CHARS + ")+"))
.withDefaultSeparator("/").requireSeparatorInFirstPosition().build();
public static final Context APPLICATION_CONTEXT = Context.builder().requiredComponent("application", Identifiable.class, Pattern.compile("\\w+"))
- .requiredComponent("portlet", Application.class, Pattern.compile("\\w+")).withDefaultSeparator("/").build();
+ .requiredComponent("portlet", Portlet.class, Pattern.compile("\\w+")).withDefaultSeparator("/").build();
private static final Context GADGET_CONTEXT = Context.builder().requiredComponent("name", Gadget.class, Pattern.compile("\\w+")).build();
+ private static final Context CATEGORY_CONTEXT = Context.builder().requiredComponent("name", Category.class, Pattern.compile("\\w+")).build();
+ private static final Context WSRP_CONTEXT = Context.builder().requiredComponent("invoker", Identifiable.class, Pattern.compile("\\w+"))
+ .requiredComponent("portletcontext", WSRP.class, Pattern.compile(GROUP_CHARS + "+")).build();
+ private static final String MANAGED = "managed";
+ private static final Context MANAGED_CONTENT_CONTEXT = Context.builder()
+ .requiredComponent(MANAGED, ManagedContent.class, Pattern.compile(MANAGED))
+ .requiredComponent("content", Content.class, Pattern.compile(".+"))
+ .build();
+
private ExoContainer container;
private ModelDataStorage dataStorage;
private NavigationService navigationService;
@@ -258,21 +269,26 @@
return Id.create(GROUP_CONTEXT, root, children);
}
- public Id<Application> applicationId(String application, String portlet)
+ public Id<Portlet> portletId(String application, String portlet)
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ return Id.create(APPLICATION_CONTEXT, Portlet.class, application, portlet);
}
- public <T extends Content> Id<T> contentId(String contentId, Class<T> expectedType)
+ public Id<Portlet> parsePortletId(String contentId)
{
- return Id.parse(GateInImpl.APPLICATION_CONTEXT, contentId, expectedType);
+ return Id.parse(GateInImpl.APPLICATION_CONTEXT, contentId, Portlet.class);
}
- public Id<Content> wsrpPortletId(String invoker, String portlet)
+ public Id<WSRP> wsrpPortletId(String invoker, String portlet)
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ return Id.create(WSRP_CONTEXT, WSRP.class, invoker, portlet);
}
+ public Id<WSRP> parseWSRPPortletId(String compositeId)
+ {
+ return Id.parse(WSRP_CONTEXT, compositeId, WSRP.class);
+ }
+
public Id<Gadget> gadgetId(String gadgetName)
{
return Id.create(GADGET_CONTEXT, Gadget.class, gadgetName);
@@ -283,14 +299,14 @@
return null; //To change body of implemented methods use File | Settings | File Templates.
}
- public <T extends Content<T>> Id<ManagedContent<T>> managedContentId(Id<T> contentId)
+ public <T extends Content> Id<ManagedContent> managedContentId(Id<T> contentId)
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ return Id.create(MANAGED_CONTENT_CONTEXT, ManagedContent.class, MANAGED, contentId.toString());
}
public Id<Category> categoryId(String name)
{
- return null;
+ return Id.create(CATEGORY_CONTEXT, Category.class, name);
}
public <T extends Site> Id<T> siteId(Type<T, Site> siteType, String siteName)
@@ -301,7 +317,7 @@
public <T extends Site> Id<Page> pageId(Id<T> ownerSite, String pageName)
{
ParameterValidation.throwIllegalArgExceptionIfNull(ownerSite, "Owner Site Id");
- return ownerSite.getIdforChild(pageName);
+ return ownerSite.getIdForChild(pageName);
}
public void start()
Deleted: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ApplicationImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ApplicationImpl.java 2011-07-25 10:28:06 UTC (rev 6925)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ApplicationImpl.java 2011-07-25 16:55:48 UTC (rev 6926)
@@ -1,53 +0,0 @@
-/*
-* JBoss, a division of Red Hat
-* Copyright 2008, 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.portal.api.impl.content;
-
-import org.exoplatform.application.registry.Application;
-import org.gatein.api.content.Content;
-import org.gatein.api.id.Id;
-import org.gatein.api.util.Type;
-import org.gatein.portal.api.impl.GateInImpl;
-import org.gatein.portal.api.impl.IdentifiableImpl;
-
-/** @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a> */
-public class ApplicationImpl extends IdentifiableImpl<org.gatein.api.content.Application> implements org.gatein.api.content.Application
-{
- private final Application application;
-
- public ApplicationImpl(Application application, GateInImpl gateIn)
- {
- super(Id.parse(GateInImpl.APPLICATION_CONTEXT, application.getId()), application.getApplicationName(), gateIn);
- this.application = application;
- }
-
- @Override
- public String toString()
- {
- return "Application '" + getName() + "' @" + getId();
- }
-
- public Type<org.gatein.api.content.Application, Content> getType()
- {
- return Content.PORTLET;
- }
-}
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/CategoryImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/CategoryImpl.java 2011-07-25 10:28:06 UTC (rev 6925)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/CategoryImpl.java 2011-07-25 16:55:48 UTC (rev 6926)
@@ -84,9 +84,17 @@
{
return gateIn.gadgetId(application.getContentId());
}
+ else if (org.gatein.api.content.WSRP.class.isAssignableFrom(contentClass))
+ {
+ return gateIn.parseWSRPPortletId(application.getId());
+ }
+ else if (org.gatein.api.content.Portlet.class.isAssignableFrom(contentClass))
+ {
+ return gateIn.parsePortletId(application.getContentId());
+ }
else
{
- return gateIn.contentId(application.getId(), contentClass);
+ throw new IllegalArgumentException("Unknown application type: " + type);
}
}
@@ -176,11 +184,11 @@
}
else if (ApplicationType.PORTLET.equals(type))
{
- return (Class<T>)org.gatein.api.content.Application.class;
+ return (Class<T>)org.gatein.api.content.Portlet.class;
}
else if (ApplicationType.WSRP_PORTLET.equals(type))
{
- return (Class<T>)org.gatein.api.content.Application.class;
+ return (Class<T>)org.gatein.api.content.WSRP.class;
}
else
{
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java 2011-07-25 10:28:06 UTC (rev 6925)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java 2011-07-25 16:55:48 UTC (rev 6926)
@@ -24,12 +24,13 @@
import org.exoplatform.application.registry.ApplicationCategory;
import org.exoplatform.application.registry.ApplicationRegistryService;
-import org.gatein.api.content.Application;
import org.gatein.api.content.Category;
import org.gatein.api.content.Content;
import org.gatein.api.content.ContentRegistry;
import org.gatein.api.content.Gadget;
import org.gatein.api.content.ManagedContent;
+import org.gatein.api.content.Portlet;
+import org.gatein.api.content.WSRP;
import org.gatein.api.id.Id;
import org.gatein.api.util.Filter;
import org.gatein.api.util.IterableCollection;
@@ -176,7 +177,7 @@
{
Class<T> type = id.getIdentifiableType();
Object result;
- if (Application.class.equals(type))
+ if (Portlet.class.equals(type))
{
try
{
@@ -186,7 +187,7 @@
{
return null;
}
- result = new ApplicationImpl(application, gateIn);
+ result = new PortletImpl((Id<Portlet>)id, application, gateIn);
}
catch (Exception e)
{
@@ -207,7 +208,7 @@
{
return null;
}
- result = new GadgetImpl(gadget, gateIn);
+ result = new GadgetImpl((Id<Gadget>)id, gadget, gateIn);
}
catch (Exception e)
{
@@ -218,6 +219,27 @@
gateIn.end();
}
}
+ else if (WSRP.class.equals(type))
+ {
+ try
+ {
+ gateIn.begin();
+ org.exoplatform.application.registry.Application application = gateIn.getRegistryService().getApplication(id.toString());
+ if (application == null)
+ {
+ return null;
+ }
+ result = new WSRPImpl((Id<WSRP>)id, application, gateIn);
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException(e);
+ }
+ finally
+ {
+ gateIn.end();
+ }
+ }
else
{
throw new IllegalArgumentException("Unknown Content type: " + type.getCanonicalName());
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/GadgetImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/GadgetImpl.java 2011-07-25 10:28:06 UTC (rev 6925)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/GadgetImpl.java 2011-07-25 16:55:48 UTC (rev 6926)
@@ -25,6 +25,7 @@
import org.exoplatform.application.gadget.Gadget;
import org.exoplatform.application.gadget.Source;
import org.gatein.api.content.Content;
+import org.gatein.api.id.Id;
import org.gatein.api.util.Type;
import org.gatein.portal.api.impl.GateInImpl;
import org.gatein.portal.api.impl.IdentifiableImpl;
@@ -36,9 +37,9 @@
{
private final Gadget gadget;
- public GadgetImpl(Gadget gadget, GateInImpl gateIn)
+ public GadgetImpl(Id<org.gatein.api.content.Gadget> id, Gadget gadget, GateInImpl gateIn)
{
- super(gateIn.gadgetId(gadget.getName()), gadget.getName(), gateIn);
+ super(id, gadget.getName(), gateIn);
this.gadget = gadget;
}
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ManagedContentImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ManagedContentImpl.java 2011-07-25 10:28:06 UTC (rev 6925)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ManagedContentImpl.java 2011-07-25 16:55:48 UTC (rev 6926)
@@ -26,12 +26,9 @@
import org.gatein.api.GateIn;
import org.gatein.api.content.Content;
import org.gatein.api.content.ManagedContent;
-import org.gatein.api.id.Context;
import org.gatein.api.id.Id;
import org.gatein.common.util.ParameterValidation;
-import java.util.regex.Pattern;
-
/**
* @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a>
* @version $Revision$
@@ -44,17 +41,13 @@
private String name;
private String displayName;
private String description;
- private static final String MANAGED = "managed";
- private static final Context CONTEXT = Context.builder()
- .requiredComponent(MANAGED, ManagedContentImpl.class, Pattern.compile(MANAGED))
- .requiredComponent("content", Content.class, Pattern.compile(".+"))
- .build();
+
public ManagedContentImpl(T content, CategoryImpl category)
{
ParameterValidation.throwIllegalArgExceptionIfNull(content, "Content");
this.content = content;
- this.id = Id.create(CONTEXT, MANAGED, content.getId().toString());
+ this.id = content.getGateIn().managedContentId(content.getId());
this.category = category;
}
Copied: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/PortletImpl.java (from rev 6924, portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ApplicationImpl.java)
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/PortletImpl.java (rev 0)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/PortletImpl.java 2011-07-25 16:55:48 UTC (rev 6926)
@@ -0,0 +1,54 @@
+/*
+* JBoss, a division of Red Hat
+* Copyright 2008, 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.portal.api.impl.content;
+
+import org.exoplatform.application.registry.Application;
+import org.gatein.api.content.Content;
+import org.gatein.api.content.Portlet;
+import org.gatein.api.id.Id;
+import org.gatein.api.util.Type;
+import org.gatein.portal.api.impl.GateInImpl;
+import org.gatein.portal.api.impl.IdentifiableImpl;
+
+/** @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a> */
+public class PortletImpl extends IdentifiableImpl<Portlet> implements Portlet
+{
+ private final Application application;
+
+ public PortletImpl(Id<Portlet> id, Application application, GateInImpl gateIn)
+ {
+ super(id, application.getApplicationName(), gateIn);
+ this.application = application;
+ }
+
+ @Override
+ public String toString()
+ {
+ return "Application '" + getName() + "' @" + getId();
+ }
+
+ public Type<Portlet, Content> getType()
+ {
+ return Content.PORTLET;
+ }
+}
Added: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/WSRPImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/WSRPImpl.java (rev 0)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/WSRPImpl.java 2011-07-25 16:55:48 UTC (rev 6926)
@@ -0,0 +1,45 @@
+/*
+* JBoss, a division of Red Hat
+* Copyright 2008, 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.portal.api.impl.content;
+
+import org.exoplatform.application.registry.Application;
+import org.gatein.api.content.Content;
+import org.gatein.api.content.WSRP;
+import org.gatein.api.id.Id;
+import org.gatein.api.util.Type;
+import org.gatein.portal.api.impl.GateInImpl;
+import org.gatein.portal.api.impl.IdentifiableImpl;
+
+/** @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a> */
+public class WSRPImpl extends IdentifiableImpl<WSRP> implements WSRP
+{
+ public WSRPImpl(Id<WSRP> id, Application application, GateInImpl gateIn)
+ {
+ super(id, application.getApplicationName(), gateIn);
+ }
+
+ public Type<WSRP, Content> getType()
+ {
+ return Content.WSRP;
+ }
+}
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/portal/NavigationImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/portal/NavigationImpl.java 2011-07-25 10:28:06 UTC (rev 6925)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/portal/NavigationImpl.java 2011-07-25 16:55:48 UTC (rev 6926)
@@ -193,7 +193,7 @@
public Id<Navigation> getIdForChild(String key)
{
- return site.getIdforChild(key);
+ return site.getIdForChild(key);
}
public <U extends Navigation> IterableIdentifiableCollection<U> getAllWhere(Filter<U> filter)
Modified: portal/branches/api/pom.xml
===================================================================
--- portal/branches/api/pom.xml 2011-07-25 10:28:06 UTC (rev 6925)
+++ portal/branches/api/pom.xml 2011-07-25 16:55:48 UTC (rev 6926)
@@ -50,7 +50,7 @@
<org.picketlink.idm>1.3.0.Alpha03</org.picketlink.idm>
<org.gatein.wsrp.version>2.1.0-Beta04</org.gatein.wsrp.version>
<org.gatein.mop.version>1.1.0-Beta05</org.gatein.mop.version>
- <org.gatein.api.version>1.0.0-Beta01-SNAPSHOT</org.gatein.api.version>
+ <org.gatein.api.version>1.0.0-Alpha01-SNAPSHOT</org.gatein.api.version>
<org.slf4j.version>1.5.8</org.slf4j.version>
<commons-pool.version>1.5.5</commons-pool.version>
<rhino.version>1.6R5</rhino.version>
13 years, 5 months
gatein SVN: r6925 - portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium.
by do-not-reply@jboss.org
Author: hanh.ly
Date: 2011-07-25 06:28:06 -0400 (Mon, 25 Jul 2011)
New Revision: 6925
Modified:
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_05_RecoverUserNameOrPassword.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_06_CreateNewAccount.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_07_UsersManagement.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_08_SearchUser.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_09_GroupManagement.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_10_AddUserIntoGroup.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_11_MembershipManagement.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_12_ImportApplication.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_13_ShowOrHideImportApplicationIcon.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_14_ManageCategory.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_15_AddApplicationIntoCategory.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_16_ViewPortlets.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_17_ManageRemoteGadget.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_18_ManageManualGadget.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_25_ChangeContainerInPortal.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_30_EditPageForPortal.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_31_ManageNodePortal.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html
portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation.html
Log:
TESTVN-3922
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_05_RecoverUserNameOrPassword.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_05_RecoverUserNameOrPassword.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_05_RecoverUserNameOrPassword.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -72,26 +72,51 @@
<td>Test_SNF_PRL_05</td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>password</td>
+ <td></td>
+</tr>
+<tr>
<td>type</td>
<td>password</td>
<td>Test_SNF_PRL_05</td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>Confirmpassword</td>
+ <td></td>
+</tr>
+<tr>
<td>type</td>
<td>Confirmpassword</td>
<td>Test_SNF_PRL_05</td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>firstName</td>
+ <td></td>
+</tr>
+<tr>
<td>type</td>
<td>firstName</td>
<td>Test_SNF_PRL_05</td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>lastName</td>
+ <td></td>
+</tr>
+<tr>
<td>type</td>
<td>lastName</td>
<td>Test_SNF_PRL_05</td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>email</td>
+ <td></td>
+</tr>
+<tr>
<td>type</td>
<td>email</td>
<td>exomailtest(a)gmail.com</td>
@@ -438,12 +463,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>link=Users and groups management</td>
+ <td>link=Users and Groups Manager</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Users and groups management</td>
+ <td>link=Users and Groups Manager</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_06_CreateNewAccount.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_06_CreateNewAccount.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_06_CreateNewAccount.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -253,7 +253,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Users and groups management</td>
+ <td>link=Users and Groups Manager</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_07_UsersManagement.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_07_UsersManagement.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_07_UsersManagement.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -153,7 +153,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Users and groups management</td>
+ <td>link=Users and Groups Manager</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_08_SearchUser.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_08_SearchUser.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_08_SearchUser.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -58,7 +58,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Users and groups management</td>
+ <td>link=Users and Groups Manager</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_09_GroupManagement.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_09_GroupManagement.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_09_GroupManagement.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -58,7 +58,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Users and groups management</td>
+ <td>link=Users and Groups Manager</td>
<td></td>
</tr>
<tr>
@@ -83,12 +83,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//a[@title="Add New Group"]</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div/div[2]/div/div/a[3]</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//a[@title="Add New Group"]</td>
+ <td>//div[@id='UIOrganizationPortlet']/div[2]/div[2]/div/div[2]/div/div/a[3]</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_10_AddUserIntoGroup.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_10_AddUserIntoGroup.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_10_AddUserIntoGroup.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -58,7 +58,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Users and groups management</td>
+ <td>link=Users and Groups Manager</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_11_MembershipManagement.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_11_MembershipManagement.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_11_MembershipManagement.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -58,7 +58,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Users and groups management</td>
+ <td>link=Users and Groups Manager</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_12_ImportApplication.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_12_ImportApplication.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_12_ImportApplication.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -57,8 +57,13 @@
<td></td>
</tr>
<tr>
+ <td>waitForElementPresent</td>
+ <td>link=Applications Manager</td>
+ <td></td>
+</tr>
+<tr>
<td>clickAndWait</td>
- <td>link=Application Registry</td>
+ <td>link=Applications Manager</td>
<td></td>
</tr>
<tr>
@@ -108,17 +113,17 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[@id='UIApplicationOrganizer']/div[1]/div[2]</td>
+ <td>//div[@id='UIApplicationOrganizer']/div/div[2]</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[@id='UIApplicationOrganizer']/div[1]/div[2]</td>
+ <td>//div[@id='UIApplicationOrganizer']/div/div[2]</td>
<td></td>
</tr>
<tr>
<td>assertConfirmation</td>
- <td>This action will automatically create categories and import all the gadgets and portlets on it.</td>
+ <td>This will automatically import all gadgets and portlets into new categories.</td>
<td></td>
</tr>
<tr>
@@ -228,7 +233,7 @@
</tr>
<tr>
<td>assertConfirmation</td>
- <td>Are you sure to delete this category and all applications on it?</td>
+ <td>Are you sure you want delete this category and all its applications?</td>
<td></td>
</tr>
<tr>
@@ -253,7 +258,7 @@
</tr>
<tr>
<td>assertConfirmation</td>
- <td>Are you sure to delete this category and all applications on it?</td>
+ <td>Are you sure you want delete this category and all its applications?</td>
<td></td>
</tr>
<tr>
@@ -283,7 +288,7 @@
</tr>
<tr>
<td>assertConfirmation</td>
- <td>Are you sure to delete this category and all applications on it?</td>
+ <td>Are you sure you want delete this category and all its applications?</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_13_ShowOrHideImportApplicationIcon.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_13_ShowOrHideImportApplicationIcon.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_13_ShowOrHideImportApplicationIcon.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -58,7 +58,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Application Registry</td>
+ <td>link=Applications Manager</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_14_ManageCategory.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_14_ManageCategory.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_14_ManageCategory.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -58,7 +58,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Application Registry</td>
+ <td>link=Applications Manager</td>
<td></td>
</tr>
<tr>
@@ -233,7 +233,7 @@
</tr>
<tr>
<td>assertConfirmation</td>
- <td>Are you sure to delete this category and all applications on it?</td>
+ <td>Are you sure you want delete this category and all its applications?</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_15_AddApplicationIntoCategory.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_15_AddApplicationIntoCategory.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_15_AddApplicationIntoCategory.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -53,7 +53,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Application Registry</td>
+ <td>link=Applications Manager</td>
<td></td>
</tr>
<tr>
@@ -228,7 +228,7 @@
</tr>
<tr>
<td>assertConfirmation</td>
- <td>Are you sure to delete this category and all applications on it?</td>
+ <td>Are you sure you want delete this category and all its applications?</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_16_ViewPortlets.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_16_ViewPortlets.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_16_ViewPortlets.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -58,7 +58,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Application Registry</td>
+ <td>link=Applications Manager</td>
<td></td>
</tr>
<tr>
@@ -68,12 +68,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>link=Portlet</td>
+ <td>link=Portlets</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>link=Portlet</td>
+ <td>link=Portlets</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_17_ManageRemoteGadget.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_17_ManageRemoteGadget.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_17_ManageRemoteGadget.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -58,7 +58,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Application Registry</td>
+ <td>link=Applications Manager</td>
<td></td>
</tr>
<tr>
@@ -68,12 +68,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>link=Gadget</td>
+ <td>link=Gadgets</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>link=Gadget</td>
+ <td>link=Gadgets</td>
<td></td>
</tr>
<tr>
@@ -143,12 +143,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>link=Click here to add into categories</td>
+ <td>link=Click here to add this gadget to a category.</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>link=Click here to add into categories</td>
+ <td>link=Click here to add this gadget to a category.</td>
<td></td>
</tr>
<tr>
@@ -198,7 +198,7 @@
</tr>
<tr>
<td>assertConfirmation</td>
- <td>Are you sure to delete this gadget?</td>
+ <td>Are you sure you want to delete this gadget?</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_18_ManageManualGadget.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_18_ManageManualGadget.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_18_ManageManualGadget.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -58,7 +58,7 @@
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Application Registry</td>
+ <td>link=Applications Manager</td>
<td></td>
</tr>
<tr>
@@ -68,12 +68,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>link=Gadget</td>
+ <td>link=Gadgets</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>link=Gadget</td>
+ <td>link=Gadgets</td>
<td></td>
</tr>
<tr>
@@ -118,12 +118,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>link=Click here to add into categories</td>
+ <td>link=Click here to add this gadget to a category.</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>link=Click here to add into categories</td>
+ <td>link=Click here to add this gadget to a category.</td>
<td></td>
</tr>
<tr>
@@ -218,12 +218,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//div[@id='UIGadgetInfo']//div[@title='Refresh information']</td>
+ <td>//div[@id='UIGadgetInfo']/div/div[3]</td>
<td></td>
</tr>
<tr>
<td>click</td>
- <td>//div[@id='UIGadgetInfo']//div[@title='Refresh information']</td>
+ <td>//div[@id='UIGadgetInfo']/div/div[3]</td>
<td></td>
</tr>
<tr>
@@ -248,7 +248,7 @@
</tr>
<tr>
<td>assertConfirmation</td>
- <td>Are you sure to delete this gadget?</td>
+ <td>Are you sure you want to delete this gadget?</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_25_ChangeContainerInPortal.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_25_ChangeContainerInPortal.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_25_ChangeContainerInPortal.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -408,18 +408,13 @@
</tr>
<tr>
<td>mouseOver</td>
- <td>//div[@title="Hold this area to drag this container"]</td>
+ <td>//div/div/div[2]/div/div[2]/div/div</td>
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div/div/div[2]/div/div/div[2]/div/div/div/div/div/div/div[1]</td>
- <td></td>
-</tr>
-<tr>
<td>dragAndDropToObject</td>
- <td>//div/div/div[2]/div/div/div[2]/div/div/div/div/div/div/div[1]</td>
- <td>UIPageBody</td>
+ <td>//div/div/div[2]/div/div[2]/div/div</td>
+ <td>//div[4]/div/div[2]/div/div[2]/div</td>
</tr>
<tr>
<td>echo</td>
@@ -561,6 +556,21 @@
<td>link=Sign out</td>
<td></td>
</tr>
+<tr>
+ <td>verifyElementPresent</td>
+ <td>//div/div/div[2]/div/div[2]/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[4]/div/div[2]/div/div[2]/div/div</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[4]/div/div[2]/div/div[2]/div/div</td>
+ <td></td>
+</tr>
</tbody></table>
</body>
</html>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_30_EditPageForPortal.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_30_EditPageForPortal.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_30_EditPageForPortal.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -583,12 +583,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>link=Page Management</td>
+ <td>link=Pages Manager</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
- <td>link=Page Management</td>
+ <td>link=Pages Manager</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_31_ManageNodePortal.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_31_ManageNodePortal.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_31_ManageNodePortal.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -289,7 +289,7 @@
<tr>
<td>type</td>
<td>pageTitle</td>
- <td>Link</td>
+ <td>Page</td>
</tr>
<tr>
<td>waitForElementPresent</td>
@@ -342,16 +342,6 @@
<td></td>
</tr>
<tr>
- <td>waitForElementPresent</td>
- <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
- <td></td>
-</tr>
-<tr>
- <td>click</td>
- <td>//div[@id='PortalNavigationTopContainer']/div[3]/div/div/div/div/div/div/a</td>
- <td></td>
-</tr>
-<tr>
<td>waitForTextPresent</td>
<td>Test_SNF_PRL_31_edit</td>
<td></td>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_32_MoreActionOnNodeInEditNavigationOfPortal.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -133,13 +133,13 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//a[@title="Quick Search"]</td>
+ <td>name=searchOption</td>
<td></td>
</tr>
<tr>
- <td>click</td>
- <td>//a[@title="Quick Search"]</td>
- <td></td>
+ <td>waitForElementPresent</td>
+ <td>name=searchOption</td>
+ <td>portal</td>
</tr>
<tr>
<td>waitForElementPresent</td>
@@ -298,6 +298,51 @@
</tr>
<tr>
<td>echo</td>
+ <td>-- Clone node</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div[2]/div/div//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[3]/div[2]/div/div//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[6]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[6]/a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
+ <td></td>
+ <td></td>
+</tr>
+<tr>
+ <td>waitForElementPresent</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>mouseDownRight</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]</td>
+ <td></td>
+</tr>
+<tr>
+ <td>click</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div[2]/div/div/div[2]//a</td>
+ <td></td>
+</tr>
+<tr>
+ <td>echo</td>
<td>--Move node up</td>
<td></td>
</tr>
@@ -413,22 +458,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[2]/div[2]/div/div</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div//a</td>
<td></td>
</tr>
<tr>
- <td>click</td>
- <td>//html/body/div/div[2]/div/div/div/div/div/div/div/div/div[2]/div/div/div/div/div/div/div/div[4]/div/div/div/div/div/div/div/div/div/div/div/div[3]/div/div[2]/div/div/div/div/div/div/div[2]/div[3]/div/div/div/div/div/div[2]/div/div/div[2]/div[2]/div/div</td>
- <td></td>
-</tr>
-<tr>
- <td>waitForElementPresent</td>
- <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
- <td></td>
-</tr>
-<tr>
<td>mouseDownRight</td>
- <td>//a[@class='NodeIcon DefaultPageIcon NodeSelected' and @title='Test_SNF_PRL_32']</td>
+ <td>//div[@id='UINavigationNodeSelector']/div/div/div/div[2]/div/div/div[2]/div//a</td>
<td></td>
</tr>
<tr>
Modified: portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation.html
===================================================================
--- portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation.html 2011-07-24 21:06:59 UTC (rev 6924)
+++ portal/trunk/testsuite/selenium-snifftests/src/suite/org/exoplatform/portal/selenium/Test_SNF_PRL_35_ChangeApplicationWhenEditPropertiesOfNodeInPortalNavigation.html 2011-07-25 10:28:06 UTC (rev 6925)
@@ -123,12 +123,12 @@
</tr>
<tr>
<td>waitForElementPresent</td>
- <td>searchTerm</td>
+ <td>//form[@id='UIPageSearchForm']/div[2]/input</td>
<td></td>
</tr>
<tr>
<td>type</td>
- <td>searchTerm</td>
+ <td>//form[@id='UIPageSearchForm']/div[2]/input</td>
<td>Community Management</td>
</tr>
<tr>
@@ -139,7 +139,7 @@
<tr>
<td>select</td>
<td>searchOption</td>
- <td>label=Title</td>
+ <td>label=group</td>
</tr>
<tr>
<td>waitForElementPresent</td>
13 years, 5 months
gatein SVN: r6924 - in portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl: content and 1 other directories.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2011-07-24 17:06:59 -0400 (Sun, 24 Jul 2011)
New Revision: 6924
Modified:
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ApplicationImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/CategoryImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/GadgetImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ManagedContentImpl.java
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/portal/PortalImpl.java
Log:
- Made CategoryImpl completely backed from persistence instead of maintaining local state and fixed improper behavior.
- Improved robustness somewhat.
- Added toString methods.
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java 2011-07-23 21:39:24 UTC (rev 6923)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/GateInImpl.java 2011-07-24 21:06:59 UTC (rev 6924)
@@ -84,6 +84,7 @@
.withDefaultSeparator("/").requireSeparatorInFirstPosition().build();
public static final Context APPLICATION_CONTEXT = Context.builder().requiredComponent("application", Identifiable.class, Pattern.compile("\\w+"))
.requiredComponent("portlet", Application.class, Pattern.compile("\\w+")).withDefaultSeparator("/").build();
+ private static final Context GADGET_CONTEXT = Context.builder().requiredComponent("name", Gadget.class, Pattern.compile("\\w+")).build();
private ExoContainer container;
private ModelDataStorage dataStorage;
private NavigationService navigationService;
@@ -262,6 +263,11 @@
return null; //To change body of implemented methods use File | Settings | File Templates.
}
+ public <T extends Content> Id<T> contentId(String contentId, Class<T> expectedType)
+ {
+ return Id.parse(GateInImpl.APPLICATION_CONTEXT, contentId, expectedType);
+ }
+
public Id<Content> wsrpPortletId(String invoker, String portlet)
{
return null; //To change body of implemented methods use File | Settings | File Templates.
@@ -269,7 +275,7 @@
public Id<Gadget> gadgetId(String gadgetName)
{
- return null; //To change body of implemented methods use File | Settings | File Templates.
+ return Id.create(GADGET_CONTEXT, Gadget.class, gadgetName);
}
public Id<Gadget> gadgetId(URI uri)
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ApplicationImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ApplicationImpl.java 2011-07-23 21:39:24 UTC (rev 6923)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ApplicationImpl.java 2011-07-24 21:06:59 UTC (rev 6924)
@@ -40,6 +40,12 @@
this.application = application;
}
+ @Override
+ public String toString()
+ {
+ return "Application '" + getName() + "' @" + getId();
+ }
+
public Type<org.gatein.api.content.Application, Content> getType()
{
return Content.PORTLET;
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/CategoryImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/CategoryImpl.java 2011-07-23 21:39:24 UTC (rev 6923)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/CategoryImpl.java 2011-07-24 21:06:59 UTC (rev 6924)
@@ -25,11 +25,14 @@
import org.exoplatform.application.registry.Application;
import org.exoplatform.application.registry.ApplicationCategory;
import org.exoplatform.portal.config.UserACL;
+import org.exoplatform.portal.config.model.ApplicationType;
import org.exoplatform.portal.pom.spi.portlet.Portlet;
import org.exoplatform.portal.pom.spi.wsrp.WSRP;
import org.gatein.api.GateIn;
import org.gatein.api.content.Category;
import org.gatein.api.content.Content;
+import org.gatein.api.content.ContentRegistry;
+import org.gatein.api.content.Gadget;
import org.gatein.api.content.ManagedContent;
import org.gatein.api.id.Id;
import org.gatein.api.util.IterableCollection;
@@ -39,29 +42,60 @@
import org.gatein.portal.api.impl.util.AdaptedIterableCollection;
import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
+import java.util.List;
/** @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a> */
public class CategoryImpl implements Category
{
private final ApplicationCategory category;
private final GateInImpl gateIn;
- private Map<String, ManagedContent> managed = new HashMap<String, ManagedContent>(7);
+ private final ContentRegistry registry;
- public CategoryImpl(ApplicationCategory category, GateInImpl gateIn)
+ public CategoryImpl(ApplicationCategory category, ContentRegistry registry, GateInImpl gateIn)
{
this.category = category;
+ this.registry = registry;
this.gateIn = gateIn;
}
+ private IterableCollection<ManagedContent> getManagedContents()
+ {
+ List<Application> applications = category.getApplications();
+ return new AdaptedIterableCollection<Application, ManagedContent>(applications.size(), applications.iterator())
+ {
+ public ManagedContent adapt(Application old)
+ {
+ Content content = registry.get(getContentIdFrom(old));
+ return new ManagedContentImpl(content, CategoryImpl.this);
+ }
+
+ public boolean contains(ManagedContent managedContent)
+ {
+ return getApplication(managedContent.getName()) != null;
+ }
+ };
+ }
+
+ private Id<? extends Content> getContentIdFrom(Application application)
+ {
+ ApplicationType type = application.getType();
+ Class<Content> contentClass = getContentClassFor(type);
+ if (Gadget.class.isAssignableFrom(contentClass))
+ {
+ return gateIn.gadgetId(application.getContentId());
+ }
+ else
+ {
+ return gateIn.contentId(application.getId(), contentClass);
+ }
+ }
+
@Override
public String toString()
{
StringBuilder sb = new StringBuilder("Category '").append(getName()).append("':\n");
- for (ManagedContent content : managed.values())
+ for (ManagedContent content : getManagedContents())
{
sb.append('\t').append(content).append('\n');
}
@@ -78,27 +112,40 @@
{
try
{
+ gateIn.begin();
return gateIn.getRegistryService().getApplication(category.getName(), managedContentName);
}
catch (Exception e)
{
return null;
}
+ finally
+ {
+ gateIn.end();
+ }
}
public <T extends Content> ManagedContent<T> addContent(Id<T> contentId)
{
- T t = gateIn.get(contentId);
+ // get content from registry
+ T t = registry.get(contentId);
+
+ if (t == null)
+ {
+ throw new IllegalArgumentException("No Content with id " + contentId + " exists");
+ }
+
+ // figure out which type it is for the ApplicationRegistry
Type type = t.getType();
ContentType<?> contentType = getContentTypeFor(type);
+
+ // default permissions by default
ArrayList<String> permissions = new ArrayList<String>();
permissions.add(UserACL.EVERYONE);
+
gateIn.getRegistryService().createOrReplaceContentIn(category.getName(), t.getName(), contentType, t.getId().toString(), t.getDisplayName(), null, permissions);
- ManagedContent<T> managedContent = new ManagedContentImpl<T>(t, this);
- managed.put(managedContent.getName(), managedContent);
-
- return managedContent;
+ return new ManagedContentImpl<T>(t, this);
}
private ContentType<?> getContentTypeFor(Type type)
@@ -121,24 +168,23 @@
}
}
- private <T extends Content> String getContentIdFor(T content)
+ private <T extends Content> Class<T> getContentClassFor(ApplicationType type)
{
- Type type = content.getType();
- if (Content.GADGET.equals(type))
+ if (ApplicationType.GADGET.equals(type))
{
- return content.getName();
+ return (Class<T>)Gadget.class;
}
- else if (Content.PORTLET.equals(type))
+ else if (ApplicationType.PORTLET.equals(type))
{
- return content.getId().toString();
+ return (Class<T>)org.gatein.api.content.Application.class;
}
- else if (Content.WSRP.equals(type))
+ else if (ApplicationType.WSRP_PORTLET.equals(type))
{
- return content.getId().toString();
+ return (Class<T>)org.gatein.api.content.Application.class;
}
else
{
- throw new IllegalArgumentException("Unknown Content type: " + type);
+ throw new IllegalArgumentException("Unknown ApplicationType: " + type);
}
}
@@ -154,27 +200,49 @@
public void removeContent(String managedContentName)
{
- managed.remove(managedContentName);
+ Application application = getApplication(managedContentName);
+
+ gateIn.begin();
+ try
+ {
+ gateIn.getRegistryService().remove(application);
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException(e);
+ }
+ finally
+ {
+ gateIn.end();
+ }
}
- public <T extends Content> ManagedContent<T> getManagedContent(String name)
+ public ManagedContent getManagedContent(String name)
{
- return managed.get(name);
+ Application application = getApplication(name);
+
+ if (application == null)
+ {
+ return null;
+ }
+
+ Content content = registry.get(getContentIdFrom(application));
+ return new ManagedContentImpl(content, this);
}
public IterableCollection<String> getKnownManagedContentNames()
{
- Set<String> strings = managed.keySet();
- return new AdaptedIterableCollection<String, String>(strings.size(), strings.iterator())
+ IterableCollection<ManagedContent> managedContents = getManagedContents();
+ return new AdaptedIterableCollection<ManagedContent, String>(managedContents.size(), managedContents.iterator())
{
- public String adapt(String old)
+ public boolean contains(String s)
{
- return old;
+ return getApplication(s) != null;
}
- public boolean contains(String s)
+ public String adapt(ManagedContent old)
{
- return managed.containsKey(s);
+ return old.getName();
}
};
}
@@ -201,10 +269,23 @@
void renameManagedContent(String oldName, String newName)
{
- ManagedContent removed = managed.remove(oldName);
- if (removed != null)
+ Application application = getApplication(oldName);
+ if (application != null)
{
- managed.put(newName, removed);
+ application.setApplicationName(newName); // todo: correct?
+ try
+ {
+ gateIn.begin();
+ gateIn.getRegistryService().save(category, application);
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException(e);
+ }
+ finally
+ {
+ gateIn.end();
+ }
}
}
}
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java 2011-07-23 21:39:24 UTC (rev 6923)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java 2011-07-24 21:06:59 UTC (rev 6924)
@@ -36,6 +36,7 @@
import org.gatein.api.util.IterableIdentifiableCollection;
import org.gatein.api.util.Query;
import org.gatein.portal.api.impl.GateInImpl;
+import org.gatein.portal.api.impl.portal.PortalImpl;
import org.gatein.portal.api.impl.util.AdaptedIterableCollection;
import org.gatein.portal.api.impl.util.AdaptedIterableIdentifiableCollection;
@@ -45,10 +46,12 @@
public class ContentRegistryImpl implements ContentRegistry
{
private final GateInImpl gateIn;
+ private final PortalImpl portal;
- public ContentRegistryImpl(GateInImpl gateIn)
+ public ContentRegistryImpl(GateInImpl gateIn, PortalImpl portal)
{
this.gateIn = gateIn;
+ this.portal = portal;
}
public Category getOrCreateCategory(String name)
@@ -100,7 +103,7 @@
{
public Category adapt(ApplicationCategory old)
{
- return new CategoryImpl(old, gateIn);
+ return new CategoryImpl(old, ContentRegistryImpl.this, gateIn);
}
public boolean contains(Id<Category> t)
@@ -140,7 +143,7 @@
}
}
- return new CategoryImpl(applicationCategory, gateIn);
+ return new CategoryImpl(applicationCategory, this, gateIn);
}
catch (Exception e)
{
@@ -178,7 +181,12 @@
try
{
gateIn.begin();
- result = new ApplicationImpl(gateIn.getRegistryService().getApplication(id.toString()), gateIn);
+ org.exoplatform.application.registry.Application application = gateIn.getRegistryService().getApplication(id.toString());
+ if (application == null)
+ {
+ return null;
+ }
+ result = new ApplicationImpl(application, gateIn);
}
catch (Exception e)
{
@@ -194,7 +202,12 @@
try
{
gateIn.begin();
- result = new GadgetImpl(gateIn.getGadgetService().getGadget(id.toString()), gateIn);
+ org.exoplatform.application.gadget.Gadget gadget = gateIn.getGadgetService().getGadget(id.toString());
+ if (gadget == null)
+ {
+ return null;
+ }
+ result = new GadgetImpl(gadget, gateIn);
}
catch (Exception e)
{
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/GadgetImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/GadgetImpl.java 2011-07-23 21:39:24 UTC (rev 6923)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/GadgetImpl.java 2011-07-24 21:06:59 UTC (rev 6924)
@@ -25,7 +25,6 @@
import org.exoplatform.application.gadget.Gadget;
import org.exoplatform.application.gadget.Source;
import org.gatein.api.content.Content;
-import org.gatein.api.id.Id;
import org.gatein.api.util.Type;
import org.gatein.portal.api.impl.GateInImpl;
import org.gatein.portal.api.impl.IdentifiableImpl;
@@ -39,10 +38,16 @@
public GadgetImpl(Gadget gadget, GateInImpl gateIn)
{
- super(Id.parse(GateInImpl.APPLICATION_CONTEXT, gadget.getName(), org.gatein.api.content.Gadget.class), gadget.getName(), gateIn);
+ super(gateIn.gadgetId(gadget.getName()), gadget.getName(), gateIn);
this.gadget = gadget;
}
+ @Override
+ public String toString()
+ {
+ return (isLocal() ? "Local " : "") + "Gadget '" + getName() + "' @" + getId() + " URI: " + getURI();
+ }
+
public URI getReferenceURI()
{
return URI.create(gadget.getReferenceUrl());
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ManagedContentImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ManagedContentImpl.java 2011-07-23 21:39:24 UTC (rev 6923)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ManagedContentImpl.java 2011-07-24 21:06:59 UTC (rev 6924)
@@ -61,7 +61,7 @@
@Override
public String toString()
{
- return "ManagedContent '" + name + "' =>" + content;
+ return "ManagedContent '" + getName() + "' =>" + content;
}
public Id<ManagedContent<T>> getId()
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/portal/PortalImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/portal/PortalImpl.java 2011-07-23 21:39:24 UTC (rev 6923)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/portal/PortalImpl.java 2011-07-24 21:06:59 UTC (rev 6924)
@@ -42,7 +42,7 @@
public ContentRegistry getContentRegistry()
{
- return new ContentRegistryImpl(getGateInImpl());
+ return new ContentRegistryImpl(getGateInImpl(), this);
}
public Type getType()
13 years, 5 months
gatein SVN: r6923 - portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content.
by do-not-reply@jboss.org
Author: chris.laprun(a)jboss.com
Date: 2011-07-23 17:39:24 -0400 (Sat, 23 Jul 2011)
New Revision: 6923
Modified:
portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java
Log:
- Added missing calls to GateInImpl.begin() and end().
Modified: portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java
===================================================================
--- portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java 2011-07-23 18:45:44 UTC (rev 6922)
+++ portal/branches/api/component/api-impl/src/main/java/org/gatein/portal/api/impl/content/ContentRegistryImpl.java 2011-07-23 21:39:24 UTC (rev 6923)
@@ -65,6 +65,7 @@
{
try
{
+ gateIn.begin();
final List<ApplicationCategory> categories = gateIn.getRegistryService().getApplicationCategories();
return new AdaptedIterableCollection<ApplicationCategory, String>(categories.size(), categories.iterator())
{
@@ -83,12 +84,17 @@
{
throw new RuntimeException(e);
}
+ finally
+ {
+ gateIn.end();
+ }
}
public IterableIdentifiableCollection<Category> getAllCategories()
{
try
{
+ gateIn.begin();
final List<ApplicationCategory> categories = gateIn.getRegistryService().getApplicationCategories();
return new AdaptedIterableIdentifiableCollection<ApplicationCategory, Category>(categories.size(), categories.iterator())
{
@@ -107,12 +113,17 @@
{
throw new RuntimeException(e);
}
+ finally
+ {
+ gateIn.end();
+ }
}
private Category getOrCreateCategory(String name, boolean forceCreate)
{
try
{
+ gateIn.begin();
ApplicationRegistryService registryService = gateIn.getRegistryService();
ApplicationCategory applicationCategory = registryService.getApplicationCategory(name);
if (applicationCategory == null)
@@ -135,18 +146,27 @@
{
throw new RuntimeException(e);
}
+ finally
+ {
+ gateIn.end();
+ }
}
private boolean doesCategoryExist(String name)
{
try
{
+ gateIn.begin();
return gateIn.getRegistryService().getApplicationCategory(name) != null;
}
catch (Exception e)
{
throw new RuntimeException(e);
}
+ finally
+ {
+ gateIn.end();
+ }
}
public <T extends Content> T get(Id<T> id)
@@ -157,23 +177,33 @@
{
try
{
+ gateIn.begin();
result = new ApplicationImpl(gateIn.getRegistryService().getApplication(id.toString()), gateIn);
}
catch (Exception e)
{
throw new RuntimeException(e);
}
+ finally
+ {
+ gateIn.end();
+ }
}
else if (Gadget.class.equals(type))
{
try
{
+ gateIn.begin();
result = new GadgetImpl(gateIn.getGadgetService().getGadget(id.toString()), gateIn);
}
catch (Exception e)
{
throw new RuntimeException(e);
}
+ finally
+ {
+ gateIn.end();
+ }
}
else
{
13 years, 5 months