JBoss Portal SVN: r9670 - docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: mmcallis
Date: 2008-01-31 03:15:19 -0500 (Thu, 31 Jan 2008)
New Revision: 9670
Modified:
docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml
Log:
minor corrections to content
Modified: docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml
===================================================================
--- docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml 2008-01-31 08:10:45 UTC (rev 9669)
+++ docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml 2008-01-31 08:15:19 UTC (rev 9670)
@@ -75,16 +75,12 @@
<para>Before deploying JBoss Portal, make sure you have JBoss EAP or JBoss AS installed. Customers who have access to the <ulink url="https://support.redhat.com/portal/login.html">JBoss Customer Support Portal (CSP)</ulink> should download and install JBoss EAP 4.2. Customers who do not have access to the JBoss CSP are advised to use <ulink url="http://labs.jboss.com/jbossas/downloads/">JBoss AS</ulink>. For JBoss AS installation instructions, please refer to the <ulink url="http://labs.jboss.com/jbossas/docs/index.html">JBoss AS Installation Guide</ulink>.
</para>
<warning>
+ <title>Use the JBoss EAP and JBoss AS zip file</title>
<para>
- Make sure to download the JBoss AS Zip version
- <emphasis role="bold">DO NOT ATTEMPT to deploy JBoss Portal on the installer version of JBoss
- AS!
- </emphasis>
- We are currently working on aligning the Application installer with JBoss Portal.
- </para>
+ Only use the JBoss EAP and JBoss AS zip file versions. <emphasis role="bold">DO NOT ATTEMPT to deploy JBoss Portal on the installer version of JBoss EAP or JBoss AS.</emphasis> We are currently working on aligning the Application installer with JBoss Portal.
+ </para>
</warning>
-
- </sect3>
+ </sect3>
<sect3>
<title>Database Setup</title>
<para>You will need a database for JBoss Portal to run, you can use any database
16 years, 3 months
JBoss Portal SVN: r9669 - in modules/portlet/trunk/portlet/src: test/java/org/jboss/portal/test/portlet/jsr286/tck/dispatcher and 1 other directory.
by portal-commits@lists.jboss.org
Author: bdaw
Date: 2008-01-31 03:10:45 -0500 (Thu, 31 Jan 2008)
New Revision: 9669
Added:
modules/portlet/trunk/portlet/src/test/java/org/jboss/portal/test/portlet/jsr286/tck/dispatcher/ForwardFromRenderObjectsTestCase.java
Modified:
modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/DispatchedHttpServletResponse.java
Log:
- forward Render
- HSResponse.setContentType is not implemented
Modified: modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/DispatchedHttpServletResponse.java
===================================================================
--- modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/DispatchedHttpServletResponse.java 2008-01-31 07:39:36 UTC (rev 9668)
+++ modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/DispatchedHttpServletResponse.java 2008-01-31 08:10:45 UTC (rev 9669)
@@ -90,6 +90,7 @@
public final void setContentType(String s)
{
+ //TODO: forward from render should use RenderResponse.setContentType()
}
public final void setContentLength(int i)
Added: modules/portlet/trunk/portlet/src/test/java/org/jboss/portal/test/portlet/jsr286/tck/dispatcher/ForwardFromRenderObjectsTestCase.java
===================================================================
--- modules/portlet/trunk/portlet/src/test/java/org/jboss/portal/test/portlet/jsr286/tck/dispatcher/ForwardFromRenderObjectsTestCase.java (rev 0)
+++ modules/portlet/trunk/portlet/src/test/java/org/jboss/portal/test/portlet/jsr286/tck/dispatcher/ForwardFromRenderObjectsTestCase.java 2008-01-31 08:10:45 UTC (rev 9669)
@@ -0,0 +1,290 @@
+/*
+* JBoss, a division of Red Hat
+* Copyright 2006, Red Hat Middleware, LLC, and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+
+package org.jboss.portal.test.portlet.jsr286.tck.dispatcher;
+
+import org.jboss.portal.unit.PortletTestCase;
+import org.jboss.portal.unit.PortletTestContext;
+import org.jboss.portal.unit.annotations.TestCase;
+import org.jboss.portal.unit.base.AbstractUniversalTestPortlet;
+import org.jboss.portal.unit.actions.PortletRenderTestAction;
+import org.jboss.portal.unit.actions.ServletServiceTestAction;
+import org.jboss.portal.test.portlet.framework.UTP1;
+import org.jboss.portal.test.portlet.framework.UTS1;
+import org.jboss.unit.driver.DriverResponse;
+import org.jboss.unit.driver.response.EndTestResponse;
+import org.jboss.unit.remote.driver.handler.http.response.InvokeGetResponse;
+import static org.jboss.unit.api.Assert.assertNotNull;
+import static org.jboss.unit.api.Assert.assertNull;
+import static org.jboss.unit.api.Assert.assertEquals;
+import static org.jboss.unit.api.Assert.assertTrue;
+
+import javax.portlet.Portlet;
+import javax.portlet.RenderRequest;
+import javax.portlet.RenderResponse;
+import javax.portlet.PortletException;
+import javax.portlet.PortletRequestDispatcher;
+import javax.servlet.Servlet;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.Cookie;
+import java.io.IOException;
+import java.util.Locale;
+import java.util.List;
+import java.util.LinkedList;
+import java.util.Enumeration;
+import java.util.Map;
+import java.util.Collections;
+import java.util.Iterator;
+
+/**
+ * @author <a href="mailto:boleslaw dot dawidowicz at redhat anotherdot com">Boleslaw Dawidowicz</a>
+ * @version : 0.1 $
+ */
+@TestCase
+public class ForwardFromRenderObjectsTestCase
+{
+ public ForwardFromRenderObjectsTestCase(PortletTestCase seq)
+ {
+ seq.bindAction(0, UTP1.RENDER_JOIN_POINT, new PortletRenderTestAction()
+ {
+ protected DriverResponse run(Portlet portlet, RenderRequest request, RenderResponse response, PortletTestContext context)
+ {
+ // Invoke render with header
+ InvokeGetResponse render = new InvokeGetResponse(response.createRenderURL().toString());
+ render.addHeader("myheader").addElement("render-value");
+
+ return render;
+ }
+ });
+
+ seq.bindAction(1, UTP1.RENDER_JOIN_POINT, new PortletRenderTestAction()
+ {
+ protected DriverResponse run(Portlet portlet, RenderRequest request, RenderResponse response, PortletTestContext context) throws IOException, PortletException
+ {
+ //we dispatch to servlet and assertions will be done there
+ String queryString = "?key1=k1value1&key2=k2value1";
+ PortletRequestDispatcher dispatcher = ((AbstractUniversalTestPortlet)portlet).getPortletContext().getRequestDispatcher("/universalServletA" + queryString);
+ //
+ dispatcher.forward(request, response);
+ return null;
+ }
+ });
+
+
+ seq.bindAction(1, UTS1.SERVICE_JOIN_POINT, new ServletServiceTestAction()
+ {
+ protected DriverResponse run(Servlet servlet, HttpServletRequest request, HttpServletResponse response, PortletTestContext context) throws ServletException, IOException
+ {
+ //we get this object to assert some of it's method compare wieth http request methods
+ RenderRequest portletRequest = (RenderRequest)request.getAttribute("javax.portlet.request");
+ RenderResponse portletResponse = (RenderResponse)request.getAttribute("javax.portlet.response");
+
+ assertNotNull(portletRequest);
+ assertNotNull(portletResponse);
+
+ //Part of SPEC:274 - must be set at the beggining
+ response.setContentType("text/html");
+
+
+ //SPEC:275
+ //Those should do nothing - some of the getters will be checked later
+ response.setContentLength(22);
+ response.setLocale(Locale.TRADITIONAL_CHINESE);
+ response.sendError(404,"bobo");
+ response.sendRedirect("http://www.jboss.org");
+ response.setStatus(505);
+
+
+ //SPEC:262
+ assertNull(request.getRemoteAddr());
+ assertNull(request.getRemoteHost());
+ assertNull(request.getRealPath("toto"));
+ assertNull(request.getLocalAddr());
+ assertNull(request.getLocalName());
+ assertNull(request.getRequestURL());
+
+ //SPEC:263
+ assertEquals(0, request.getRemotePort());
+ assertEquals(0, request.getLocalPort());
+
+ //SPEC:264
+ assertEquals(null, request.getPathInfo());
+ //TODO:NYI
+ //assertEquals("",request.getPathTranslated());
+ assertEquals("key1=k1value1&key2=k2value1", request.getQueryString());
+
+ assertEquals("/test-jsr286-tck-dispatcher/universalServletA",request.getRequestURI());
+ assertEquals("/universalServletA", request.getServletPath());
+
+
+ //SPEC:265
+ assertEquals(portletRequest.getScheme(), request.getScheme());
+ assertEquals(portletRequest.getServerName(), request.getServerName());
+ assertEquals(portletRequest.getServerPort(), request.getServerPort());
+ // getAttributeNames, setAttribute, getAttribute, removeAttribute
+ request.setAttribute("key1", "k1atrr1");
+ request.setAttribute("key2", "k2attr2");
+ List attrNames = new LinkedList();
+ Enumeration attrEnum = request.getAttributeNames();
+ while (attrEnum.hasMoreElements())
+ {
+ attrNames.add(attrEnum.nextElement());
+ }
+ assertNotNull(request.getAttribute("key1"));
+ assertNotNull(request.getAttribute("key2"));
+
+ assertTrue(attrNames.contains("key1"));
+ assertTrue(attrNames.contains("key2"));
+
+ request.removeAttribute("key1");
+ assertNull(request.getAttribute("key1"));
+ assertNotNull(request.getAttribute("key2"));
+
+ //getLocale, getLocales
+ assertEquals(portletRequest.getLocale(), request.getLocale());
+
+ List portletLocales = new LinkedList();
+ List servletLocales = new LinkedList();
+ Enumeration pl = portletRequest.getLocales();
+ while (pl.hasMoreElements())
+ {
+ portletLocales.add(pl.nextElement());
+ }
+ Enumeration sl = request.getLocales();
+ while (sl.hasMoreElements())
+ {
+ servletLocales.add(sl.nextElement());
+ }
+
+ assertTrue(portletLocales.equals(servletLocales));
+
+ assertEquals(portletRequest.isSecure(), request.isSecure());
+ assertEquals(portletRequest.getAuthType(), request.getAuthType());
+ assertEquals(portletRequest.getContextPath(), request.getContextPath());
+ assertEquals(portletRequest.getRemoteUser(), request.getRemoteUser());
+ assertEquals(portletRequest.getUserPrincipal(), request.getUserPrincipal());
+ assertEquals(portletRequest.getRequestedSessionId(), request.getRequestedSessionId());
+ assertEquals(portletRequest.isRequestedSessionIdValid(), request.isRequestedSessionIdValid());
+
+ assertEquals(portletRequest.getCookies(), request.getCookies());
+
+ //SPEC:266
+ //in this assertions we use parameters passed in query string of dispatcher
+ List paramNames = new LinkedList();
+ Enumeration paramEnum = request.getParameterNames();
+ while (paramEnum.hasMoreElements())
+ {
+ paramNames.add(paramEnum.nextElement());
+ }
+ assertTrue(paramNames.contains("key1"));
+ assertTrue(paramNames.contains("key2"));
+
+ assertEquals("k1value1", request.getParameter("key1"));
+ assertEquals(new String[]{"k1value1"}, request.getParameterValues("key1"));
+
+ Map paramNamesMap = request.getParameterMap();
+ assertTrue(paramNamesMap.containsKey("key1"));
+ assertTrue(paramNamesMap.containsKey("key2"));
+
+ //SPEC:267
+ request.setCharacterEncoding("utf8");
+ assertNull(request.getCharacterEncoding());
+ assertNull(request.getContentType());
+ assertNull(request.getInputStream());
+ assertNull(request.getReader());
+
+ //SPEC:268
+ assertEquals(0, request.getContentLength());
+
+ //SPEC:269
+ assertEquals(portletRequest.getProperty("myheader"), request.getHeader("myheader"));
+ List rheaders = Collections.list(request.getHeaders("myheader"));
+ List pheaders = Collections.list(portletRequest.getProperties("myheader"));
+
+ for (Iterator iterator = pheaders.iterator(); iterator.hasNext();)
+ {
+ Object o = iterator.next();
+ assertTrue(rheaders.contains(o));
+ }
+
+ List headerNames = Collections.list(request.getHeaderNames());
+ Enumeration propertyNamesE = portletRequest.getPropertyNames();
+ while (propertyNamesE.hasMoreElements())
+ {
+ Object o = propertyNamesE.nextElement();
+ assertTrue(headerNames.contains(o));
+ }
+ assertTrue(headerNames.contains("myheader"));
+
+ //TODO: seems to not be implemented
+ //assertEquals("?", request.getDateHeader("myheader"));
+ //assertEquals("?", request.getIntHeader("myheader"));
+
+ //SPEC:270
+ //TODO:
+ //TODO: The following methods of the HttpServletRequest must provide the
+ //TODO: functionality defined by the Servlet Specification: getRequestDispatcher, isUserInRole, getSession,
+ //TODO: isRequestedSessionIdFromCookie, isRequestedSessionIdFromURL and isRequestedSessionIdFromUrl.
+
+ //SPEC:271
+ assertEquals("GET", request.getMethod());
+
+ //SPEC:272
+ assertEquals("HTTP/1.1", request.getProtocol());
+
+ //SPEC:273
+ assertNull(response.encodeRedirectURL("lolo"));
+ assertNull(response.encodeRedirectUrl("blah"));
+
+ //SPEC:274
+ assertEquals(portletResponse.getCharacterEncoding(), response.getCharacterEncoding());
+ //TODO: setBufferSize, flushBuffer, resetBuffer, reset
+ assertEquals(portletResponse.getBufferSize(), response.getBufferSize());
+ assertEquals(portletResponse.getLocale(), response.getLocale());
+ assertEquals(portletResponse.isCommitted(), response.isCommitted());
+ //TODO: How to check if its the same behaviour as in PR? Its not the same object.
+ //and btw. if line below is failing this means that HSResponse.setContentType is not impl ok
+ assertNotNull(response.getOutputStream());
+ //Cannot invoke both writer and outputstream in single request
+ //assertEquals(portletResponse.getWriter(), response.getWriter());
+ assertEquals(portletResponse.encodeURL("http://www.jboss.com/"), response.encodeURL("http://www.jboss.com/"));
+ assertEquals(portletResponse.encodeURL("http://www.jboss.com/"), response.encodeUrl("http://www.jboss.com/"));
+
+
+ //SPEC:276
+ assertEquals(false, response.containsHeader("blah"));
+
+ //SPEC:277
+ //TODO: How this?
+ //TODO: The following methods of the HttpServletResponse must be based on the properties
+ //TODO: provided by the setProperties/addProperties method of the RenderResponse
+ //TODO: interface: addCookie, setDateHeader, addDateHeader, setHeader, addHeader,
+ //TODO: setIntHeader, addIntHeader.
+
+
+ return new EndTestResponse();
+ }
+ });
+ }
+}
16 years, 3 months
JBoss Portal SVN: r9668 - docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: mmcallis
Date: 2008-01-31 02:39:36 -0500 (Thu, 31 Jan 2008)
New Revision: 9668
Modified:
docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml
Log:
rephrasing installation section, binary download
Modified: docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml
===================================================================
--- docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml 2008-01-31 06:23:15 UTC (rev 9667)
+++ docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml 2008-01-31 07:39:36 UTC (rev 9668)
@@ -33,7 +33,7 @@
<note>
<title>SQL Errors</title>
<para>
- Tables are automatically created the first time JBoss Portal starts. When you deploy JBoss Portal for the first time, Portal checks for the existence of the initial tables, which have not been created yet. This causes errors such as the following, which can safely be ignored:
+ Tables are automatically created the first time JBoss Portal starts. When deployed for the first time, JBoss Portal checks for the existence of the initial tables, which have not been created yet. This causes errors such as the following, which can safely be ignored:
</para>
<para>
<programlisting>
@@ -48,49 +48,42 @@
</note>
</sect1>
<sect1 id="install_binary">
- <title>Installing from Binary Download</title>
- <para>The binary download package typically consists of the
- <filename>jboss-portal.sar</filename>
- , documentation (which you are already reading), and a set of preconfigured datasource descriptors that allow
- JBoss Portal to communicate with a database.
- </para>
- <para>This installation method is preferred by those who already have JBoss Application Server installed or those we need to install
- the version ready for clustering.</para>
+ <title>Installing the Binary Download</title>
+ <para>The binary package typically consists of the
+ <filename>jboss-portal.sar</filename> directory, documentation such as the JBoss Portal User Guide and the JBoss Portal Reference Guide, and a set of pre-configured Datasource descriptors that allow
+ JBoss Portal to communicate with an external database. This installation method is recommended for users who already have JBoss EAP or JBoss AS installed, or those who need to install JBoss Portal in a clustered environment.</para>
<sect2>
- <title>Setting up your environment</title>
+ <title>Setting up your Environment</title>
<sect3 id="install_binarydownload">
<title>Getting the Binary</title>
<para>
- The binary download is available from our
- <ulink url="http://labs.jboss.com/portal/jbossportal/download/index.html">download page</ulink>
- .
- </para>
- <para>
- Once downloaded and extracted, the folder hierarchy should look like this:
+ The binary download is available from the <ulink url="http://labs.jboss.com/portal/jbossportal/download/index.html">JBoss Portal Downloads</ulink> page. Look for the <computeroutput>JBoss Portal Binary</computeroutput> package. Once the binary zip file is downloaded and extracted, the folder hierarchy will look like the following:
+ </para>
+ <para>
<mediaobject>
<imageobject>
<imagedata align="center" valign="middle" fileref="images/setup/package.png"/>
</imageobject>
</mediaobject>
- We will be using files contained in this download in the further sections, so please download and extract
- it first.
+ </para>
+ <para>
+ File contained in this download will be used in later sections. Download and extract the JBoss Portal binary zip file before proceeding.
</para>
</sect3>
<sect3>
- <title>Application Server Setup</title>
- <para>Of course you will need to install JBoss Application Server prior to installing JBoss
- Portal, if you didn't do so yet, please install JBoss EAP 4.2 or JBoss AS 4.2.2. If you have a
- subscription contract with Red Hat, you can have access to the EAP
- version from the <ulink url="http://network.jboss.com/">support portal</ulink>.
- For the other versions you can get them
- <ulink url="http://labs.jboss.com/portal/jbossas/download/index.html">here</ulink> .
- <warning>Make sure to download the JBoss AS Zip version.
+ <title>JBoss EAP and JBoss AS Setup</title>
+ <para>Before deploying JBoss Portal, make sure you have JBoss EAP or JBoss AS installed. Customers who have access to the <ulink url="https://support.redhat.com/portal/login.html">JBoss Customer Support Portal (CSP)</ulink> should download and install JBoss EAP 4.2. Customers who do not have access to the JBoss CSP are advised to use <ulink url="http://labs.jboss.com/jbossas/downloads/">JBoss AS</ulink>. For JBoss AS installation instructions, please refer to the <ulink url="http://labs.jboss.com/jbossas/docs/index.html">JBoss AS Installation Guide</ulink>.
+ </para>
+ <warning>
+ <para>
+ Make sure to download the JBoss AS Zip version
<emphasis role="bold">DO NOT ATTEMPT to deploy JBoss Portal on the installer version of JBoss
AS!
</emphasis>
We are currently working on aligning the Application installer with JBoss Portal.
+ </para>
</warning>
- </para>
+
</sect3>
<sect3>
<title>Database Setup</title>
16 years, 3 months
JBoss Portal SVN: r9667 - in branches/JBoss_Portal_Branch_2_6/core/src/resources: portal-server-war/WEB-INF and 1 other directory.
by portal-commits@lists.jboss.org
Author: sohil.shah(a)jboss.com
Date: 2008-01-31 01:23:15 -0500 (Thu, 31 Jan 2008)
New Revision: 9667
Modified:
branches/JBoss_Portal_Branch_2_6/core/src/resources/portal-core-war/WEB-INF/jsp/header/header.jsp
branches/JBoss_Portal_Branch_2_6/core/src/resources/portal-server-war/WEB-INF/context.xml
Log:
JBPORTAL-1848 - Portal CAS integration does not invalidate the CAS token
Modified: branches/JBoss_Portal_Branch_2_6/core/src/resources/portal-core-war/WEB-INF/jsp/header/header.jsp
===================================================================
--- branches/JBoss_Portal_Branch_2_6/core/src/resources/portal-core-war/WEB-INF/jsp/header/header.jsp 2008-01-31 06:19:23 UTC (rev 9666)
+++ branches/JBoss_Portal_Branch_2_6/core/src/resources/portal-core-war/WEB-INF/jsp/header/header.jsp 2008-01-31 06:23:15 UTC (rev 9667)
@@ -16,6 +16,8 @@
if (user == null)
{
%>
+
+<%if(request.getAttribute("ssoEnabled") == null){%>
<script type="text/javascript">
if (typeof isModalLoaded != 'undefined'){
document.write('<a href=\"#\" onclick=\"alertModal(\'login-modal\',\'login-modal-msg\');return false;\">Login</a>');
@@ -30,6 +32,9 @@
<noscript>
<a href="<%= loginURL %>">Login</a>
</noscript>
+<%}else{%>
+<a href="<%= loginURL %>">Login</a>
+<%}%>
<%
Modified: branches/JBoss_Portal_Branch_2_6/core/src/resources/portal-server-war/WEB-INF/context.xml
===================================================================
--- branches/JBoss_Portal_Branch_2_6/core/src/resources/portal-server-war/WEB-INF/context.xml 2008-01-31 06:19:23 UTC (rev 9666)
+++ branches/JBoss_Portal_Branch_2_6/core/src/resources/portal-server-war/WEB-INF/context.xml 2008-01-31 06:23:15 UTC (rev 9667)
@@ -10,6 +10,7 @@
<!--
<Valve className="org.jboss.portal.identity.sso.cas.CASAuthenticationValve"
casLogin="https://localhost/cas/login"
+ casLogout="https://localhost/cas/logout"
casValidate="https://localhost/cas/serviceValidate"
casServerName="localhost"
authType="FORM"
16 years, 3 months
JBoss Portal SVN: r9666 - docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: mmcallis
Date: 2008-01-31 01:19:23 -0500 (Thu, 31 Jan 2008)
New Revision: 9666
Modified:
docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml
Log:
updating ordered list on installation section
moving hyperlink so it is not at the end of a sentence,
period may confuse people...
Modified: docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml
===================================================================
--- docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml 2008-01-31 06:06:14 UTC (rev 9665)
+++ docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml 2008-01-31 06:19:23 UTC (rev 9666)
@@ -6,12 +6,12 @@
</para>
<sect1 id="install_bundle">
<title>JBoss Portal and JBoss AS Bundle</title>
- <para>This is the easiest and fastest way to get JBoss Portal installed and running. The JBoss AS and JBoss Portal bundle contains JBoss AS, JBoss Portal, and the embedded Hypersonic SQL database. To install the JBoss Portal and JBoss AS bundle:
+ <para>This is the easiest and fastest way to get JBoss Portal installed and running. The JBoss Portal and JBoss AS bundle contains JBoss AS, JBoss Portal, and the embedded Hypersonic SQL database. To install the JBoss Portal and JBoss AS bundle:
</para>
<orderedlist>
<listitem>
<para>
- <emphasis role="bold">Get the Bundle:</emphasis> the bundle is available from the <ulink url="http://labs.jboss.com/portal/jbossportal/download/index.html">JBoss Portal Downloads</ulink> page. Bundles use the <computeroutput>JBoss Portal + JBoss AS</computeroutput> naming convention.
+ <emphasis role="bold">Get the bundle:</emphasis> the bundle is available from the <ulink url="http://labs.jboss.com/portal/jbossportal/download/index.html">JBoss Portal Downloads</ulink> page. Bundles use the <computeroutput>JBoss Portal + JBoss AS</computeroutput> naming convention.
</para>
</listitem>
<listitem>
@@ -21,32 +21,32 @@
</listitem>
<listitem>
<para>
- <emphasis role="bold">Start the Server:</emphasis> change into the <filename>$JBOSS_HOME/bin</filename> directory. On Microsoft Windows, execute <command>run.bat</command>. On Linux, run the <command>./run.sh</command> command.
+ <emphasis role="bold">Start the server:</emphasis> change into the <filename><replaceable>JBOSS_INSTALLATION_DIRECTORY</replaceable>/bin</filename> directory. On Microsoft Windows, execute <command>run.bat</command>. On Linux, run the <command>./run.sh</command> command.
</para>
</listitem>
<listitem>
<para>
- <emphasis role="bold">Log in to Portal:</emphasis> use a Web browser to navigate to <computeroutput>http://localhost:8080/portal</computeroutput>. The JBoss Portal home page should appear. Log in using one of the two default accounts: username <emphasis>user</emphasis>, password <emphasis>user</emphasis>, or username <emphasis>admin</emphasis>, password <emphasis>admin</emphasis>.
+ <emphasis role="bold">Log in to JBoss Portal:</emphasis> using a Web browser, navigate to <computeroutput>http://localhost:8080/portal</computeroutput> to open the JBoss Portal homepage. Log in using one of the two default accounts: username <emphasis>user</emphasis>, password <emphasis>user</emphasis>, or username <emphasis>admin</emphasis>, password <emphasis>admin</emphasis>.
</para>
</listitem>
</orderedlist>
<note>
- <para>During the first boot (ever), SQL errors in the log, like the one below, can be safely ignored. They
- are thrown when the portal checks for the existence of the initial tables, before it creates them for
- you.
- <programlisting><![CDATA[16:43:39,234 WARN [JDBCExceptionReporter] SQL Error: -22, SQLState: S0002
-16:43:39,234 ERROR [JDBCExceptionReporter] Table not found in statement ...]]></programlisting>
- </para>
- </note>
- <para>
- Point your browser to
- <emphasis>http://localhost:8080/portal</emphasis>
- , and you should see the Portal HomePage. You can now login using one of the two default accounts:
- <emphasis>user/user</emphasis>
- or
- <emphasis>admin/admin</emphasis>.
- </para>
- </sect1>
+ <title>SQL Errors</title>
+ <para>
+ Tables are automatically created the first time JBoss Portal starts. When you deploy JBoss Portal for the first time, Portal checks for the existence of the initial tables, which have not been created yet. This causes errors such as the following, which can safely be ignored:
+ </para>
+ <para>
+ <programlisting>
+WARN [JDBCExceptionReporter] SQL Error: -22, SQLState: S0002
+ERROR [JDBCExceptionReporter] Table not found in statement ...
+WARN [JDBCExceptionReporter] SQL Error: 1146, SQLState: 42S02
+ERROR [JDBCExceptionReporter] Table 'jbossportal.jbp_cms_repositoryentry' doesn't exist
+WARN [JDBCExceptionReporter] SQL Error: 1146, SQLState: 42S02
+ERROR [JDBCExceptionReporter] Table 'jbossportal.jbp_cms_version_refs' doesn't exist
+ </programlisting>
+ </para>
+ </note>
+ </sect1>
<sect1 id="install_binary">
<title>Installing from Binary Download</title>
<para>The binary download package typically consists of the
16 years, 3 months
JBoss Portal SVN: r9665 - modules/identity/trunk/sso/src/main/java/org/jboss/portal/identity/sso/cas.
by portal-commits@lists.jboss.org
Author: sohil.shah(a)jboss.com
Date: 2008-01-31 01:06:14 -0500 (Thu, 31 Jan 2008)
New Revision: 9665
Modified:
modules/identity/trunk/sso/src/main/java/org/jboss/portal/identity/sso/cas/CASAuthenticationValve.java
Log:
JBPORTAL-1848 - Portal CAS integration does not invalidate the CAS token
Modified: modules/identity/trunk/sso/src/main/java/org/jboss/portal/identity/sso/cas/CASAuthenticationValve.java
===================================================================
--- modules/identity/trunk/sso/src/main/java/org/jboss/portal/identity/sso/cas/CASAuthenticationValve.java 2008-01-31 05:38:21 UTC (rev 9664)
+++ modules/identity/trunk/sso/src/main/java/org/jboss/portal/identity/sso/cas/CASAuthenticationValve.java 2008-01-31 06:06:14 UTC (rev 9665)
@@ -303,7 +303,8 @@
ServletException
{
HttpServletRequest httpRequest = (HttpServletRequest) request;
- HttpSession session = httpRequest.getSession();
+ HttpSession session = httpRequest.getSession();
+ request.setAttribute("ssoEnabled", "true");
String requestURI = request.getRequestURI();
if (isSecuredURI(requestURI)
@@ -359,8 +360,7 @@
//Perform a logout on the CAS SSO Session
if(request.getAttribute("org.jboss.portal.logout") != null)
- {
- System.out.println("Performing signout........");
+ {
response.sendRedirect(this.casLogout);
}
}
16 years, 3 months
JBoss Portal SVN: r9664 - in modules/identity/trunk: identity and 3 other directories.
by portal-commits@lists.jboss.org
Author: sohil.shah(a)jboss.com
Date: 2008-01-31 00:38:21 -0500 (Thu, 31 Jan 2008)
New Revision: 9664
Added:
modules/identity/trunk/sso/src/etc/cas/jboss-service.xml
Modified:
modules/identity/trunk/
modules/identity/trunk/identity/
modules/identity/trunk/sso/
modules/identity/trunk/sso/build.xml
modules/identity/trunk/sso/pom.xml
modules/identity/trunk/sso/src/etc/cas/context.xml
modules/identity/trunk/sso/src/main/java/org/jboss/portal/identity/sso/cas/CASAuthenticationValve.java
Log:
JBPORTAL-1848 - Portal CAS integration does not invalidate the CAS token
Property changes on: modules/identity/trunk
___________________________________________________________________
Name: svn:ignore
- thirdparty
bin
+ thirdparty
bin
.classpath
.project
Property changes on: modules/identity/trunk/identity
___________________________________________________________________
Name: svn:ignore
- output
+ output
target
test.properties
test.script
Property changes on: modules/identity/trunk/sso
___________________________________________________________________
Name: svn:ignore
- output
+ output
target
Modified: modules/identity/trunk/sso/build.xml
===================================================================
--- modules/identity/trunk/sso/build.xml 2008-01-31 05:14:15 UTC (rev 9663)
+++ modules/identity/trunk/sso/build.xml 2008-01-31 05:38:21 UTC (rev 9664)
@@ -21,277 +21,13 @@
~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ~
~ 02110-1301 USA, or see the FSF site: http://www.fsf.org. ~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
-
-<!DOCTYPE project [
- <!ENTITY libraries SYSTEM "../thirdparty/libraries.ent">
- <!ENTITY buildmagic SYSTEM "../tools/etc/buildfragments/buildmagic.ent">
- <!ENTITY tools SYSTEM "../tools/etc/buildfragments/tools.ent">
- <!ENTITY modules SYSTEM "../tools/etc/buildfragments/modules.ent">
- <!ENTITY defaults SYSTEM "../tools/etc/buildfragments/defaults.ent">
- <!ENTITY targets SYSTEM "../tools/etc/buildfragments/targets.ent">
- ]>
-
-<!-- $Id: build.xml 8043 2007-08-23 00:13:18Z bdaw $ -->
-
-<!--+======================================================================+-->
-<!--| JBoss Portal (The OpenSource Portal) Build File |-->
-<!--| |-->
-<!--| Distributable under LGPL license. |-->
-<!--| See terms of license at http://www.gnu.org. |-->
-<!--| |-->
-<!--| This file has been designed to work with the 'tools' module and |-->
-<!--| Buildmagic extentions. |-->
-<!--+======================================================================+-->
-
-<project default="main" name="JBoss Portal">
-
- <!--+====================================================================+-->
- <!--| Setup |-->
- <!--| |-->
- <!--| Include the common build elements. |-->
- <!--| |-->
- <!--| This defines several different targets, properties and paths. |-->
- <!--| It also sets up the basic extention tasks amoung other things. |-->
- <!--+====================================================================+-->
-
- &buildmagic;
- &modules;
- &defaults;
- &tools;
- &targets;
-
-
- <!-- ================================================================== -->
- <!-- Initialization -->
- <!-- ================================================================== -->
-
- <!--
- | Initialize the build system. Must depend on '_buildmagic:init'.
- | Other targets should depend on 'init' or things will mysteriously fail.
- -->
-
- <target name="init" unless="init.disable" depends="_buildmagic:init">
+<project default="help" name="JBoss Portal">
+ <target name="help">
</target>
-
- <!--+====================================================================+-->
- <!--| Configuration |-->
- <!--| |-->
- <!--| This target is invoked by the Buildmagic initialization logic |-->
- <!--| and should contain module specific configuration elements. |-->
- <!--+====================================================================+-->
-
- <target name="configure" unless="configure.disable">
-
- <!-- Configure some properties -->
- <property name="jboss-junit-configuration" value=""/>
- <property name="junit.formatter.usefile" value="true"/>
-
- <!-- Configure thirdparty libraries -->
- &libraries;
- <path id="library.classpath">
- <path refid="jboss.portal/modules/common.classpath"/>
- <path refid="jboss.portal/modules/test.classpath"/>
- <path refid="sun.servlet.classpath"/>
- <path refid="jboss.microcontainer.classpath"/>
- <path refid="jboss.jbossxb.classpath"/>
- <path refid="apache.xerces.classpath"/>
- <path refid="jbossas/core.libs.classpath"/>
-
-
- <path refid="jboss/common.logging.spi.classpath"/>
- <path refid="jboss/jboss.jacc.api.classpath"/>
-
- <path refid="oswego.concurrent.classpath"/>
- <path refid="hibernate.hibernate.classpath"/>
- <path refid="apache.log4j.classpath"/>
- <path refid="apache.httpclient.classpath"/>
- <path refid="junit.junit.classpath"/>
- <path refid="apache.tomcat.classpath"/>
- <path refid="josso.josso.classpath"/>
- <path refid="opensso.opensso.classpath"/>
- <path refid="cas.cas.classpath"/>
- <path refid="spring.spring.classpath"/>
-
- <pathelement location="${project.tools}/lib/ant.jar"/>
- <!--<path refid="sun.opends.classpath"/>-->
- </path>
-
- <path id="javac.classpath">
- <pathelement location="${build.classes}"/>
- </path>
-
- <!-- Configure modules -->
- <call target="configure-modules"/>
- <path id="dependentmodule.classpath">
- <path refid="jboss.portal-identity.classpath"/>
- </path>
-
- <!--+=======================================+-->
- <!--| Override any default properties here. |-->
- <!--+=======================================+-->
-
- <!-- Configure defaults & build tools -->
- <call target="configure-defaults"/>
- <call target="configure-tools"/>
-
- <!--+=======================================+-->
- <!--| Define module specific elements here. |-->
- <!--+=======================================+-->
- <property name="javadoc.private" value="true"/>
- <property name="javadoc.protected" value="false"/>
-
- </target>
-
- <!--+====================================================================+-->
- <!--| Compile |-->
- <!--| |-->
- <!--| This target should depend on other compile-* targets for each |-->
- <!--| different type of compile that needs to be performed, short of |-->
- <!--| documentation compiles. |-->
- <!--+====================================================================+-->
-
- <target name="compile"
- description="Compile all source files."
- depends="generate-parsers,
- compile-classes,
- _default:compile-etc,
- _default:compile-resources">
- <!-- Add module specific elements here. -->
- </target>
-
-
- <target name="compile-classes" depends="_buildmagic:init">
- <mkdir dir="${build.classes}"/>
-
- <!-- Hack, required to avoid duplicate javac targets -->
- <mkdir dir="${build.gen.classes}"/>
-
- <!-- Remove classes which depend on changed files, so they will rebuild. -->
- <depend srcdir="${source.java}:${build.gen.classes}"
- destdir="${build.classes}"
- dump="${javac.depend.dump}"
- closure="${javac.depend.closure}">
- <include name="${javac.includes}"/>
- <exclude name="${javac.excludes}"/>
- </depend>
-
- <javac destdir="${build.classes}"
- optimize="${javac.optimize}"
- target="${javac.target}"
- debug="${javac.debug}"
- source="${javac.source}"
- depend="${javac.depend}"
- verbose="${javac.verbose}"
- deprecation="${javac.deprecation}"
- includeAntRuntime="${javac.include.ant.runtime}"
- includeJavaRuntime="${javac.include.java.runtime}"
- failonerror="${javac.fail.onerror}">
- <src path="${source.java}:${build.gen.classes}"/>
- <classpath refid="javac.classpath"/>
-
-
- <include name="${javac.includes}"/>
- <exclude name="${javac.excludes}"/>
- </javac>
- </target>
-
-
- <target name="generate-parsers" depends="init">
- </target>
-
- <!--+====================================================================+-->
- <!--| Generate Output |-->
- <!--| |-->
- <!--| Generates the target output for this module. Target output is |-->
- <!--| the output which is ment to be released or used by external |-->
- <!--| modules. |-->
- <!--+====================================================================+-->
-
- <target name="output"
- description="Generate all target output."
- depends="compile">
- <mkdir dir="${build.lib}"/>
- <jar jarfile="${build.lib}/portal-identity-sso-lib.jar" manifest="${build.etc}/portal-identity-sso-lib-jar.mf">
- <fileset dir="${build.classes}" excludes="org/jboss/portal/test/**"/>
- </jar>
-
- <!-- CAS archive creation -->
- <copy todir="${build.resources}/portal-cas-sso.sar" overwrite="true">
- <fileset dir="${build.resources}/portal-cas-sso-sar"/>
- </copy>
- <copy todir="${build.resources}/portal-cas-sso.sar/lib" overwrite="true">
- <fileset dir="${cas.cas.lib}" includes="casclient.jar"/>
- <fileset dir="${build.lib}" includes="portal-identity-sso-lib.jar"/>
- </copy>
- <jar jarfile="${build.lib}/portal-cas.sar" manifest="${build.etc}/portal-identity-sso-lib-jar.mf">
- <fileset dir="${build.resources}/portal-cas-sso.sar"/>
- </jar>
-
- <copy todir="${build.resources}/portal-caslenient-sso.sar/META-INF" overwrite="true">
- <fileset dir="${build.resources}/portal-cas-sso-sar/META-INF" includes="jboss-service.xml"/>
- </copy>
- <copy todir="${build.resources}/portal-caslenient-sso.sar/lib" overwrite="true">
- <fileset dir="${cas.cas.lib}" includes="casclient-lenient.jar"/>
- <fileset dir="${build.lib}" includes="portal-identity-sso-lib.jar"/>
- </copy>
- <jar jarfile="${build.lib}/portal-cas-lenient.sar" manifest="${build.etc}/portal-identity-sso-lib-jar.mf">
- <fileset dir="${build.resources}/portal-caslenient-sso.sar"/>
- </jar>
-
- <!-- JOSSO archive creation -->
- <copy todir="${build.resources}/portal-josso-sso.sar" overwrite="true">
- <fileset dir="${build.resources}/portal-josso-sso-sar"/>
- </copy>
- <copy todir="${build.resources}/portal-josso-sso.sar/lib" overwrite="true">
- <fileset dir="${build.lib}" includes="portal-identity-sso-lib.jar"/>
- </copy>
- <jar jarfile="${build.lib}/portal-josso.sar" manifest="${build.etc}/portal-identity-sso-lib-jar.mf">
- <fileset dir="${build.resources}/portal-josso-sso.sar"/>
- </jar>
- </target>
-
- <!-- ================================================================== -->
- <!-- Cleaning -->
- <!-- ================================================================== -->
-
- <!-- Clean up all build output -->
- <target name="clean" depends="_default:clean">
- <!-- Add module specific elements here. -->
- </target>
-
- <!--+====================================================================+-->
- <!--| Documents |-->
- <!--| |-->
- <!--| Generate all documentation for this module. |-->
- <!--+====================================================================+-->
-
- <target name="docs" depends="_default:docs">
- <!-- Add module specific elements here. -->
- </target>
-
- <!-- ================================================================== -->
- <!-- Misc. -->
- <!-- ================================================================== -->
-
- <target name="main" depends="most"/>
- <target name="all" depends="_default:all"/>
- <target name="most" depends="_default:most"/>
- <!--
- <target name="help" depends="_default:help"/>
- -->
- <target name="help">
- <echo>Clean Build = ant clean main</echo>
- <echo>Deploy the CAS Integration = ant deploy-cas</echo>
- <echo>Deploy the CAS Integration (Lenient Version) = ant deploy-cas-lenient</echo>
- <echo>Deploy the JOSSO Integration = ant deploy-josso</echo>
- <echo>Run the test suite = ant tests</echo>
- <echo>Run the test suite and produce a report = ant tests reports</echo>
- </target>
-
+
<!-- ================================================================== -->
<!-- Deployment. -->
- <!-- ================================================================== -->
-
+ <!-- ================================================================== -->
<!--
Deploying the CAS SSO Framework integration
@@ -300,52 +36,38 @@
It also deploys any custom configuration/dependencies into the CAS war file which is the
CAS Authentication Server
+
+ Note: The CAS engine does not accept self-signed SSL certificates. This requirement
+ is fine for production use where a production level SSL certificate is available.
+ However, for testing purposes, this can get a little annoying. Hence, if you are having this issue,
+ you can use casclient-lenient.jar instead. The casclient-lenient.jar can be downloaded from
+ http://repository.jboss.com/cas/3.0.7/lib/casclient-lenient.jar
-->
- <target name="deploy-cas" depends="output">
- <require file="${jboss.home}/server/${portal.deploy.dir}"/>
- <delete file="${jboss.home}/server/${portal.deploy.dir}/portal-cas-lenient.sar"/>
-
- <!-- portal-cas-sso sar file setup -->
- <copy todir="${jboss.home}/server/${portal.deploy.dir}" overwrite="true">
- <fileset dir="${build.lib}" includes="portal-cas.sar"/>
- </copy>
-
+ <target name="install-cas">
<!-- jboss portal integration with the CAS Authentication server -->
- <copy todir="${jboss.home}/server/${portal.deploy.dir}/cas.war/WEB-INF/lib" overwrite="true">
- <fileset dir="${build.lib}" includes="portal-identity-sso-lib.jar"/>
+ <copy tofile="${JBOSS_HOME}/server/${cas.deploy.dir}/cas.war/WEB-INF/lib/portal-identity-sso-lib.jar" overwrite="true">
+ <fileset dir="target" includes="identity-sso-*-SNAPSHOT.jar"/>
</copy>
- <copy todir="${jboss.home}/server/${portal.deploy.dir}/cas.war/WEB-INF" overwrite="true">
- <fileset dir="${build.etc}/cas" includes="deployerConfigContext.xml"/>
+ <copy todir="${JBOSS_HOME}/server/${cas.deploy.dir}/cas.war/WEB-INF" overwrite="true">
+ <fileset dir="src/etc/cas" includes="deployerConfigContext.xml"/>
</copy>
<!-- core jboss portal changes -->
- <copy todir="${jboss.home}/server/${portal.deploy.dir}/jboss-portal.sar/portal-server.war/WEB-INF" overwrite="true">
- <fileset dir="${build.etc}/cas" includes="context.xml"/>
- </copy>
+ <copy todir="${JBOSS_HOME}/server/${cas.deploy.dir}/jboss-portal.sar/portal-server.war/WEB-INF" overwrite="true">
+ <fileset dir="src/etc/cas" includes="context.xml"/>
+ </copy>
+ <!-- jboss-service.xml override -->
+ <copy todir="${JBOSS_HOME}/server/${cas.deploy.dir}/jboss-portal.sar/META-INF" overwrite="true">
+ <fileset dir="src/etc/cas" includes="jboss-service.xml"/>
+ </copy>
+ <!-- add cas-client to jboss portal -->
+ <copy todir="${JBOSS_HOME}/server/${cas.deploy.dir}/jboss-portal.sar/lib" file="${cas.client.jar}" overwrite="true"/>
+ <!-- add portal-identity-sso-lib.jar to jboss portal -->
+ <copy tofile="${JBOSS_HOME}/server/${cas.deploy.dir}/jboss-portal.sar/lib/portal-identity-sso-lib.jar" overwrite="true">
+ <fileset dir="target" includes="identity-sso-*-SNAPSHOT.jar"/>
+ </copy>
</target>
- <target name="deploy-cas-lenient" depends="output">
- <require file="${jboss.home}/server/${portal.deploy.dir}"/>
- <delete file="${jboss.home}/server/${portal.deploy.dir}/portal-cas.sar"/>
- <!-- portal-cas-sso sar file setup -->
- <copy todir="${jboss.home}/server/${portal.deploy.dir}" overwrite="true">
- <fileset dir="${build.lib}" includes="portal-cas-lenient.sar"/>
- </copy>
-
- <!-- jboss portal integration with the CAS Authentication server -->
- <copy todir="${jboss.home}/server/${portal.deploy.dir}/cas.war/WEB-INF/lib" overwrite="true">
- <fileset dir="${build.lib}" includes="portal-identity-sso-lib.jar"/>
- </copy>
- <copy todir="${jboss.home}/server/${portal.deploy.dir}/cas.war/WEB-INF" overwrite="true">
- <fileset dir="${build.etc}/cas" includes="deployerConfigContext.xml"/>
- </copy>
-
- <!-- core jboss portal changes -->
- <copy todir="${jboss.home}/server/${portal.deploy.dir}/jboss-portal.sar/portal-server.war/WEB-INF" overwrite="true">
- <fileset dir="${build.etc}/cas" includes="context.xml"/>
- </copy>
- </target>
-
<!--
Deploying the JOSSO SSO Framework integration
@@ -355,7 +77,7 @@
It also deploys any custom configuration/dependencies into the JOSSO war file which is the
JOSSO Authentication Server
-->
- <target name="deploy-josso" depends="output">
+ <target name="install-josso">
<require file="${jboss.home}/server/${portal.deploy.dir}"/>
<!-- portal-josso sar file setup -->
@@ -388,18 +110,16 @@
<fileset dir="${build.etc}/josso" includes="context.xml"/>
</copy>
</target>
-
-
+
<!-- ================================================================== -->
<!-- Testing and Reporting. -->
<!-- ================================================================== -->
- <target name="package-tests" depends="output">
+ <target name="package-tests">
<jar jarfile="${build.lib}/portal-identity-sso-test-lib.jar">
<fileset dir="${build.classes}"/>
<fileset dir="${build.resources}/portal-identity-test-jar"/>
</jar>
- </target>
-
+ </target>
<target name="tests" depends="package-tests">
<execute-tests>
<!--
@@ -428,7 +148,7 @@
</x-classpath>
</execute-tests>
</target>
- <target name="reports" depends="init">
+ <target name="reports">
<mkdir dir="${build.reports}"/>
<mkdir dir="${build.reports}/html"/>
<property name="test.reports" value="${module.output}/tests"/>
@@ -439,7 +159,7 @@
<report format="frames" todir="${build.reports}/html"/>
</junitreport>
</target>
- <target name="reports-noframes" depends="init">
+ <target name="reports-noframes">
<mkdir dir="${build.reports}"/>
<mkdir dir="${build.reports}/html"/>
<property name="test.reports" value="${module.output}/tests"/>
Modified: modules/identity/trunk/sso/pom.xml
===================================================================
--- modules/identity/trunk/sso/pom.xml 2008-01-31 05:14:15 UTC (rev 9663)
+++ modules/identity/trunk/sso/pom.xml 2008-01-31 05:38:21 UTC (rev 9664)
@@ -9,8 +9,8 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>identity-sso</artifactId>
<packaging>jar</packaging>
- <name>JBoss Portal Identity SSO Integration</name>
-
+ <name>JBoss Portal Identity SSO Integration</name>
+
<dependencies>
<dependency>
<groupId>org.jboss.portal.identity</groupId>
@@ -32,7 +32,7 @@
<dependency>
<groupId>ja-sig-cas</groupId>
<artifactId>cas-client</artifactId>
- </dependency>
+ </dependency>
<dependency>
<groupId>opensso</groupId>
<artifactId>opensso</artifactId>
@@ -40,8 +40,35 @@
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
- </dependency>
+ </dependency>
</dependencies>
-
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jvnet.maven-antrun-extended-plugin</groupId>
+ <artifactId>maven-antrun-extended-plugin</artifactId>
+ <version>1.13</version>
+ <executions>
+ <execution>
+ <id>install-cas</id>
+ <phase>install</phase>
+ <configuration>
+ <tasks>
+ <property name="cas.deploy.dir" value="cas-01/deploy"/>
+ <property name="cas.client.jar" value="${settings.localRepository}/ja-sig-cas/cas-client/${version.cas}/cas-client-${version.cas}.jar"/>
+ <ant antfile="${basedir}/build.xml">
+ <target name="install-cas"/>
+ </ant>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
</project>
Modified: modules/identity/trunk/sso/src/etc/cas/context.xml
===================================================================
--- modules/identity/trunk/sso/src/etc/cas/context.xml 2008-01-31 05:14:15 UTC (rev 9663)
+++ modules/identity/trunk/sso/src/etc/cas/context.xml 2008-01-31 05:38:21 UTC (rev 9664)
@@ -2,6 +2,7 @@
<Context>
<Valve className="org.jboss.portal.identity.sso.cas.CASAuthenticationValve"
casLogin="https://localhost/cas/login"
+ casLogout="https://localhost/cas/logout"
casValidate="https://localhost/cas/serviceValidate"
casServerName="localhost"
authType="FORM"
Added: modules/identity/trunk/sso/src/etc/cas/jboss-service.xml
===================================================================
--- modules/identity/trunk/sso/src/etc/cas/jboss-service.xml (rev 0)
+++ modules/identity/trunk/sso/src/etc/cas/jboss-service.xml 2008-01-31 05:38:21 UTC (rev 9664)
@@ -0,0 +1,1343 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ~ JBoss, a division of Red Hat ~
+ ~ Copyright 2006, Red Hat Middleware, LLC, and individual ~
+ ~ contributors as indicated by the @authors tag. See the ~
+ ~ copyright.txt in the distribution for a full listing of ~
+ ~ individual contributors. ~
+ ~ ~
+ ~ This is free software; you can redistribute it and/or modify it ~
+ ~ under the terms of the GNU Lesser General Public License as ~
+ ~ published by the Free Software Foundation; either version 2.1 of ~
+ ~ the License, or (at your option) any later version. ~
+ ~ ~
+ ~ This software is distributed in the hope that it will be useful, ~
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of ~
+ ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ~
+ ~ Lesser General Public License for more details. ~
+ ~ ~
+ ~ You should have received a copy of the GNU Lesser General Public ~
+ ~ License along with this software; if not, write to the Free ~
+ ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ~
+ ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org. ~
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
+
+<server>
+
+ <!-- Server configuration service -->
+ <mbean
+ code="org.jboss.portal.server.config.ServerConfigService"
+ name="portal:service=ServerConfig"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="ConfigLocation">conf/config.xml</attribute>
+ </mbean>
+
+ <!-- DTD repository -->
+ <mbean
+ code="org.jboss.portal.server.impl.xml.EntityResolverService"
+ name="portal:service=EntityResolver"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="DTDMapping">
+ <properties>
+ <entry key="-//JBoss Portal//DTD JBoss Portlet 2.6//EN">dtd/jboss-portlet_2_6.dtd</entry>
+ <entry key="-//JBoss Portal//DTD JBoss App 2.6//EN">dtd/jboss-app_2_6.dtd</entry>
+ <entry key="-//JBoss Portal//DTD Portal Object 2.6//EN">dtd/portal-object_2_6.dtd</entry>
+ <entry key="-//JBoss Portal//DTD Portlet Instances 2.6//EN">dtd/portlet-instances_2_6.dtd</entry>
+ </properties>
+ </attribute>
+ </mbean>
+
+ <!-- Runtime context for running portlet container -->
+ <mbean
+ code="org.jboss.portal.web.jboss.JBossWebContext"
+ name="portal:service=ServletContainerFactory"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+
+ <!-- Portal security services-->
+ <mbean
+ code="org.jboss.portal.security.impl.JBossAuthorizationDomainRegistryImpl"
+ name="portal:service=AuthorizationDomainRegistry"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.security.impl.jacc.JACCPortalAuthorizationManagerFactory"
+ name="portal:service=PortalAuthorizationManagerFactory"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="AuthorizationDomainRegistry"
+ proxy-type="attribute">portal:service=AuthorizationDomainRegistry</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.impl.security.JBossPortletSecurityService"
+ name="portal:service=PortletSecurityService"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+ <depends
+ optional-attribute-name="AuthorizationDomainRegistry"
+ proxy-type="attribute">portal:service=AuthorizationDomainRegistry</depends>
+ </mbean>
+
+ <!-- Server stack -->
+ <mbean
+ code="org.jboss.portal.server.aspects.server.SessionLockInterceptor"
+ name="portal:service=Interceptor,type=Server,name=SessionLock"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.server.TransactionInterceptor"
+ name="portal:service=Interceptor,type=Server,name=Transaction"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.impl.api.user.UserEventBridgeTriggerInterceptor"
+ name="portal:service=Interceptor,type=Server,name=UserEvent"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.server.aspects.server.SignOutInterceptor"
+ name="portal:service=Interceptor,type=Server,name=SessionInvalidator"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="ServletContainerFactory"
+ proxy-type="attribute">portal:service=ServletContainerFactory</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.server.UserInterceptor"
+ name="portal:service=Interceptor,type=Server,name=User"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="CacheUser">true</attribute>
+ <depends>portal:service=Module,type=IdentityServiceController</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.server.LocaleInterceptor"
+ name="portal:service=Interceptor,type=Server,name=Locale"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.server.aspects.server.ContentTypeInterceptor"
+ name="portal:service=Interceptor,type=Server,name=ContentType"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.server.impl.invocation.JBossInterceptorStackFactory"
+ name="portal:service=InterceptorStackFactory,type=Server"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends-list optional-attribute-name="InterceptorNames">
+ <depends-list-element>portal:service=Interceptor,type=Server,name=SessionLock</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Server,name=Transaction</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Server,name=UserEvent</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Server,name=SessionInvalidator</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Server,name=User</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Server,name=Locale</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Server,name=ContentType</depends-list-element>
+ </depends-list>
+ </mbean>
+
+ <!-- Command stack -->
+ <mbean
+ code="org.jboss.portal.core.aspects.controller.ControlInterceptor"
+ name="portal:service=Interceptor,type=Command,name=Control"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="PortalControlPolicy"
+ proxy-type="attribute">portal:service=ControlPolicy,type=Portal</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.controller.ResourceAcquisitionInterceptor"
+ name="portal:service=Interceptor,type=Command,name=ResourceAcquisition"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.controller.ajax.AjaxInterceptor"
+ name="portal:service=Interceptor,type=Command,name=Ajax"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <!--
+ this tag has to be set when context root of portal-ajax is
+ different by /portal-ajax path.
+ Uncomment and change it if you want to change context root for portal-ajax application
+ <attribute name="TargetContextPath">/portal-ajax</attribute> -->
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.controller.NavigationalStateInterceptor"
+ name="portal:service=Interceptor,type=Command,name=NavigationalState"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.controller.node.PortalNodeInterceptor"
+ name="portal:service=Interceptor,type=Command,name=PortalNode"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.controller.PolicyEnforcementInterceptor"
+ name="portal:service=Interceptor,type=Command,name=PolicyEnforcement"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.controller.PageCustomizerInterceptor"
+ name="portal:service=Interceptor,type=Command,name=PageCustomizer"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="TargetContextPath">/portal-core</attribute>
+ <attribute name="HeaderPath">/WEB-INF/jsp/header/header.jsp</attribute>
+ <attribute name="TabsPath">/WEB-INF/jsp/header/tabs.jsp</attribute>
+ <!-- Overrides the value of core.login.namespace in config.xml -->
+ <!-- attribute name="LoginNamespace">dashboard</attribute -->
+ <depends
+ optional-attribute-name="Config"
+ proxy-type="attribute">portal:service=ServerConfig</depends>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+ <depends
+ optional-attribute-name="PortalObjectContainer"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.controller.node.EventBroadcasterInterceptor"
+ name="portal:service=Interceptor,type=Command,name=EventBroadcaster"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="ListenerRegistry"
+ proxy-type="attribute">portal:service=ListenerRegistry</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.server.impl.invocation.JBossInterceptorStackFactory"
+ name="portal:service=InterceptorStackFactory,type=Command"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends-list optional-attribute-name="InterceptorNames">
+ <depends-list-element>portal:service=Interceptor,type=Command,name=ResourceAcquisition</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=Ajax</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=NavigationalState</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=PortalNode</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=PolicyEnforcement</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=PageCustomizer</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=Control</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Command,name=EventBroadcaster</depends-list-element>
+ </depends-list>
+ </mbean>
+
+ <!-- Instance stack -->
+ <mbean
+ code="org.jboss.portal.core.model.instance.InstanceSecurityInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=InstanceSecurity"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends optional-attribute-name="PortalAuthorizationManagerFactory" proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.ConsumerCacheInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=ConsumerCache"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.PortalSessionSynchronizationInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=PortalSessionSynchronization"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.server.impl.invocation.JBossInterceptorStackFactory"
+ name="portal:service=InterceptorStackFactory,type=Instance"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends-list optional-attribute-name="InterceptorNames">
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=ConsumerCache</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=InstanceSecurity</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=PortalSessionSynchronization</depends-list-element>
+ </depends-list>
+ </mbean>
+
+ <!-- Producer stack -->
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.ValveInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=Valve"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.ContextTrackerInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=ContextTracker"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.SecureTransportInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=SecureTransport"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.ContextDispatcherInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=ContextDispatcher"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="ServletContainerFactory"
+ proxy-type="attribute">portal:service=ServletContainerFactory</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.PortletSessionSynchronizationInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=PortletSessionSynchronization"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.bridge.BridgeInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=Bridge"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.WindowStatesInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=WindowStates"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.ModesInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=Modes"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.aspects.portlet.ProducerCacheInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=ProducerCache"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.portlet.TransactionInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=Transaction"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.portlet.HeaderInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=Header"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.aspects.portlet.AjaxInterceptor"
+ name="portal:service=Interceptor,type=Portlet,name=Ajax"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.server.impl.invocation.JBossInterceptorStackFactory"
+ name="portal:service=InterceptorStackFactory,type=Producer"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends-list optional-attribute-name="InterceptorNames">
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=Valve</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=SecureTransport</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=ContextDispatcher</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=ContextTracker</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=PortletSessionSynchronization</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=WindowStates</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=Bridge</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=Modes</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=Ajax</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=ProducerCache</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=Header</depends-list-element>
+ <depends-list-element>portal:service=Interceptor,type=Portlet,name=Transaction</depends-list-element>
+ </depends-list>
+ </mbean>
+
+ <!-- Theme and layout services -->
+ <mbean
+ code="org.jboss.portal.theme.impl.ThemeServiceImpl"
+ name="portal:service=ThemeService"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="DefaultThemeName">renaissance</attribute>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.theme.impl.LayoutServiceImpl"
+ name="portal:service=LayoutService"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="DefaultLayoutName">generic</attribute>
+ <attribute name="DefaultRenderSetName">divRenderer</attribute>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.theme.impl.PageServiceImpl"
+ name="portal:service=PageService"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="LayoutService"
+ proxy-type="attribute">portal:service=LayoutService</depends>
+ <depends
+ optional-attribute-name="ThemeService"
+ proxy-type="attribute">portal:service=ThemeService</depends>
+ </mbean>
+
+ <!--
+ | Uncomment in clustered mode : replicated cache for hibernate
+
+ <mbean
+ code="org.jboss.cache.TreeCache"
+ name="portal:service=TreeCache,type=hibernate">
+ <depends>jboss:service=Naming</depends>
+ <depends>jboss:service=TransactionManager</depends>
+ <attribute name="TransactionManagerLookupClass">org.jboss.cache.JBossTransactionManagerLookup</attribute>
+ <attribute name="IsolationLevel">REPEATABLE_READ</attribute>
+ <attribute name="CacheMode">REPL_SYNC</attribute>
+ <attribute name="ClusterName">portal.hibernate</attribute>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.jems.hibernate.JBossTreeCacheProvider"
+ name="portal:service=TreeCacheProvider,type=hibernate">
+ <depends optional-attribute-name="CacheName">portal:service=TreeCache,type=hibernate</depends>
+ </mbean>
+
+ -->
+
+ <!-- Session factories -->
+ <mbean
+ code="org.jboss.portal.jems.hibernate.SessionFactoryBinder"
+ name="portal:service=Hibernate"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>jboss.jca:service=DataSourceBinding,name=PortalDS</depends>
+ <!-- Uncomment in clustered mode : hibernate depends on its tree cache service
+ <depends>portal:service=TreeCacheProvider,type=hibernate</depends>
+ -->
+ <attribute name="DoChecking">true</attribute>
+ <attribute name="ConfigLocation">conf/hibernate/user/hibernate.cfg.xml</attribute>
+ <attribute name="SetupLocation">conf/hibernate/user/setup.txt</attribute>
+ <attribute name="JNDIName">java:/portal/IdentitySessionFactory</attribute>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.jems.hibernate.SessionFactoryBinder"
+ name="portal:service=Hibernate,type=Instance"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>jboss.jca:service=DataSourceBinding,name=PortalDS</depends>
+ <depends>jboss.jca:service=DataSourceBinding,name=PortalDS</depends>
+ <!-- Uncomment in clustered mode : hibernate depends on its tree cache service
+ <depends>portal:service=TreeCacheProvider,type=hibernate</depends>
+ -->
+ <attribute name="DoChecking">true</attribute>
+ <attribute name="ConfigLocation">conf/hibernate/instance/hibernate.cfg.xml</attribute>
+ <attribute name="JNDIName">java:/portal/InstanceSessionFactory</attribute>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.jems.hibernate.SessionFactoryBinder"
+ name="portal:service=Hibernate,type=PortalObject"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>jboss.jca:service=DataSourceBinding,name=PortalDS</depends>
+ <!-- Uncomment in clustered mode : hibernate depends on its tree cache service
+ <depends>portal:service=TreeCacheProvider,type=hibernate</depends>
+ -->
+ <attribute name="DoChecking">true</attribute>
+ <attribute name="ConfigLocation">conf/hibernate/portal/hibernate.cfg.xml</attribute>
+ <attribute name="JNDIName">java:/portal/PortalObjectSessionFactory</attribute>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.jems.hibernate.SessionFactoryBinder"
+ name="portal:service=Hibernate,type=Portlet"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>jboss.jca:service=DataSourceBinding,name=PortalDS</depends>
+ <!-- Uncomment in clustered mode : hibernate depends on its tree cache service
+ <depends>portal:service=TreeCacheProvider,type=hibernate</depends>
+ -->
+ <attribute name="DoChecking">true</attribute>
+ <attribute name="ConfigLocation">conf/hibernate/portlet/hibernate.cfg.xml</attribute>
+ <attribute name="JNDIName">java:/portal/PortletSessionFactory</attribute>
+ </mbean>
+
+ <!--Identity-->
+ <mbean
+ code="org.jboss.portal.identity.service.IdentityEventManagerService"
+ name="portal:service=IdentityEventManager"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.identity.service.IdentityServiceControllerImpl"
+ name="portal:service=Module,type=IdentityServiceController"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>portal:service=Hibernate</depends>
+ <depends
+ optional-attribute-name="IdentityEventBroadcaster"
+ proxy-type="attribute">portal:service=IdentityEventManager</depends>
+ <attribute name="JndiName">java:/portal/IdentityServiceController</attribute>
+ <attribute name="RegisterMBeans">true</attribute>
+ <attribute name="ConfigFile">conf/identity/identity-config.xml</attribute>
+ <attribute name="DefaultConfigFile">conf/identity/standardidentity-config.xml</attribute>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.core.impl.mail.MailModuleImpl"
+ name="portal:service=Module,type=Mail"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>jboss:service=Mail</depends>
+ <depends>portal:service=Module,type=IdentityServiceController</depends>
+ <attribute name="QueueCapacity">-1</attribute>
+ <attribute name="Gateway">localhost</attribute>
+ <attribute name="SmtpUser"></attribute>
+ <attribute name="SmtpPassword"></attribute>
+ <attribute name="JavaMailDebugEnabled">false</attribute>
+ <attribute name="SMTPConnectionTimeout">100000</attribute>
+ <attribute name="SMTPTimeout">10000</attribute>
+ <attribute name="JNDIName">java:portal/MailModule</attribute>
+ </mbean>
+
+ <mbean
+ code="org.jboss.security.auth.login.DynamicLoginConfig"
+ name="portal:service=JAASLoginModule">
+ <depends optional-attribute-name="LoginConfigService">jboss.security:service=XMLLoginConfig</depends>
+ <depends optional-attribute-name="SecurityManagerService">jboss.security:service=JaasSecurityManager</depends>
+ <attribute name="AuthConfig">conf/login-config.xml</attribute>
+ </mbean>
+
+ <!-- a service to schedule activity of the users -->
+ <mbean
+ code="org.jboss.portal.core.identity.UsersActivityStatsServiceImpl"
+ name="portal:service=Module,type=UsersActivityStatsService"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <!--
+ |Uncomment in clustered mode : broadcaster will spread info about user activity in cluster
+
+
+ <attribute name="ActivityBroadcasterName">portal:service=HAUserActivityNotificationBroadcaster</attribute>
+
+
+ -->
+ </mbean>
+
+ <!--
+ |Uncomment in clustered mode : broadcaster will spread info about user activity in cluster
+
+
+ <mbean code="org.jboss.portal.core.identity.UserActivityNotificationBroadcaster"
+ name="portal:service=HAUserActivityNotificationBroadcaster">
+ <depends>jboss:service=${jboss.partition.name:DefaultPartition}</depends>
+ </mbean>
+
+
+ -->
+
+ <!-- Registries -->
+ <mbean
+ code="org.jboss.portal.portlet.impl.container.PortletApplicationRegistryImpl"
+ name="portal:service=WebAppRegistry"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+
+ <!-- Listener registry -->
+ <mbean
+ code="org.jboss.portal.core.event.PortalEventListenerRegistryImpl"
+ name="portal:service=ListenerRegistry"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+
+ <!-- The different containers -->
+
+ <mbean
+ code="org.jboss.portal.core.impl.model.instance.persistent.PersistentInstanceContainerContext"
+ name="portal:service=InstanceContainerContext"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>portal:service=Hibernate,type=Instance</depends>
+ <attribute name="SessionFactoryJNDIName">java:/portal/InstanceSessionFactory</attribute>
+ <attribute name="CacheNaturalId">true</attribute>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.core.impl.model.instance.InstanceContainerImpl"
+ name="portal:container=Instance"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="ContainerContext"
+ proxy-type="attribute">portal:service=InstanceContainerContext</depends>
+ <depends
+ optional-attribute-name="StackFactory"
+ proxy-type="attribute">portal:service=InterceptorStackFactory,type=Instance</depends>
+ <depends
+ optional-attribute-name="PortletInvoker"
+ proxy-type="attribute">portal:service=PortletInvoker,type=Federating</depends>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+ <depends
+ optional-attribute-name="AuthorizationDomainRegistry"
+ proxy-type="attribute">portal:service=AuthorizationDomainRegistry</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.impl.model.portal.PersistentPortalObjectContainer"
+ name="portal:container=PortalObject"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>portal:service=Hibernate,type=PortalObject</depends>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+ <depends
+ optional-attribute-name="AuthorizationDomainRegistry"
+ proxy-type="attribute">portal:service=AuthorizationDomainRegistry</depends>
+ <depends
+ optional-attribute-name="ContentProviderRegistry"
+ proxy-type="attribute">portal:service=ContentProviderRegistry</depends>
+ <attribute name="SessionFactoryJNDIName">java:/portal/PortalObjectSessionFactory</attribute>
+ <attribute name="CacheNaturalId">true</attribute>
+ </mbean>
+
+ <!-- Customization manager -->
+ <mbean
+ code="org.jboss.portal.core.impl.model.CustomizationManagerService"
+ name="portal:service=CustomizationManager"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+ <depends
+ optional-attribute-name="InstanceContainer"
+ proxy-type="attribute">portal:container=Instance</depends>
+ <depends
+ optional-attribute-name="PortalObjectContainer"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+ <depends>portal:service=Module,type=IdentityServiceController</depends>
+ <attribute name="DashboardContextId">dashboard</attribute>
+ </mbean>
+
+ <!-- The content provider framework -->
+ <mbean
+ code="org.jboss.portal.core.impl.model.content.ContentProviderRegistryService"
+ name="portal:service=ContentProviderRegistry"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.impl.model.content.portlet.InternalPortletContentProvider"
+ name="portal:service=ContentRenderer,type=portlet"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="ContentType">portlet</attribute>
+ <depends
+ optional-attribute-name="Registry"
+ proxy-type="attribute">portal:service=ContentProviderRegistry</depends>
+ <depends
+ optional-attribute-name="CustomizationManager"
+ proxy-type="attribute">portal:service=CustomizationManager</depends>
+ <depends
+ optional-attribute-name="InstanceContainer"
+ proxy-type="attribute">portal:container=Instance</depends>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+ </mbean>
+
+ <!-- Integrate identity -->
+ <mbean
+ code="org.jboss.portal.core.identity.DashboardBridge"
+ name="portal:service=IdentityDashboardBridge"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="IdentityEventEmitter"
+ proxy-type="attribute">portal:service=IdentityEventManager</depends>
+ <depends
+ optional-attribute-name="CustomizationManager"
+ proxy-type="attribute">portal:service=CustomizationManager</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.identity.SecurityBridge"
+ name="portal:service=IdentitySecurityBridge"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="IdentityEventEmitter"
+ proxy-type="attribute">portal:service=IdentityEventManager</depends>
+ <depends
+ optional-attribute-name="DynamicLoginConfig"
+ proxy-type="attribute">portal:service=JAASLoginModule</depends>
+ </mbean>
+
+ <!-- Command factories -->
+ <mbean
+ code="org.jboss.portal.core.controller.command.mapper.DelegatingCommandFactoryService"
+ name="portal:commandFactory=Delegating"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.model.portal.DefaultPortalCommandFactory"
+ name="portal:commandFactory=DefaultPortal"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="NextFactory"
+ proxy-type="attribute">portal:commandFactory=Delegating</depends>
+ <depends
+ optional-attribute-name="Container"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.core.model.portal.command.mapping.DefaultPortalObjectPathMapper"
+ name="portal:service=PortalObjectPathMapper,type=Default"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="Container"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+ <attribute name="Namespace"><![CDATA[]]></attribute>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.model.portal.PortalObjectCommandFactory"
+ name="portal:commandFactory=PortalObject"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="Mapper"
+ proxy-type="attribute">portal:service=PortalObjectPathMapper,type=Default</depends>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.core.controller.command.mapper.CommandFactoryDelegate"
+ name="portal:commandFactory=Delegate,path=portal"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="Path">/portal</attribute>
+ <depends
+ optional-attribute-name="DelegatingFactory"
+ proxy-type="attribute">portal:commandFactory=Delegating</depends>
+ <depends
+ optional-attribute-name="DelegateFactory"
+ proxy-type="attribute">portal:commandFactory=PortalObject</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.controller.command.mapper.SignOutCommandFactoryService"
+ name="portal:commandFactory=SignOut"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.controller.command.mapper.CommandFactoryDelegate"
+ name="portal:commandFactory=Delegate,path=signout"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="Path">/signout</attribute>
+ <depends
+ optional-attribute-name="DelegatingFactory"
+ proxy-type="attribute">portal:commandFactory=Delegating</depends>
+ <depends
+ optional-attribute-name="DelegateFactory"
+ proxy-type="attribute">portal:commandFactory=SignOut</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.model.portal.command.mapping.DashboardPortalObjectPathMapper"
+ name="portal:service=PortalObjectPathMapper,type=Dashboard"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="CustomizationManager"
+ proxy-type="attribute">portal:service=CustomizationManager</depends>
+ <depends
+ optional-attribute-name="Container"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.model.portal.PortalObjectCommandFactory"
+ name="portal:commandFactory=Dashboard"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="Mapper"
+ proxy-type="attribute">portal:service=PortalObjectPathMapper,type=Dashboard</depends>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.core.controller.command.mapper.CommandFactoryDelegate"
+ name="portal:commandFactory=Delegate,path=dashboard"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="Path">/dashboard</attribute>
+ <depends
+ optional-attribute-name="DelegatingFactory"
+ proxy-type="attribute">portal:commandFactory=Delegating</depends>
+ <depends
+ optional-attribute-name="DelegateFactory"
+ proxy-type="attribute">portal:commandFactory=Dashboard</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.controller.ajax.AjaxCommandFactory"
+ name="portal:commandFactory=Ajax"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.controller.command.mapper.CommandFactoryDelegate"
+ name="portal:commandFactory=Delegate,path=ajax"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="Path">/ajax</attribute>
+ <depends
+ optional-attribute-name="DelegatingFactory"
+ proxy-type="attribute">portal:commandFactory=Delegating</depends>
+ <depends
+ optional-attribute-name="DelegateFactory"
+ proxy-type="attribute">portal:commandFactory=Ajax</depends>
+ </mbean>
+
+ <!-- URL factories -->
+ <mbean
+ code="org.jboss.portal.core.controller.command.mapper.DelegatingURLFactoryService"
+ name="portal:urlFactory=Delegating"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.model.portal.PortalObjectURLFactory"
+ name="portal:urlFactory=PortalObject,type=Default"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="Namespace"><![CDATA[]]></attribute>
+ <attribute name="Path">/portal</attribute>
+ <depends
+ optional-attribute-name="Factory"
+ proxy-type="attribute">portal:urlFactory=Delegating</depends>
+ <depends
+ optional-attribute-name="Mapper"
+ proxy-type="attribute">portal:service=PortalObjectPathMapper,type=Default</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.controller.command.mapper.SignOutURLFactory"
+ name="portal:urlFactory=SignOut"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="Path">/signout</attribute>
+ <depends
+ optional-attribute-name="Factory"
+ proxy-type="attribute">portal:urlFactory=Delegating</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.model.portal.PortalObjectURLFactory"
+ name="portal:urlFactory=PortalObject,type=Dashboard"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="Namespace">dashboard</attribute>
+ <attribute name="Path">/dashboard</attribute>
+ <depends
+ optional-attribute-name="Factory"
+ proxy-type="attribute">portal:urlFactory=Delegating</depends>
+ <depends
+ optional-attribute-name="Mapper"
+ proxy-type="attribute">portal:service=PortalObjectPathMapper,type=Dashboard</depends>
+ </mbean>
+
+ <!-- The federating portlet invoker -->
+ <mbean
+ code="org.jboss.portal.portlet.federation.impl.FederatingPortletInvokerService"
+ name="portal:service=PortletInvoker,type=Federating"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+
+ <!-- The portlet container invoker -->
+ <mbean
+ code="org.jboss.portal.portlet.container.PortletContainerInvoker"
+ name="portal:service=PortletInvoker,type=Container"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="StackFactory"
+ proxy-type="attribute">portal:service=InterceptorStackFactory,type=Producer</depends>
+ <depends
+ optional-attribute-name="Registry"
+ proxy-type="attribute">portal:service=WebAppRegistry</depends>
+ </mbean>
+
+ <!-- The producer portlet invoker -->
+ <mbean
+ code="org.jboss.portal.core.impl.portlet.state.PersistentPortletStatePersistenceManager"
+ name="portal:service=PersistenceManager,type=Producer"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>portal:service=Hibernate,type=Portlet</depends>
+ <attribute name="SessionFactoryJNDIName">java:/portal/PortletSessionFactory</attribute>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.impl.state.StateManagementPolicyService"
+ name="portal:service=StateManagementPolicy,type=Producer"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="PersistLocally">true</attribute>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.portlet.impl.state.StateConverterV0"
+ name="portal:service=StateConverter,type=Producer"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.impl.portlet.state.ProducerPortletInvoker"
+ name="portal:service=PortletInvoker,type=Producer"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="PortletInvoker"
+ proxy-type="attribute">portal:service=PortletInvoker,type=Container</depends>
+ <depends
+ optional-attribute-name="PersistenceManager"
+ proxy-type="attribute">portal:service=PersistenceManager,type=Producer</depends>
+ <depends
+ optional-attribute-name="StateManagementPolicy"
+ proxy-type="attribute">portal:service=StateManagementPolicy,type=Producer</depends>
+ <depends
+ optional-attribute-name="StateConverter"
+ proxy-type="attribute">portal:service=StateConverter,type=Producer</depends>
+ </mbean>
+
+ <!-- Register the state portlet invoker on the federating portlet invoker -->
+ <mbean
+ code="org.jboss.portal.portlet.federation.impl.PortletInvokerRegistrationService"
+ name="portal:service=PortletInvokerRegistration,id=local"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <attribute name="Id">local</attribute>
+ <depends
+ optional-attribute-name="PortletInvoker"
+ proxy-type="attribute">portal:service=PortletInvoker,type=Producer</depends>
+ <depends
+ optional-attribute-name="FederatingPortletInvoker"
+ proxy-type="attribute">portal:service=PortletInvoker,type=Federating</depends>
+ </mbean>
+
+ <!-- The classic response handler -->
+ <mbean
+ code="org.jboss.portal.core.controller.classic.ClassicResponseHandler"
+ name="portal:service=ResponseHandler,type=Classic"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ </mbean>
+
+ <!-- The ajax response handler -->
+ <mbean
+ code="org.jboss.portal.core.controller.ajax.AjaxResponseHandler"
+ name="portal:service=ResponseHandler,type=Ajax"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="PageService"
+ proxy-type="attribute">portal:service=PageService</depends>
+ <depends
+ optional-attribute-name="PortalObjectContainer"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+ </mbean>
+
+ <!-- The response handler selector -->
+ <mbean
+ code="org.jboss.portal.core.controller.handler.ResponseHandlerSelector"
+ name="portal:service=ResponseHandler,type=Selector"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="ClassicResponseHandler"
+ proxy-type="attribute">portal:service=ResponseHandler,type=Classic</depends>
+ <depends
+ optional-attribute-name="AjaxResponseHandler"
+ proxy-type="attribute">portal:service=ResponseHandler,type=Ajax</depends>
+ </mbean>
+
+ <!-- -->
+ <mbean
+ code="org.jboss.portal.core.model.portal.control.page.DefaultPageControlPolicy"
+ name="portal:service=ControlPolicy,type=Page"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="PortalObjectContainer"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.core.model.portal.control.portal.DefaultPortalControlPolicy"
+ name="portal:service=ControlPolicy,type=Portal"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="PortalObjectContainer"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+ </mbean>
+
+ <!-- The controller -->
+ <mbean
+ code="org.jboss.portal.core.controller.Controller"
+ name="portal:service=Controller"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="PageService"
+ proxy-type="attribute">portal:service=PageService</depends>
+ <depends
+ optional-attribute-name="CommandFactory"
+ proxy-type="attribute">portal:commandFactory=DefaultPortal</depends>
+ <depends
+ optional-attribute-name="URLFactory"
+ proxy-type="attribute">portal:urlFactory=Delegating</depends>
+ <depends
+ optional-attribute-name="StackFactory"
+ proxy-type="attribute">portal:service=InterceptorStackFactory,type=Command</depends>
+ <depends
+ optional-attribute-name="PortalObjectContainer"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+ <depends
+ optional-attribute-name="InstanceContainer"
+ proxy-type="attribute">portal:container=Instance</depends>
+ <depends
+ optional-attribute-name="PortalAuthorizationManagerFactory"
+ proxy-type="attribute">portal:service=PortalAuthorizationManagerFactory</depends>
+ <depends
+ optional-attribute-name="CustomizationManager"
+ proxy-type="attribute">portal:service=CustomizationManager</depends>
+ <depends
+ optional-attribute-name="ContentRendererRegistry"
+ proxy-type="attribute">portal:service=ContentProviderRegistry</depends>
+ <depends
+ optional-attribute-name="ResponseHandler"
+ proxy-type="attribute">portal:service=ResponseHandler,type=Selector</depends>
+ <depends
+ optional-attribute-name="PageControlPolicy"
+ proxy-type="attribute">portal:service=ControlPolicy,type=Page</depends>
+ </mbean>
+
+ <!-- The controller factory -->
+ <mbean
+ code="org.jboss.portal.server.impl.RequestControllerFactoryImpl"
+ name="portal:service=ControllerFactory"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="Controller"
+ proxy-type="attribute">portal:service=Controller</depends>
+ </mbean>
+
+ <!-- -->
+ <mbean
+ code="org.jboss.portal.server.impl.ServerImpl"
+ name="portal:service=Server"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="Config"
+ proxy-type="attribute">portal:service=ServerConfig</depends>
+ <depends
+ optional-attribute-name="ServletContainerFactory"
+ proxy-type="attribute">portal:service=ServletContainerFactory</depends>
+ </mbean>
+
+ <!-- -->
+ <mbean
+ code="org.jboss.portal.server.deployment.jboss.ServerDeployer"
+ name="portal:deployer=PortalWebApp">
+ <depends>jboss.system:service=MainDeployer</depends>
+ <depends>portal:container=PortalObject</depends>
+ <depends>portal:container=Instance</depends>
+ <depends
+ optional-attribute-name="PortalServer"
+ proxy-type="attribute">portal:service=Server</depends>
+ </mbean>
+
+ <!-- Portal object deployment factory -->
+ <!--
+ | Uncomment in cluster mode : have the deployment of objects run as a clustered singleton
+
+ <mbean
+ code="org.jboss.portal.jems.as.system.LifecycleInvoker"
+ name="portal:service=Controller,target=ObjectDeploymentFactory"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>jboss.ha:service=HASingletonDeployer,type=Barrier</depends>
+ <depends>jboss:service=${jboss.partition.name:DefaultPartition}</depends>
+ <depends>portal:container=PortalObject</depends>
+ <attribute name="Target">portal:deploymentFactory=Object</attribute>
+ <attribute name="OnStart">registerFactory</attribute>
+ <attribute name="OnStop">unregisterFactory</attribute>
+ </mbean>
+
+ -->
+ <mbean
+ code="org.jboss.portal.core.deployment.jboss.ObjectDeploymentFactory"
+ name="portal:deploymentFactory=Object"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="Deployer"
+ proxy-type="attribute">portal:deployer=PortalWebApp</depends>
+ <depends
+ optional-attribute-name="PortalObjectContainer"
+ proxy-type="attribute">portal:container=PortalObject</depends>
+ <depends
+ optional-attribute-name="ContentProviderRegistry"
+ proxy-type="attribute">portal:service=ContentProviderRegistry</depends>
+ <depends
+ optional-attribute-name="PortalObjectEntityResolver"
+ proxy-type="attribute">portal:service=EntityResolver</depends>
+ <attribute name="SetupLocation">conf/data/default-object.xml</attribute>
+ <!-- Set to false in clustered mode, otherwise set to true -->
+ <attribute name="RegistrationControlledByService">true</attribute>
+ </mbean>
+
+ <!-- -->
+ <!--
+ | Uncomment in cluster mode : have the creation of instances run as a clustered singleton
+
+ <mbean
+ code="org.jboss.portal.jems.as.system.LifecycleInvoker"
+ name="portal:service=Controller,target=PortletAppDeploymentFactory"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>jboss.ha:service=HASingletonDeployer,type=Barrier</depends>
+ <depends>jboss:service=${jboss.partition.name:DefaultPartition}</depends>
+ <depends>portal:container=PortalObject</depends>
+ <attribute name="Target">portal:deploymentFactory=PortletApp</attribute>
+ <attribute name="OnStart">enableCreateInstances</attribute>
+ <attribute name="OnStop">disableCreateInstances</attribute>
+ </mbean>
+
+ -->
+ <mbean
+ code="org.jboss.portal.core.deployment.jboss.PortletAppDeploymentFactory"
+ name="portal:deploymentFactory=PortletApp"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <!--
+ <depends>jboss.ha:service=HASingletonDeployer</depends>
+ -->
+ <depends>portal:service=PortletInvokerRegistration,id=local</depends>
+ <depends
+ optional-attribute-name="Deployer"
+ proxy-type="attribute">portal:deployer=PortalWebApp</depends>
+ <depends
+ optional-attribute-name="WebAppRegistry"
+ proxy-type="attribute">portal:service=WebAppRegistry</depends>
+ <depends
+ optional-attribute-name="Config"
+ proxy-type="attribute">portal:service=ServerConfig</depends>
+ <depends
+ optional-attribute-name="PortletSecurityService"
+ proxy-type="attribute">portal:service=PortletSecurityService</depends>
+ <depends
+ optional-attribute-name="InstanceContainer"
+ proxy-type="attribute">portal:container=Instance</depends>
+ <depends
+ optional-attribute-name="JBossPortletEntityResolver"
+ proxy-type="attribute">portal:service=EntityResolver</depends>
+ <depends
+ optional-attribute-name="PortalObjectEntityResolver"
+ proxy-type="attribute">portal:service=EntityResolver</depends>
+ <depends
+ optional-attribute-name="PortletInstancesEntityResolver"
+ proxy-type="attribute">portal:service=EntityResolver</depends>
+ <attribute name="StandardJBossApplicationMetaDataLocation">conf/standardjboss-portlet.xml</attribute>
+ <attribute name="PortletAPIFactoryClassName">org.jboss.portlet.JBossAPIFactory</attribute>
+ <attribute
+ name="PortletInfoFactoryClassName">org.jboss.portal.core.impl.portlet.info.CorePortletInfoFactory</attribute>
+ <!-- Set to false in clustered mode, otherwise set to true -->
+ <attribute name="CreateInstances">true</attribute>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.theme.deployment.jboss.LayoutDeploymentFactory"
+ name="portal:deploymentFactory=Layout"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="Deployer"
+ proxy-type="attribute">portal:deployer=PortalWebApp</depends>
+ <depends
+ optional-attribute-name="LayoutService"
+ proxy-type="attribute">portal:service=LayoutService</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.theme.deployment.jboss.LayoutFeaturesDeploymentFactory"
+ name="portal:deploymentFactory=LayoutFeatures"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="Deployer"
+ proxy-type="attribute">portal:deployer=PortalWebApp</depends>
+ <depends
+ optional-attribute-name="LayoutService"
+ proxy-type="attribute">portal:service=LayoutService</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.theme.deployment.jboss.ThemeDeploymentFactory"
+ name="portal:deploymentFactory=Theme"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="Deployer"
+ proxy-type="attribute">portal:deployer=PortalWebApp</depends>
+ <depends
+ optional-attribute-name="ThemeService"
+ proxy-type="attribute">portal:service=ThemeService</depends>
+ </mbean>
+ <mbean
+ code="org.jboss.portal.server.deployment.WebAppAdapter"
+ name="portal:deployer=Adapter"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends
+ optional-attribute-name="InterceptedDeployer">jboss.web:service=WebServer</depends>
+ <depends
+ optional-attribute-name="Deployer"
+ proxy-type="attribute">portal:deployer=PortalWebApp</depends>
+ <depends
+ optional-attribute-name="JBossAppEntityResolver"
+ proxy-type="attribute">portal:service=EntityResolver</depends>
+ </mbean>
+
+ <mbean
+ code="org.jboss.portal.identity.sso.cas.CASAuthenticationService"
+ name="portal:service=Module,type=CASAuthenticationService"
+ xmbean-dd=""
+ xmbean-code="org.jboss.portal.jems.as.system.JBossServiceModelMBean">
+ <xmbean/>
+ <depends>portal:service=Module,type=IdentityServiceController</depends>
+ <attribute name="HavingRole"></attribute>
+ </mbean>
+
+</server>
Property changes on: modules/identity/trunk/sso/src/etc/cas/jboss-service.xml
___________________________________________________________________
Name: svn:executable
+ *
Modified: modules/identity/trunk/sso/src/main/java/org/jboss/portal/identity/sso/cas/CASAuthenticationValve.java
===================================================================
--- modules/identity/trunk/sso/src/main/java/org/jboss/portal/identity/sso/cas/CASAuthenticationValve.java 2008-01-31 05:14:15 UTC (rev 9663)
+++ modules/identity/trunk/sso/src/main/java/org/jboss/portal/identity/sso/cas/CASAuthenticationValve.java 2008-01-31 05:38:21 UTC (rev 9664)
@@ -144,6 +144,9 @@
// Configuration state
/** Secure URL whereat CAS offers its login service. */
private String casLogin;
+
+ /**Secure URL to perfrom CAS signout */
+ private String casLogout;
/** Secure URL whereat CAS offers its CAS 2.0 validate service */
private String casValidate;
@@ -202,9 +205,27 @@
{
this.casLogin = casLogin;
}
+
+ /**
+ *
+ * @return
+ */
+ public String getCasLogout()
+ {
+ return casLogout;
+ }
/**
*
+ * @param casLogout
+ */
+ public void setCasLogout(String casLogout)
+ {
+ this.casLogout = casLogout;
+ }
+
+ /**
+ *
* @return
*/
public String getCasServerName()
@@ -300,39 +321,48 @@
&& session.getAttribute(CAS_FILTER_USER) == null)
{
CASReceipt receipt = null;
+ boolean skip = false;
try
{
receipt = getAuthenticatedUser(httpRequest);
}
catch (CASAuthenticationException e)
{
- throw new ServletException(e);
+ skip = true;
}
- if (!isReceiptAcceptable(receipt))
+ if (!skip && !isReceiptAcceptable(receipt))
{
- throw new ServletException(
- "Authentication was technically successful but rejected as a matter of policy. ["
- + receipt + "]");
+ skip = true;
}
- session.setAttribute(CAS_FILTER_USER, receipt.getUserName());
- session.setAttribute(CAS_FILTER_RECEIPT, receipt);
-
- // perform the portal JAAS authentication
- String user = receipt.getUserName();
- request.setAttribute("ssoSuccess", new Boolean(true));
- Principal principal = ((Context) this.container).getRealm()
- .authenticate(user, (String) null);
- if (principal != null)
+ if(!skip)
{
- this.register(request, response, principal, this.authType, user,
- (String) null);
+ session.setAttribute(CAS_FILTER_USER, receipt.getUserName());
+ session.setAttribute(CAS_FILTER_RECEIPT, receipt);
+
+ // perform the portal JAAS authentication
+ String user = receipt.getUserName();
+ request.setAttribute("ssoSuccess", new Boolean(true));
+ Principal principal = ((Context) this.container).getRealm()
+ .authenticate(user, (String) null);
+ if (principal != null)
+ {
+ this.register(request, response, principal, this.authType, user,
+ (String) null);
+ }
}
}
// continue processing the request
this.getNext().invoke(request, response);
+
+ //Perform a logout on the CAS SSO Session
+ if(request.getAttribute("org.jboss.portal.logout") != null)
+ {
+ System.out.println("Performing signout........");
+ response.sendRedirect(this.casLogout);
+ }
}
/**
16 years, 3 months
JBoss Portal SVN: r9663 - docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: mmcallis
Date: 2008-01-31 00:14:15 -0500 (Thu, 31 Jan 2008)
New Revision: 9663
Modified:
docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml
docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/supported.xml
Log:
changing bundle install to use an orderedlist/procedure
Modified: docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml
===================================================================
--- docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml 2008-01-31 04:25:15 UTC (rev 9662)
+++ docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/installation.xml 2008-01-31 05:14:15 UTC (rev 9663)
@@ -1,53 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<chapter id="installation">
<title>Installation</title>
- <para>Depending on your needs, there are several different methods to get JBoss Portal up and running.
- <note>Pre-configured clustered versions are available
- from the
- <ulink url="http://labs.jboss.com/portal/jbossportal/download/index.html">download page</ulink>.
- The installation differences, being that they must be deployed in the <emphasis>all</emphasis>
- configuration in JBoss AS and all your instances must reference the same datasource. Read
- <xref linkend="clustering"/> for more details on how to customize your clustered install, once deployed.
- </note>
+ <para>Depending on your needs, there are several different methods to install JBoss Portal. Pre-configured clustered versions (<computeroutput>JBoss Portal Binary (Clustered)</computeroutput>) are available from the
+ <ulink url="http://labs.jboss.com/portal/jbossportal/download/index.html">JBoss Portal Downloads</ulink> page. Clustered versions of JBoss Portal must be deployed in the <filename><replaceable>JBOSS_INSTALLATION_DIRECTORY</replaceable>/server/all/deploy/</filename> directory. All JBoss AS instances must reference the same datasource. See <xref linkend="clustering"/> for details on how to configure JBoss Portal for clustering.
</para>
<sect1 id="install_bundle">
- <title>Installing from Bundled Download</title>
- <para>This is the easiest and fastest way to get JBoss Portal installed and running. The reason is that the
- download bundle contains JBoss Application Server, and JBoss Portal uses the embedded Hypersonic Database.
+ <title>JBoss Portal and JBoss AS Bundle</title>
+ <para>This is the easiest and fastest way to get JBoss Portal installed and running. The JBoss AS and JBoss Portal bundle contains JBoss AS, JBoss Portal, and the embedded Hypersonic SQL database. To install the JBoss Portal and JBoss AS bundle:
</para>
- <sect2>
- <title>Installing the Bundle</title>
- <para>
- <itemizedlist>
- <listitem>
- <para>
- <emphasis role="bold">Get the Bundle:</emphasis>
- The download bundle is available from our
- <ulink url="http://labs.jboss.com/portal/jbossportal/download/index.html">download page</ulink>
- . Bundles are noted with the 'JBoss Portal + AS' naming convention.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis role="bold">Extract the bundle:</emphasis>
- Extract the zip archive to a directory of your choosing. In windows, we
- recommend, <command>C:\jboss-X.X.X</command>
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis role="bold">Start the Server:</emphasis>
- Go to JBOSS_INSTALL_DIRECTORY/bin and execute <command>run.bat</command> (<command>run.sh</command>, if
- Linux)
- </para>
- </listitem>
- </itemizedlist>
- <note>During the first boot (ever), SQL errors in the log, like the one below, can be safely ignored. They
+ <orderedlist>
+ <listitem>
+ <para>
+ <emphasis role="bold">Get the Bundle:</emphasis> the bundle is available from the <ulink url="http://labs.jboss.com/portal/jbossportal/download/index.html">JBoss Portal Downloads</ulink> page. Bundles use the <computeroutput>JBoss Portal + JBoss AS</computeroutput> naming convention.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <emphasis role="bold">Extract the bundle:</emphasis> extract the zip archive. It does not matter which directory is used. On Microsoft Windows, the recommended directory is <filename>C:\jboss-<replaceable>version-number</replaceable></filename>.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <emphasis role="bold">Start the Server:</emphasis> change into the <filename>$JBOSS_HOME/bin</filename> directory. On Microsoft Windows, execute <command>run.bat</command>. On Linux, run the <command>./run.sh</command> command.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <emphasis role="bold">Log in to Portal:</emphasis> use a Web browser to navigate to <computeroutput>http://localhost:8080/portal</computeroutput>. The JBoss Portal home page should appear. Log in using one of the two default accounts: username <emphasis>user</emphasis>, password <emphasis>user</emphasis>, or username <emphasis>admin</emphasis>, password <emphasis>admin</emphasis>.
+ </para>
+ </listitem>
+ </orderedlist>
+ <note>
+ <para>During the first boot (ever), SQL errors in the log, like the one below, can be safely ignored. They
are thrown when the portal checks for the existence of the initial tables, before it creates them for
you.
<programlisting><![CDATA[16:43:39,234 WARN [JDBCExceptionReporter] SQL Error: -22, SQLState: S0002
16:43:39,234 ERROR [JDBCExceptionReporter] Table not found in statement ...]]></programlisting>
+ </para>
</note>
+ <para>
Point your browser to
<emphasis>http://localhost:8080/portal</emphasis>
, and you should see the Portal HomePage. You can now login using one of the two default accounts:
@@ -55,7 +46,6 @@
or
<emphasis>admin/admin</emphasis>.
</para>
- </sect2>
</sect1>
<sect1 id="install_binary">
<title>Installing from Binary Download</title>
Modified: docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/supported.xml
===================================================================
--- docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/supported.xml 2008-01-31 04:25:15 UTC (rev 9662)
+++ docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/supported.xml 2008-01-31 05:14:15 UTC (rev 9663)
@@ -58,7 +58,7 @@
<listitem>MaxDB</listitem>
</itemizedlist>
<note>
- <para>JBoss Portal employs <ulink url="http://hibernate.org/">Hibernate</ulink> as an interface to a relational database management system (RDBMS). Most relational database management systems supported by Hibernate will work with JBoss Portal.</para>
+ <para>JBoss Portal employs Hibernate as an interface to a relational database management system (RDBMS). Most relational database management systems supported by Hibernate will work with JBoss Portal.</para>
</note>
</sect1>
<sect1>
16 years, 3 months
JBoss Portal SVN: r9662 - docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: mmcallis
Date: 2008-01-30 23:25:15 -0500 (Wed, 30 Jan 2008)
New Revision: 9662
Modified:
docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/supported.xml
Log:
superficial edit, few hyperlinks etc
Modified: docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/supported.xml
===================================================================
--- docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/supported.xml 2008-01-31 02:18:50 UTC (rev 9661)
+++ docs/branches/JBoss_Portal_Branch_2_6/referenceGuide/en/modules/supported.xml 2008-01-31 04:25:15 UTC (rev 9662)
@@ -37,36 +37,32 @@
</sect1>
<sect1>
<title>JBoss Application Server</title>
- <para>JBoss Portal 2.6.3 is tested with JBoss Application Server (AS) 4.2.1, JBoss AS 4.2.2, and JBoss Enterprise Application Platform (EAP) 4.2. It is highly recommended that customers who have access to the <ulink url="https://support.redhat.com/portal/login.html">JBoss Customer Support Portal (CSP)</ulink> use JBoss Portal 2.6.3 with JBoss Enterprise Application Platform 4.2. Customers who do not have access to the JBoss CSP should use <ulink url="http://labs.jboss.com/jbossas/">JBoss AS</ulink>.
+ <para>JBoss Portal 2.6.3 is tested with JBoss Application Server (AS) 4.2.1, JBoss AS 4.2.2, and JBoss Enterprise Application Platform (EAP) 4.2. It is highly recommended that customers who have access to the <ulink url="https://support.redhat.com/portal/login.html">JBoss Customer Support Portal (CSP)</ulink> use JBoss EAP 4.2. Customers who do not have access to the JBoss CSP should use <ulink url="http://labs.jboss.com/jbossas/">JBoss AS</ulink>.
</para>
<warning>
- <para>4.0.x versions are not supported</para>
+ <para>JBoss AS versions 4.0.<replaceable>x</replaceable> are not supported.</para>
</warning>
</sect1>
<sect1 id="supportedversions-db">
- <title>Database</title>
- <para>JBoss Portal is Database-Agnostic.</para>
- <note>
- <para>JBoss Portal employs Hibernate as an interface to RDBMS. Most RDBMS supported by
- Hibernate will work with JBoss Portal.</para>
- </note>
- <para>The following list, outlines known-to-be-working database vendor and version combinations:</para>
+ <title>Databases</title>
+ <para>JBoss Portal is database-agnostic. The following list outlines known-to-be-working database vendor and version combinations:</para>
<itemizedlist>
- <listitem>MySQL 4.x.x (along with the connector 3.0.16)</listitem>
- <listitem>MySQL 5 (
- <ulink url="http://wiki.jboss.org/wiki/Wiki.jsp?page=AvoidMySQL5DataTruncationErrors">known issue</ulink>
- )
+ <listitem>MySQL 4.<replaceable>x</replaceable>.<replaceable>x</replaceable> (use <ulink url="http://dev.mysql.com/downloads/connector/j/3.1.html">Connector/J 3.1</ulink>)</listitem>
+ <listitem>MySQL 5 (<ulink url="http://wiki.jboss.org/wiki/Wiki.jsp?page=AvoidMySQL5DataTruncationErrors">known issue</ulink>)
</listitem>
- <listitem>PostgreSQL 8.x</listitem>
- <listitem>HypersonicSQL</listitem>
+ <listitem>PostgreSQL 8.<replaceable>x</replaceable></listitem>
+ <listitem>Hypersonic SQL</listitem>
<listitem>Derby</listitem>
- <listitem>Oracle 9 and 10g (make sure to use the latest driver of Oracle's 10 branch even when running Oracle 9)</listitem>
+ <listitem>Oracle 9 and 10g (use the <ulink url="http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html">latest driver from the Oracle 10 branch</ulink> even if you are running Oracle 9)</listitem>
<listitem>Microsoft SQL Server</listitem>
<listitem>MaxDB</listitem>
</itemizedlist>
+ <note>
+ <para>JBoss Portal employs <ulink url="http://hibernate.org/">Hibernate</ulink> as an interface to a relational database management system (RDBMS). Most relational database management systems supported by Hibernate will work with JBoss Portal.</para>
+ </note>
</sect1>
<sect1>
<title>Source building</title>
- <para>The source building mechanism works on Linux, Windows, MacOS X and any 'Unix like' operating system.</para>
+ <para>The source building mechanism works on Linux, Microsoft Windows, Mac OS X, and any UNIX-like Operating System.</para>
</sect1>
</chapter>
16 years, 3 months
JBoss Portal SVN: r9661 - in modules/portlet/trunk: portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/api and 3 other directories.
by portal-commits@lists.jboss.org
Author: chris.laprun(a)jboss.com
Date: 2008-01-30 21:18:50 -0500 (Wed, 30 Jan 2008)
New Revision: 9661
Modified:
modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/info/ContainerEventingInfo.java
modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/api/PortletConfigImpl.java
modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/api/StateAwareResponseImpl.java
modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/info/EventingInfo.java
modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/support/info/EventingInfoSupport.java
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/PortletController.java
Log:
- EventingInfo.get*Events methods now return immutable Maps for easier access to registered event names. Adapted implementations and calling code.
- Split PortletController.proces method for easier reading.
Modified: modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/info/ContainerEventingInfo.java
===================================================================
--- modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/info/ContainerEventingInfo.java 2008-01-31 02:17:41 UTC (rev 9660)
+++ modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/info/ContainerEventingInfo.java 2008-01-31 02:18:50 UTC (rev 9661)
@@ -24,9 +24,10 @@
import org.jboss.portal.portlet.info.EventingInfo;
-import java.util.List;
-import java.util.ArrayList;
-import java.util.Collection;
+import javax.xml.namespace.QName;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
/**
* @author <a href="mailto:julien@jboss.org">Julien Viet</a>
@@ -36,34 +37,34 @@
{
/** . */
- private final List<ContainerEventInfo> producedEvents;
+ private final Map<QName, ContainerEventInfo> producedEvents;
/** . */
- private final List<ContainerEventInfo> consumedEvents;
+ private final Map<QName, ContainerEventInfo> consumedEvents;
public ContainerEventingInfo()
{
- producedEvents = new ArrayList<ContainerEventInfo>();
- consumedEvents = new ArrayList<ContainerEventInfo>();
+ producedEvents = new HashMap<QName, ContainerEventInfo>();
+ consumedEvents = new HashMap<QName, ContainerEventInfo>();
}
public void addProducedEvent(ContainerEventInfo producedEvent)
{
- producedEvents.add(producedEvent);
+ producedEvents.put(producedEvent.getName(), producedEvent);
}
public void addConsumedEvent(ContainerEventInfo consumedEvent)
{
- consumedEvents.add(consumedEvent);
+ consumedEvents.put(consumedEvent.getName(), consumedEvent);
}
- public Collection<ContainerEventInfo> getProducedEvents()
+ public Map<QName, ContainerEventInfo> getProducedEvents()
{
- return producedEvents;
+ return Collections.unmodifiableMap(producedEvents);
}
- public Collection<ContainerEventInfo> getConsumedEvents()
+ public Map<QName, ContainerEventInfo> getConsumedEvents()
{
- return consumedEvents;
+ return Collections.unmodifiableMap(consumedEvents);
}
}
Modified: modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/api/PortletConfigImpl.java
===================================================================
--- modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/api/PortletConfigImpl.java 2008-01-31 02:17:41 UTC (rev 9660)
+++ modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/api/PortletConfigImpl.java 2008-01-31 02:18:50 UTC (rev 9661)
@@ -23,21 +23,20 @@
package org.jboss.portal.portlet.impl.jsr168.api;
import org.jboss.portal.common.i18n.ResourceBundleManager;
-import org.jboss.portal.portlet.impl.info.ContainerPortletInfo;
-import org.jboss.portal.portlet.impl.info.ContainerPortletApplicationInfo;
import org.jboss.portal.portlet.impl.info.ContainerParameterInfo;
-import org.jboss.portal.portlet.info.EventInfo;
+import org.jboss.portal.portlet.impl.info.ContainerPortletApplicationInfo;
+import org.jboss.portal.portlet.impl.info.ContainerPortletInfo;
import javax.portlet.PortletConfig;
import javax.portlet.PortletContext;
import javax.xml.namespace.QName;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.Enumeration;
+import java.util.List;
import java.util.Locale;
-import java.util.ResourceBundle;
import java.util.Map;
-import java.util.List;
-import java.util.ArrayList;
+import java.util.ResourceBundle;
/**
* @author <a href="mailto:julien@jboss.org">Julien Viet</a>
@@ -73,22 +72,7 @@
PortletContextImpl portletContext,
ResourceBundleManager bundleMgr)
{
- List<QName> publishingEventQNames = new ArrayList<QName>();
- for (EventInfo event : portletInfo.getEventing().getProducedEvents())
- {
- QName eventName = event.getName();
- publishingEventQNames.add(eventName);
- }
-
//
- List<QName> processingEventQNames = new ArrayList<QName>();
- for (EventInfo event : portletInfo.getEventing().getConsumedEvents())
- {
- QName eventName = event.getName();
- processingEventQNames.add(eventName);
- }
-
- //
List<String> publicRenderParameterNames = new ArrayList<String>();
for (ContainerParameterInfo parameterInfo : portletInfo.getNavigation().getPublicParameters())
{
@@ -100,8 +84,8 @@
this.portletApplicationInfo = portletApplicationInfo;
this.portletContext = portletContext;
this.bundleMgr = bundleMgr;
- this.publishingEventQNames = publishingEventQNames;
- this.processingEventQNames = processingEventQNames;
+ this.publishingEventQNames = new ArrayList<QName>(portletInfo.getEventing().getProducedEvents().keySet());
+ this.processingEventQNames = new ArrayList<QName>(portletInfo.getEventing().getConsumedEvents().keySet());
this.publicRenderParameterNames = publicRenderParameterNames;
}
Modified: modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/api/StateAwareResponseImpl.java
===================================================================
--- modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/api/StateAwareResponseImpl.java 2008-01-31 02:17:41 UTC (rev 9660)
+++ modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/impl/jsr168/api/StateAwareResponseImpl.java 2008-01-31 02:18:50 UTC (rev 9661)
@@ -22,42 +22,41 @@
******************************************************************************/
package org.jboss.portal.portlet.impl.jsr168.api;
-import org.jboss.portal.portlet.invocation.PortletInvocation;
-import org.jboss.portal.portlet.invocation.response.UpdateNavigationalStateResponse;
-import org.jboss.portal.portlet.invocation.response.StateResponse;
-import org.jboss.portal.portlet.invocation.response.HTTPRedirectionResponse;
-import org.jboss.portal.portlet.invocation.response.PortletInvocationResponse;
-import org.jboss.portal.portlet.ParametersStateString;
-import org.jboss.portal.portlet.impl.jsr168.PortletApplicationImpl;
-import org.jboss.portal.portlet.impl.jsr168.PortletParameterMap;
-import org.jboss.portal.portlet.impl.info.ContainerEventingInfo;
-import org.jboss.portal.portlet.impl.info.ContainerPortletApplicationInfo;
-import org.jboss.portal.portlet.impl.info.ContainerTypeInfo;
-import org.jboss.portal.portlet.impl.info.ContainerEventInfo;
+import org.apache.log4j.Logger;
import org.jboss.portal.Mode;
import org.jboss.portal.common.NotYetImplemented;
import org.jboss.portal.common.util.Tools;
-import org.apache.log4j.Logger;
+import org.jboss.portal.portlet.ParametersStateString;
+import org.jboss.portal.portlet.impl.info.ContainerEventInfo;
+import org.jboss.portal.portlet.impl.info.ContainerPortletApplicationInfo;
+import org.jboss.portal.portlet.impl.info.ContainerTypeInfo;
+import org.jboss.portal.portlet.impl.jsr168.PortletApplicationImpl;
+import org.jboss.portal.portlet.impl.jsr168.PortletParameterMap;
+import org.jboss.portal.portlet.invocation.PortletInvocation;
+import org.jboss.portal.portlet.invocation.response.HTTPRedirectionResponse;
+import org.jboss.portal.portlet.invocation.response.PortletInvocationResponse;
+import org.jboss.portal.portlet.invocation.response.StateResponse;
+import org.jboss.portal.portlet.invocation.response.UpdateNavigationalStateResponse;
+import javax.portlet.PortletMode;
+import javax.portlet.PortletModeException;
import javax.portlet.StateAwareResponse;
import javax.portlet.WindowState;
import javax.portlet.WindowStateException;
-import javax.portlet.PortletMode;
-import javax.portlet.PortletModeException;
-import javax.xml.namespace.QName;
import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.namespace.QName;
import java.io.Serializable;
-import java.util.Map;
-import java.util.Set;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.UUID;
-import java.util.List;
-import java.util.LinkedList;
+import java.lang.annotation.Annotation;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.net.URI;
-import java.lang.annotation.Annotation;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.UUID;
/**
* @author <a href="mailto:julien@jboss.org">Julien Viet</a>
@@ -298,27 +297,19 @@
}
//
- ContainerEventingInfo eventsInfo = preq.container.getInfo().getEventing();
// Check type
- for (ContainerEventInfo eventInfo : eventsInfo.getProducedEvents())
+ ContainerEventInfo eventInfo = preq.container.getInfo().getEventing().getProducedEvents().get(name);
+ ContainerTypeInfo typeInfo = eventInfo.getType();
+ if (typeInfo != null)
{
- if (eventInfo.getName().equals(name))
- {
- ContainerTypeInfo typeInfo = eventInfo.getType();
+ Class expectedType = typeInfo.getType();
- //
- if (typeInfo != null)
- {
- Class expectedType = typeInfo.getType();
-
- //
- if (!expectedType.isInstance(value))
- {
- throw new IllegalArgumentException("The provided event value type " + valueType.getName() +
- " does not match the declared event type " + expectedType.getName());
- }
- }
+ //
+ if (!expectedType.isInstance(value))
+ {
+ throw new IllegalArgumentException("The provided event value type " + valueType.getName() +
+ " does not match the declared event type " + expectedType.getName());
}
}
}
Modified: modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/info/EventingInfo.java
===================================================================
--- modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/info/EventingInfo.java 2008-01-31 02:17:41 UTC (rev 9660)
+++ modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/info/EventingInfo.java 2008-01-31 02:18:50 UTC (rev 9661)
@@ -22,7 +22,8 @@
******************************************************************************/
package org.jboss.portal.portlet.info;
-import java.util.Collection;
+import javax.xml.namespace.QName;
+import java.util.Map;
/**
* @author <a href="mailto:julien@jboss.org">Julien Viet</a>
@@ -30,9 +31,7 @@
*/
public interface EventingInfo
{
+ Map<QName, ? extends EventInfo> getProducedEvents();
- Collection<? extends EventInfo> getProducedEvents();
-
- Collection<? extends EventInfo> getConsumedEvents();
-
+ Map<QName, ? extends EventInfo> getConsumedEvents();
}
Modified: modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/support/info/EventingInfoSupport.java
===================================================================
--- modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/support/info/EventingInfoSupport.java 2008-01-31 02:17:41 UTC (rev 9660)
+++ modules/portlet/trunk/portlet/src/main/java/org/jboss/portal/portlet/support/info/EventingInfoSupport.java 2008-01-31 02:18:50 UTC (rev 9661)
@@ -23,11 +23,11 @@
package org.jboss.portal.portlet.support.info;
import org.jboss.portal.portlet.info.EventingInfo;
-import org.jboss.portal.portlet.info.EventInfo;
-import java.util.Collection;
-import java.util.ArrayList;
-import java.util.List;
+import javax.xml.namespace.QName;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
/**
* @author <a href="mailto:julien@jboss.org">Julien Viet</a>
@@ -37,34 +37,34 @@
{
/** . */
- private List<EventInfoSupport> producedEvents;
+ private Map<QName, EventInfoSupport> producedEvents;
/** . */
- private List<EventInfoSupport> consumedEvents;
+ private Map<QName, EventInfoSupport> consumedEvents;
public EventingInfoSupport()
{
- producedEvents = new ArrayList<EventInfoSupport>();
- consumedEvents = new ArrayList<EventInfoSupport>();
+ producedEvents = new HashMap<QName, EventInfoSupport>();
+ consumedEvents = new HashMap<QName, EventInfoSupport>();
}
public void addProducedEvent(EventInfoSupport event)
{
- producedEvents.add(event);
+ producedEvents.put(event.getName(), event);
}
public void addConsumedEvent(EventInfoSupport event)
{
- producedEvents.add(event);
+ producedEvents.put(event.getName(), event);
}
- public Collection<? extends EventInfo> getProducedEvents()
+ public Map<QName, EventInfoSupport> getProducedEvents()
{
- return producedEvents;
+ return Collections.unmodifiableMap(producedEvents);
}
- public Collection<? extends EventInfo> getConsumedEvents()
+ public Map<QName, EventInfoSupport> getConsumedEvents()
{
- return consumedEvents;
+ return Collections.unmodifiableMap(consumedEvents);
}
}
Modified: modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/PortletController.java
===================================================================
--- modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/PortletController.java 2008-01-31 02:17:41 UTC (rev 9660)
+++ modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/PortletController.java 2008-01-31 02:18:50 UTC (rev 9661)
@@ -42,7 +42,6 @@
import org.jboss.portal.portlet.impl.spi.AbstractServerContext;
import org.jboss.portal.portlet.impl.spi.AbstractUserContext;
import org.jboss.portal.portlet.impl.spi.AbstractWindowContext;
-import org.jboss.portal.portlet.info.EventInfo;
import org.jboss.portal.portlet.info.NavigationInfo;
import org.jboss.portal.portlet.info.ParameterInfo;
import org.jboss.portal.portlet.info.PortletInfo;
@@ -115,235 +114,225 @@
{
render(controllerRequest.controllerContext, new ResponseProperties(), new PageNavigationalState());
}
- else if (controllerRequest instanceof ContainerRequest)
+ else if (controllerRequest instanceof PortletRequest)
{
- process((ContainerRequest)controllerRequest);
+ processPortletRequest((PortletRequest)controllerRequest);
}
+ else if (controllerRequest instanceof PortletResourceRequest)
+ {
+ processResourceRequest((PortletResourceRequest)controllerRequest);
+ }
+ else
+ {
+ throw new PortletInvokerException("Unknown request type: " + controllerRequest.getClass().getName());
+ }
}
- public void process(ContainerRequest containerRequest) throws PortletInvokerException, IOException
+ private void processPortletRequest(PortletRequest portletRequest) throws IOException, PortletInvokerException
{
- PortletControllerContext context = containerRequest.controllerContext;
- HttpServletResponse resp = context.getClientResponse();
+ PortletControllerContext context = portletRequest.controllerContext;
//
- if (containerRequest instanceof PortletRequest)
+ PortletInvocationResponse response = invoke(portletRequest);
+
+ //
+ ResponseProperties requestProperties = new ResponseProperties();
+
+ //
+ if (response instanceof ErrorResponse)
{
- PortletRequest portletRequest = (PortletRequest)containerRequest;
+ ErrorResponse error = (ErrorResponse)response;
//
- PortletInvocationResponse response = invoke(containerRequest);
+ if (error.getCause() != null)
+ {
+ log.error("Portlet action threw an error: " + error.getMessage(), error.getCause());
+ }
+ else
+ {
+ log.error("Portlet action threw an error: " + error.getMessage());
+ }
//
- ResponseProperties requestProperties = new ResponseProperties();
-
- //
- if (response instanceof ErrorResponse)
+ context.getClientResponse().sendError(404, error.getMessage());
+ }
+ else if (response instanceof StateResponse)
+ {
+ // Update portlet NS
+ if (response instanceof UpdateNavigationalStateResponse)
{
- ErrorResponse error = (ErrorResponse)response;
+ UpdateNavigationalStateResponse updateResponse = (UpdateNavigationalStateResponse)response;
+ updateNavigationalState(context, portletRequest.portletId, updateResponse, portletRequest.pageState);
//
- if (error.getCause() != null)
+ ResponseProperties update = updateResponse.getProperties();
+ if (update != null)
{
- log.error("Portlet action threw an error: " + error.getMessage(), error.getCause());
+ requestProperties.append(update);
}
- else
- {
- log.error("Portlet action threw an error: " + error.getMessage());
- }
-
- //
- resp.sendError(404, error.getMessage());
}
- else if (response instanceof StateResponse)
+
+ StateResponse stateResponse = (StateResponse)response;
+ // Create event list and feed it with the events that may have been produced
+ LinkedList<StateResponse.Event> queue = new LinkedList<StateResponse.Event>();
+ queue.addAll(stateResponse.getEvents());
+
+ // Deliver events
+ while (queue.size() > 0)
{
- StateResponse stateResponse = (StateResponse)response;
+ StateResponse.Event event = queue.removeFirst();
- // Update portlet NS
- if (response instanceof UpdateNavigationalStateResponse)
+ //
+ List<Portlet> consumers = new ArrayList<Portlet>();
+ for (Portlet portlet : context.getPortlets())
{
- UpdateNavigationalStateResponse updateResponse = (UpdateNavigationalStateResponse)response;
- updateNavigationalState(
- context,
- containerRequest.portletId,
- updateResponse,
- portletRequest.pageState);
+ PortletInfo portletInfo = portlet.getInfo();
- //
- ResponseProperties update = updateResponse.getProperties();
- if (update != null)
+ if (portletInfo.getEventing().getConsumedEvents().containsKey(event.getName()))
{
- requestProperties.append(updateResponse.getProperties());
+ consumers.add(portlet);
}
}
- // Create event list and feed it with the events that may have been produced
- LinkedList<StateResponse.Event> queue = new LinkedList<StateResponse.Event>();
- queue.addAll(stateResponse.getEvents());
-
//
- while (queue.size() > 0)
+ for (Portlet consumer : consumers)
{
- StateResponse.Event event = queue.removeFirst();
+ PortletInvocationResponse eventResponse =
+ deliverEvent(context, consumer, event, portletRequest.pageState, requestProperties.getCookies());
//
- List<Portlet> consumers = new ArrayList<Portlet>();
- for (Portlet portlet : context.getPortlets())
+ if (eventResponse instanceof UpdateNavigationalStateResponse)
{
- PortletInfo portletInfo = portlet.getInfo();
+ UpdateNavigationalStateResponse update = (UpdateNavigationalStateResponse)eventResponse;
- //
- for (EventInfo eventInfo : portletInfo.getEventing().getConsumedEvents())
- {
- if (event.getName().equals(eventInfo.getName()))
- {
- consumers.add(portlet);
- }
- }
- }
+ // Update ns
+ updateNavigationalState(context, consumer.getContext().getId(), update, portletRequest.pageState);
- //
- for (Portlet consumer : consumers)
- {
- PortletInvocationResponse eventResponse = deliverEvent(
- context,
- consumer,
- event,
- portletRequest.pageState,
- requestProperties.getCookies());
+ // Add events if any
+ queue.addAll(update.getEvents());
//
- if (eventResponse instanceof UpdateNavigationalStateResponse)
+ ResponseProperties updateProperties = update.getProperties();
+ if (updateProperties != null)
{
- UpdateNavigationalStateResponse update = (UpdateNavigationalStateResponse)eventResponse;
-
- // Update ns
- updateNavigationalState(context, consumer.getContext().getId(), update, portletRequest.pageState);
-
- // Add events if any
- queue.addAll(update.getEvents());
-
- //
- ResponseProperties updateProperties = update.getProperties();
- if (updateProperties != null)
- {
- requestProperties.append(update.getProperties());
- }
+ requestProperties.append(updateProperties);
}
- else if (eventResponse instanceof ErrorResponse)
- {
- // Do something here !!!!
- }
- else
- {
- // Do something here !!!!
- }
}
+ else if (eventResponse instanceof ErrorResponse)
+ {
+ // Do something here !!!!
+ }
+ else
+ {
+ // Do something here !!!!
+ }
}
-
- if (response instanceof HTTPRedirectionResponse)
- {
- HTTPRedirectionResponse redirection = (HTTPRedirectionResponse)response;
- resp.sendRedirect(redirection.getLocation());
- return;
- }
}
- else
+
+ if (response instanceof HTTPRedirectionResponse)
{
- System.out.println("Not yet handled " + response);
+ HTTPRedirectionResponse redirection = (HTTPRedirectionResponse)response;
+ context.getClientResponse().sendRedirect(redirection.getLocation());
+ return;
}
+ }
+ else
+ {
+ System.out.println("Not yet handled " + response);
+ }
-/*
- if (response instanceof RenderResponse && redirectAfterAction)
- {
- PortletURLRenderer renderer = new PortletURLRenderer(navState, portlet, req, resp);
- final RenderResponse render = (RenderResponse)response;
- String location = renderer.renderURL(new RenderURL()
- {
- public StateString getNavigationalState()
+ /*
+ if (response instanceof RenderResponse && redirectAfterAction)
{
- return render.getNavigationalState();
+ PortletURLRenderer renderer = new PortletURLRenderer(navState, portlet, req, resp);
+ final RenderResponse render = (RenderResponse)response;
+ String location = renderer.renderURL(new RenderURL()
+ {
+ public StateString getNavigationalState()
+ {
+ return render.getNavigationalState();
+ }
+ public Mode getMode()
+ {
+ return render.getMode();
+ }
+ public WindowState getWindowState()
+ {
+ return render.getWindowState();
+ }
+ }, null, null, true);
+ response = new HTTPRedirectionResponse(location);
}
- public Mode getMode()
- {
- return render.getMode();
- }
- public WindowState getWindowState()
- {
- return render.getWindowState();
- }
- }, null, null, true);
- response = new HTTPRedirectionResponse(location);
- }
-*/
+ */
- //
- render(context, requestProperties, portletRequest.pageState);
- }
- else if (containerRequest instanceof PortletResourceRequest)
+ //
+ render(context, requestProperties, portletRequest.pageState);
+ }
+
+ private void processResourceRequest(PortletResourceRequest resourceRequest) throws IOException, PortletInvokerException
+ {
+ PortletInvocationResponse response = invoke(resourceRequest);
+ HttpServletResponse resp = resourceRequest.controllerContext.getClientResponse();
+
+ //
+ if (response instanceof FragmentResponse)
{
- PortletInvocationResponse response = invoke(containerRequest);
+ FragmentResponse fragment = (FragmentResponse)response;
+ ResponseProperties props = fragment.getProperties();
//
- if (response instanceof FragmentResponse)
+ if (props != null)
{
- FragmentResponse fragment = (FragmentResponse)response;
- ResponseProperties props = fragment.getProperties();
+ renderTransportHeaders(props, resp);
+ renderCookies(props, resp);
+ }
- //
- if (props != null)
+ //
+ if (fragment.getType() == FragmentResponse.TYPE_EMPTY)
+ {
+ resp.setStatus(HttpServletResponse.SC_NO_CONTENT);
+ }
+ else
+ {
+ String contentType = fragment.getContentType();
+ if (contentType != null)
{
- renderTransportHeaders(props, resp);
- renderCookies(props, resp);
+ resp.setContentType(contentType);
}
//
- if (fragment.getType() == FragmentResponse.TYPE_EMPTY)
+ if (fragment.getType() == FragmentResponse.TYPE_BYTES)
{
- resp.setStatus(HttpServletResponse.SC_NO_CONTENT);
+ ServletOutputStream out = null;
+ try
+ {
+ out = resp.getOutputStream();
+ out.write(fragment.getBytes().toByteArray());
+ }
+ finally
+ {
+ IOTools.safeClose(out);
+ }
}
else
{
- String contentType = fragment.getContentType();
- if (contentType != null)
+ Writer writer = null;
+ try
{
- resp.setContentType(contentType);
+ writer = resp.getWriter();
+ writer.write(fragment.getChars().toString());
}
-
- //
- if (fragment.getType() == FragmentResponse.TYPE_BYTES)
+ finally
{
- ServletOutputStream out = null;
- try
- {
- out = resp.getOutputStream();
- out.write(fragment.getBytes().toByteArray());
- }
- finally
- {
- IOTools.safeClose(out);
- }
+ writer.close();
}
- else
- {
- Writer writer = null;
- try
- {
- writer = resp.getWriter();
- writer.write(fragment.getChars().toString());
- }
- finally
- {
- writer.close();
- }
- }
}
}
- else
- {
- // todo
- }
}
+ else
+ {
+ // todo
+ }
}
private PortletInvocationResponse invoke(ContainerRequest containerRequest) throws PortletInvokerException, IOException
16 years, 3 months