Author: smumford
Date: 2013-01-17 00:02:14 -0500 (Thu, 17 Jan 2013)
New Revision: 9057
Modified:
epp/docs/branches/6.0/Developer_Guide/en-US/chapter-4-GDG_Portal_Development.xml
Log:
Corrected invalid XML
Modified:
epp/docs/branches/6.0/Developer_Guide/en-US/chapter-4-GDG_Portal_Development.xml
===================================================================
---
epp/docs/branches/6.0/Developer_Guide/en-US/chapter-4-GDG_Portal_Development.xml 2013-01-17
04:33:07 UTC (rev 9056)
+++
epp/docs/branches/6.0/Developer_Guide/en-US/chapter-4-GDG_Portal_Development.xml 2013-01-17
05:02:14 UTC (rev 9057)
@@ -1,100 +1,125 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" []>
-<chapter id="sid-8094155">
- <title>Portal Development</title>
- <section id="sid-7372962">
- <title>Portal containers</title>
- <para>
+ <chapter id="sid-8094155">
+ <title>Portal Development</title>
+
+ <section id="sid-7372962">
+ <title>Portal containers</title>
+
+ <para>
In a single instance (or cluster) of JBoss Portal Platform, multiple portals
can be running and share resources with other portals with two levels of granularity:
</para>
- <itemizedlist>
- <listitem>
- <para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
Portal Containers: A portal container can host multiple sites, and a
JBoss Portal Platform instance can host multiple portal containers
</para>
- </listitem>
- <listitem>
- <para>
+ </listitem>
+
+ <listitem>
+ <para>
Site: A site can have a unique identity, with its own skin applied to a
set of pages.
</para>
- </listitem>
- </itemizedlist>
- <para>
+ </listitem>
+ </itemizedlist>
+
+ <para>
The biggest granularity is what is called "Portal
Containers". A Portal Container can host multiple "Sites".
Those two components have a unique identifier that can be found in the default URL mapping
according to the following scheme: <code><ulink
url="http://localhost:8080/"/><portalcontainer>/<site>
</code>
</para>
+
<para>
When creating a website, you can either create a portal container or extend
an existing one. Extending an existing portal container, such as the default one provided
with JBoss Portal Platform, is the recommended option because you only need to customize
it to suit your requirements. Another benefit of the extension method is that upgrades
consist of copying the newer distribution archives in place of the originals. This upgrade
method is not possible if the distribution archives have been modified.
</para>
+
<para>
While running multiple portal containers is possible, it's
recommended to keep those on separate installations. Note that multiple websites can run
in a single portal container and share some services.
</para>
+
<para>
The procedure for creating portal containers and extending existing portal
containers is similar: create an enterprise archive (EAR) containing configuration
details, runnable code and static resources.
</para>
-
- <figure>
- <title>Example</title>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" scale="100"
fileref="images/7372962/portalextensionstructure.png"
format="PNG"/>
- </imageobject>
- <imageobject role="fo">
- <imagedata width="150mm" align="center"
fileref="images/7372962/portalextensionstructure.png"
format="PNG"/>
- </imageobject>
- </mediaobject>
- </figure>
- </para>
- <section id="sid-7372962_GDG-Portalcontainers-Portalextension">
- <title>Portal extension</title>
- <para>
+
+ <figure>
+ <title>Example</title>
+
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" scale="100"
fileref="images/7372962/portalextensionstructure.png"
format="PNG"/>
+ </imageobject>
+
+ <imageobject role="fo">
+ <imagedata width="150mm" align="center"
fileref="images/7372962/portalextensionstructure.png"
format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <section id="sid-7372962_GDG-Portalcontainers-Portalextension">
+ <title>Portal extension</title>
+
+ <para>
A portal extension is packaged as an Enterprise ARchive (EAR), a
configuration file allows to define which services are required and by ordering those, it
is possible to modify some elements. It can be a configuration setting, a translation, a
visual template, a page to add.
</para>
- <para>
+
+ <para>
Portal extensions can shadow existing services, a portal will usually be
composed of various extensions, which usually add services.
</para>
- <figure>
- <title>Example</title>
- <mediaobject>
- <imageobject role="html">
- <imagedata align="center" scale="100"
fileref="images/7372962/portalExtensions.png" format="PNG"/>
- </imageobject>
- </mediaobject>
- </figure>
- <para>
+
+ <figure>
+ <title>Example</title>
+
+ <mediaobject>
+ <imageobject role="html">
+ <imagedata align="center" scale="100"
fileref="images/7372962/portalExtensions.png" format="PNG"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>
In a portal extension, elements are shadowed by using the same directory
location, so if you want to rewrite the groovy template of the HomePagePortlet which is
located in
<filename>gatein.ear/02portal.war/templates/groovy/webui/component/UIHomePagePortlet.gtmpl</filename>,
it would be in an extension at a location such as
<filename>myExtension/myWar.war/templates/groovy/webui/component/UIHomePagePortlet.gtmpl</filename>.
The ordering will be defined by the portal extension configuration.
</para>
- </section>
- </section>
- <section id="sid-8094158">
- <title>Visual identity</title>
- <para>
+ </section>
+ </section>
+
+ <section id="sid-8094158">
+ <title>Visual identity</title>
+
+ <para>
A portal visual identity is made of HTML produced as a result of portal
aggregation (the components that make a page like columns and rows combined with the
content produced by the portlets) and associated CSS files.
</para>
- <para>
-JBoss Portal Platform allows to deploy multiple skins consisting of CSS files, which
makes it possible to apply styling to the page compositions and components of a page
(portlets). Different skins can be applied to the different websites, also if made
available to the users, they can choose their preferred skin.
+
+ <para>
+ JBoss Portal Platform allows to deploy multiple skins consisting of CSS
files, which makes it possible to apply styling to the page compositions and components of
a page (portlets). Different skins can be applied to the different websites, also if made
available to the users, they can choose their preferred skin.
</para>
- <section
id="sid-8094158_GDG-Visualidentity-Customizingtheloginpage">
- <title>Customizing the login page</title>
- <para>
+
+ <section
id="sid-8094158_GDG-Visualidentity-Customizingtheloginpage">
+ <title>Customizing the login page</title>
+
+ <para>
When accessing a page that requires privileges, a login page is shown and
it can be customized by using an extension. To do so, it would be enough to copy the file
located at:
</para>
- <example>
- <title>Login JSP</title>
-
<programlisting>gatein.ear/02portal.war/login/jsp/login.jsp</programlisting>
- </example>
- <para>
+
+ <example>
+ <title>Login JSP</title>
+<programlisting>gatein.ear/02portal.war/login/jsp/login.jsp</programlisting>
+ </example>
+
+ <para>
and include it in a portal extension such as
myExtension.ear/myWar.war/login/jsp/login.jsp
</para>
- <para>
+
+ <para>
All the logic must be carefully kept in the login page so that the portal
will keep working as it should.
</para>
- <para>
+
+ <para>
To modify the modal window which pops up when the user decides to sign-in,
the extension would have a modified copy of:
</para>
- <example>
- <title>Login Form</title>
-
<programlisting>gatein.ear/02portal.war/groovy/portal/webui/UILoginForm.gtmpl</programlisting>
- </example>
- </section>
- </section>
-</chapter>
+
+ <example>
+ <title>Login Form</title>
+<programlisting>gatein.ear/02portal.war/groovy/portal/webui/UILoginForm.gtmpl</programlisting>
+ </example>
+ </section>
+ </section>
+ </chapter>
Show replies by date