JBoss Portal SVN: r12203 - docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2008-10-28 13:26:14 -0400 (Tue, 28 Oct 2008)
New Revision: 12203
Modified:
docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml
Log:
Found a typo ;)
Modified: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml
===================================================================
--- docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml 2008-10-28 17:13:26 UTC (rev 12202)
+++ docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml 2008-10-28 17:26:14 UTC (rev 12203)
@@ -38,7 +38,7 @@
However, such an <emphasis>implicit</emphasis> model of how portlets are wired together fails to handle more
complex cases. In particular, it is often the case that semantically related events or public parameters are
named differently by different portlet providers. As it is not always possible to modify the portlets to
- adjust for this minor naming difference of otherwise semnantically compatible portlets, JBoss Portal
+ adjust for this minor naming difference of otherwise semantically compatible portlets, JBoss Portal
introduces an <emphasis>explicit</emphasis> coordination model that takes precedence over the implicit model
when so required.
</para>
17 years, 6 months
JBoss Portal SVN: r12202 - examples/tags.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2008-10-28 13:13:26 -0400 (Tue, 28 Oct 2008)
New Revision: 12202
Added:
examples/tags/JBoss_Portal_2_7_0/
Log:
Tagging the examples
Copied: examples/tags/JBoss_Portal_2_7_0 (from rev 12201, examples/trunk)
17 years, 6 months
JBoss Portal SVN: r12201 - modules/cms/trunk/cms-jackrabbit/src/test/java/org/jboss/portal/cms/test/workflow.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2008-10-28 11:09:34 -0400 (Tue, 28 Oct 2008)
New Revision: 12201
Modified:
modules/cms/trunk/cms-jackrabbit/src/test/java/org/jboss/portal/cms/test/workflow/AbstractWorkflowTestCase.java
Log:
Attempt to fix the multi db testsuite
Modified: modules/cms/trunk/cms-jackrabbit/src/test/java/org/jboss/portal/cms/test/workflow/AbstractWorkflowTestCase.java
===================================================================
--- modules/cms/trunk/cms-jackrabbit/src/test/java/org/jboss/portal/cms/test/workflow/AbstractWorkflowTestCase.java 2008-10-28 14:29:21 UTC (rev 12200)
+++ modules/cms/trunk/cms-jackrabbit/src/test/java/org/jboss/portal/cms/test/workflow/AbstractWorkflowTestCase.java 2008-10-28 15:09:34 UTC (rev 12201)
@@ -21,37 +21,44 @@
*/
package org.jboss.portal.cms.test.workflow;
+import java.util.Locale;
+
import javax.naming.InitialContext;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
-
import org.jboss.portal.cms.impl.interceptors.ApprovalWorkflowInterceptor;
import org.jboss.portal.cms.impl.jcr.JCRCMS;
+import org.jboss.portal.cms.test.AbstractCMSTestCase;
+import org.jboss.portal.cms.test.commands.CMSInterceptorStackFactory;
import org.jboss.portal.cms.workflow.ApprovePublish;
import org.jboss.portal.cms.workflow.ApprovePublishImpl;
-import org.jboss.portal.cms.test.commands.AbstractCommandTestCase;
-import org.jboss.portal.cms.test.commands.CMSInterceptorStackFactory;
-
import org.jboss.portal.common.invocation.Interceptor;
+import org.jboss.portal.common.util.CLResourceLoader;
+import org.jboss.portal.common.util.LoaderResource;
+import org.jboss.portal.common.xml.XMLTools;
import org.jboss.portal.identity.IdentityContext;
import org.jboss.portal.identity.IdentityServiceController;
+import org.jboss.portal.identity.User;
import org.jboss.portal.identity.UserModule;
-import org.jboss.portal.identity.User;
import org.jboss.portal.identity.db.HibernateRoleImpl;
import org.jboss.portal.identity.db.HibernateUserImpl;
import org.jboss.portal.server.impl.invocation.JBossInterceptorStack;
+import org.jboss.unit.api.pojo.annotations.Create;
+import org.jboss.unit.api.pojo.annotations.Destroy;
import org.jboss.unit.api.pojo.annotations.Parameter;
-import org.jboss.unit.mc.api.annotations.Bootstrap;
+import org.w3c.dom.Document;
/** @author Sohil Shah - sohil.shah(a)jboss.com - Nov 30, 2006 */
-public abstract class AbstractWorkflowTestCase extends AbstractCommandTestCase
+public abstract class AbstractWorkflowTestCase extends AbstractCMSTestCase
{
private String standardIdentityConfig;
private String identityConfig;
+ protected JCRCMS service = null;
+
/**
*
*/
@@ -65,14 +72,29 @@
super();
}
- /**
- *
- */
+ @Create
public void setUp() throws Exception
{
//override the configration location to include workflow services
// this.configuration = "jboss-beans-workflow.xml";
+
+ LoaderResource res = new CLResourceLoader().getResource("jcr/repository.xml");
+ Document config = res.asDocument(XMLTools.getDocumentBuilderFactory().newDocumentBuilder());
+
+ service = new JCRCMS();
+ service.setDoChecking(true);
+ service.setDefaultLocale(Locale.ENGLISH.getLanguage());
+ service.setDefaultContentLocation("default-content/default");
+
+ service.setConfig(config.getDocumentElement());
+ service.setRepositoryName("repo");
+ service.setHomeDir("repotest-" + getDataSourceName());
+ service.setJNDIName("java:portal/CMS");
+ service.startService();
+
+ /*
super.setUp();
+ */
ApprovalWorkflowInterceptor workflowInterceptor = this.getApprovalWorkflowInterceptor();
ApprovePublish approvePublish = this.getApprovePublish();
@@ -95,12 +117,10 @@
this.userModule = (UserModule)identityService.getIdentityContext().getObject(IdentityContext.TYPE_USER_MODULE);
}
- /**
- *
- */
+ @Destroy
public void tearDown() throws Exception
{
- super.tearDown();
+ service.stopService();
this.userModule = null;
}
17 years, 6 months
JBoss Portal SVN: r12200 - tags/JBoss_Portal_2_7_0/testsuite.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2008-10-28 10:29:21 -0400 (Tue, 28 Oct 2008)
New Revision: 12200
Modified:
tags/JBoss_Portal_2_7_0/testsuite/build.xml
Log:
Removing CMS tests
Modified: tags/JBoss_Portal_2_7_0/testsuite/build.xml
===================================================================
--- tags/JBoss_Portal_2_7_0/testsuite/build.xml 2008-10-28 14:06:09 UTC (rev 12199)
+++ tags/JBoss_Portal_2_7_0/testsuite/build.xml 2008-10-28 14:29:21 UTC (rev 12200)
@@ -107,9 +107,6 @@
<sequential>
<antcall target="agent-deploy"/>
<antcall target="internal-test-module">
- <param name="module" value="cms"/>
- </antcall>
- <antcall target="internal-test-module">
<param name="module" value="faces"/>
</antcall>
<antcall target="internal-test-module">
@@ -155,8 +152,6 @@
<target name="clean">
<!-- remove generated test xml files -->
<delete>
- <fileset dir="../cms" includes="output/tests/*.log"/>
- <fileset dir="../cms" includes="output/tests/TEST-*.xml,output/tests/TEST-*.txt"/>
<fileset dir="../core" includes="output/tests/*.log"/>
<fileset dir="../core" includes="output/tests/TEST-*.xml,output/tests/TEST-*.txt"/>
<fileset dir="../faces" includes="*.log"/>
17 years, 6 months
JBoss Portal SVN: r12199 - docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2008-10-28 10:06:09 -0400 (Tue, 28 Oct 2008)
New Revision: 12199
Modified:
docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/modules/coordination.xml
Log:
- Wrapped images in figure or example elements.
- Minor improvements.
Modified: docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/modules/coordination.xml
===================================================================
--- docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/modules/coordination.xml 2008-10-28 13:43:53 UTC (rev 12198)
+++ docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/modules/coordination.xml 2008-10-28 14:06:09 UTC (rev 12199)
@@ -95,11 +95,15 @@
is available on page configuration screens: the ability to configure coordination using the
<literal>Coordination</literal> action:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/coordination.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/coordination.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
<para>
Clicking on that link will bring you to the coordination configuration for that particular page. The
@@ -118,11 +122,15 @@
</itemizedlist>
We will look at the specific configuration and what each of these concepts mean later. Here is how the
interface looks like for a page, with both the alias and parameter bindings section collapsed:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/coordination_event.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/coordination_event.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
</sect2>
</sect1>
@@ -144,11 +152,15 @@
<literal>paramC</literal> to the "<literal>alias</literal>" name so that JBoss Portal's event bus can
transmit that value to interested portlets on a given page when the requested page URL contains a value
for the appropriate URL parameter:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/alias_example.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <example>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/alias_example.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </example>
+
</para>
</sect2>
<sect2>
@@ -220,25 +232,37 @@
<title>Graphical configuration</title>
<para>
Creating a new alias binding is done by first selecting one or more public parameters that will be used for the binding:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_alias_1.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_alias_1.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
The interface will prompt you for a name for this new binding:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_alias_2.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_alias_2.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Clicking on <literal>Create alias</literal> will create the new binding and it will appear in the existing binding lists:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_alias_3.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_alias_3.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
</sect2>
</sect1>
@@ -265,13 +289,16 @@
to communicate even if both parameters were semantically equivalent. JBoss Portal's explicit coordination
model allows users to explicit the semantic link between both parameter names such that, when
<literal>Portlet A</literal> updates the value of <literal>{nsA}paramA</literal>, <literal>Portlet B</literal>
- gets notified of the update via a change of value of <literal>{nsB}paramB</literal>:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/parameter_example.png" format="png" align="center"
- valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ gets notified of the update via a change of value of <literal>{nsB}paramB</literal>:
+ <example>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/parameter_example.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </example>
+
</para>
</sect2>
@@ -354,25 +381,37 @@
<title>Graphical configuration</title>
<para>
Creating a new parameter binding is done by first selecting a public parameter / window from the list:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_parameter_1.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_parameter_1.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
The interface will prompt you for a name for this new binding:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_parameter_2.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_parameter_2.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Clicking on <literal>Create binding</literal> will create the new binding and it will appear in the existing binding lists:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_parameter_3.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_parameter_3.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
</sect2>
</sect1>
@@ -495,52 +534,76 @@
<para>
Creating a new event wiring is fairly easy as the interface will guide you. First, it will present a list of
available produced events on this page:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_1.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_1.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Select an event. The interface will display the list of all windows producing this event for this page. Note
also that your selection is summarized on the right side of the screen:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_2.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_2.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Selecting one or more windows (here we selected two) will continue the process. The interface will now
present you with the list of consumed events on this page, while your new event wiring is still be being
built up on the right side of the screen:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_3.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_3.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Select a destination event and be presented with the list of windows consuming that event:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_4.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_4.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Select one or more destination windows to which the source event will be mapped via the destination event.
You will now be ask to name your new event wiring after having the opportunity to review what will be
created. We name our new event wiring <literal>foo</literal> here:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_5.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_5.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Click on the <literal>Create wiring</literal> button. Your new event wiring has been created and will appear
in the list of existing wirings:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_6.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_6.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
</sect2>
</sect1>
@@ -555,19 +618,18 @@
</para>
<programlisting role="XML"><![CDATA[<portal>
- ...
+ ...
+ <coordination>
+ <bindings>
+ <implicit-mode>TRUE</implicit-mode>
+ </bindings>
+ <wirings>
+ <implicit-mode>FALSE</implicit-mode>
+ </wirings>
+ </coordination>
+ ...
+</portal>]]></programlisting>
- <coordination>
- <bindings>
- <implicit-mode>TRUE</implicit-mode>
- </bindings>
- <wirings>
- <implicit-mode>FALSE</implicit-mode>
- </wirings>
- </coordination>
-
- </portal>]]></programlisting>
-
<para>
Specifying this <literal><implicit-mode></literal> element at the portal level allows the user to specify
which default behavior to apply to child pages. Quite reasonably, if <literal><implicit-mode></literal>
17 years, 6 months
JBoss Portal SVN: r12198 - docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules.
by portal-commits@lists.jboss.org
Author: chris.laprun(a)jboss.com
Date: 2008-10-28 09:43:53 -0400 (Tue, 28 Oct 2008)
New Revision: 12198
Modified:
docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml
Log:
- Wrapped images in figure or example elements.
- Minor improvements.
Modified: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml
===================================================================
--- docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml 2008-10-28 13:24:28 UTC (rev 12197)
+++ docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml 2008-10-28 13:43:53 UTC (rev 12198)
@@ -95,11 +95,15 @@
is available on page configuration screens: the ability to configure coordination using the
<literal>Coordination</literal> action:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/coordination.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/coordination.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
<para>
Clicking on that link will bring you to the coordination configuration for that particular page. The
@@ -118,11 +122,15 @@
</itemizedlist>
We will look at the specific configuration and what each of these concepts mean later. Here is how the
interface looks like for a page, with both the alias and parameter bindings section collapsed:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/coordination_event.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/coordination_event.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
</sect2>
</sect1>
@@ -144,11 +152,15 @@
<literal>paramC</literal> to the "<literal>alias</literal>" name so that JBoss Portal's event bus can
transmit that value to interested portlets on a given page when the requested page URL contains a value
for the appropriate URL parameter:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/alias_example.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <example>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/alias_example.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </example>
+
</para>
</sect2>
<sect2>
@@ -220,25 +232,37 @@
<title>Graphical configuration</title>
<para>
Creating a new alias binding is done by first selecting one or more public parameters that will be used for the binding:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_alias_1.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_alias_1.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
The interface will prompt you for a name for this new binding:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_alias_2.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_alias_2.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Clicking on <literal>Create alias</literal> will create the new binding and it will appear in the existing binding lists:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_alias_3.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_alias_3.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
</sect2>
</sect1>
@@ -265,13 +289,16 @@
to communicate even if both parameters were semantically equivalent. JBoss Portal's explicit coordination
model allows users to explicit the semantic link between both parameter names such that, when
<literal>Portlet A</literal> updates the value of <literal>{nsA}paramA</literal>, <literal>Portlet B</literal>
- gets notified of the update via a change of value of <literal>{nsB}paramB</literal>:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/parameter_example.png" format="png" align="center"
- valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ gets notified of the update via a change of value of <literal>{nsB}paramB</literal>:
+ <example>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/parameter_example.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </example>
+
</para>
</sect2>
@@ -354,25 +381,37 @@
<title>Graphical configuration</title>
<para>
Creating a new parameter binding is done by first selecting a public parameter / window from the list:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_parameter_1.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_parameter_1.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
The interface will prompt you for a name for this new binding:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_parameter_2.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_parameter_2.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Clicking on <literal>Create binding</literal> will create the new binding and it will appear in the existing binding lists:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_parameter_3.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_parameter_3.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
</sect2>
</sect1>
@@ -495,52 +534,76 @@
<para>
Creating a new event wiring is fairly easy as the interface will guide you. First, it will present a list of
available produced events on this page:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_1.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_1.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Select an event. The interface will display the list of all windows producing this event for this page. Note
also that your selection is summarized on the right side of the screen:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_2.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_2.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Selecting one or more windows (here we selected two) will continue the process. The interface will now
present you with the list of consumed events on this page, while your new event wiring is still be being
built up on the right side of the screen:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_3.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_3.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Select a destination event and be presented with the list of windows consuming that event:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_4.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_4.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Select one or more destination windows to which the source event will be mapped via the destination event.
You will now be ask to name your new event wiring after having the opportunity to review what will be
created. We name our new event wiring <literal>foo</literal> here:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_5.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_5.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
Click on the <literal>Create wiring</literal> button. Your new event wiring has been created and will appear
in the list of existing wirings:
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/coordination/create_event_6.png" format="png" align="center" valign="middle" scalefit="1"/>
- </imageobject>
- </mediaobject>
+ <figure>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/create_event_6.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
</para>
</sect2>
</sect1>
@@ -555,19 +618,18 @@
</para>
<programlisting role="XML"><![CDATA[<portal>
- ...
+ ...
+ <coordination>
+ <bindings>
+ <implicit-mode>TRUE</implicit-mode>
+ </bindings>
+ <wirings>
+ <implicit-mode>FALSE</implicit-mode>
+ </wirings>
+ </coordination>
+ ...
+</portal>]]></programlisting>
- <coordination>
- <bindings>
- <implicit-mode>TRUE</implicit-mode>
- </bindings>
- <wirings>
- <implicit-mode>FALSE</implicit-mode>
- </wirings>
- </coordination>
-
- </portal>]]></programlisting>
-
<para>
Specifying this <literal><implicit-mode></literal> element at the portal level allows the user to specify
which default behavior to apply to child pages. Quite reasonably, if <literal><implicit-mode></literal>
17 years, 6 months
JBoss Portal SVN: r12197 - in docs/tags/JBoss_Portal_2_7_0/referenceGuide/en: modules and 1 other directory.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2008-10-28 09:24:28 -0400 (Tue, 28 Oct 2008)
New Revision: 12197
Added:
docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/alias_example.png
docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/create_alias_3.png
docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/parameter_example.png
Removed:
docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/create_aliast_3.png
Modified:
docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/wiring_example.png
docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/modules/coordination.xml
Log:
- Finished first pass on coordination GUI. Would need a re-reading from a pair of fresh eyes.
- Fixed incorrect name for third step image of alias creation.
Copied: docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/alias_example.png (from rev 12196, docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/alias_example.png)
===================================================================
(Binary files differ)
Copied: docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/create_alias_3.png (from rev 12196, docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/create_alias_3.png)
===================================================================
(Binary files differ)
Deleted: docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/create_aliast_3.png
===================================================================
(Binary files differ)
Copied: docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/parameter_example.png (from rev 12196, docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/parameter_example.png)
===================================================================
(Binary files differ)
Modified: docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/images/coordination/wiring_example.png
===================================================================
(Binary files differ)
Modified: docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/modules/coordination.xml
===================================================================
--- docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/modules/coordination.xml 2008-10-28 13:12:36 UTC (rev 12196)
+++ docs/tags/JBoss_Portal_2_7_0/referenceGuide/en/modules/coordination.xml 2008-10-28 13:24:28 UTC (rev 12197)
@@ -133,29 +133,88 @@
<title>Definition</title>
<para>
- Explicit alias binding define a name of page scoped parameter that will apply
- value to specified portlet windows public parameters.
+ <emphasis>Alias bindings</emphasis> are a JBoss Portal specific feature which allows users to define an
+ alias to a public render parameter that can be used in URLs to pass a value to all portlet windows reacting
+ to the aliased public parameter(s). The syntax for the URL is as follows:
+ <literal>{portal URL}/{page name}?{alias name}={alias value}</literal>.
</para>
- <programlisting><![CDATA[http://localhost:8080/portal/portal/default/Coordination+Samples?aliasBinding1=someValue]]></programlisting>
+ <para>
+ It is, for example, possible to alias public render parameters <literal>paramA</literal> and
+ <literal>paramC</literal> to the "<literal>alias</literal>" name so that JBoss Portal's event bus can
+ transmit that value to interested portlets on a given page when the requested page URL contains a value
+ for the appropriate URL parameter:
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/alias_example.png" format="png" align="center" valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </para>
</sect2>
- <sect2>
+ <sect2>
<title>Configuration via XML</title>
- <para>TODO</para>
- <programlisting role="XML"><![CDATA[<coordination>
+ <para>
+ Explicit alias bindings can be defined in any page definition of your <literal>*-object.xml</literal>
+ descriptors. For example, this is how the example that we detailed above would be implemented, within a
+ page definition:
+ </para>
+ <programlistingco>
+ <areaspec>
+ <area id="coordination.alias.coordination" coords='2' />
+ <area id="coordination.alias.bindings" coords='3' />
+ <area id="coordination.alias.implicit" coords='4' />
+ <area id="coordination.alias.binding" coords='5' />
+ </areaspec>
+ <programlisting><![CDATA[...
+<coordination>
<bindings>
<implicit-mode>FALSE</implicit-mode>
<alias-binding>
- <id>aliasBinding1</id>
- <qname>foo</qname>
+ <id>alias</id>
+ <qname>paramA</qname>
+ <qname>paramC</qname>
</alias-binding>
- <alias-binding>
- <id>aliasBinding2</id>
- <qname>bar1</qname>
- <qname>{urn:jboss:portal:samples:daa2}daa2</qname>
- </alias-binding>
</bindings>
</coordination>]]></programlisting>
+ <calloutlist>
+ <callout arearefs="coordination.alias.coordination">
+ <para>
+ Coordination configuration is done via the newly introduced <literal><coordination></literal>
+ element.
+ </para>
+ </callout>
+ <callout arearefs="coordination.alias.bindings">
+ <para>
+ Alias bindings are defined using the <literal><bindings></literal> element. Note that this
+ element is also where parameter bindings are defined.
+ </para>
+ </callout>
+ <callout arearefs="coordination.alias.implicit">
+ <para>
+ We specify here that we want JBoss Portal to send parameter values when an explicit bindings are
+ defined (<literal><implicit-mode></literal> set to <literal>FALSE</literal>).
+ </para>
+ </callout>
+ <callout arearefs="coordination.alias.binding">
+ <para>
+ An alias binding definition consists of:
+ <itemizedlist>
+ <listitem>
+ <para>an id used to identify it</para>
+ </listitem>
+ <listitem>
+ <para>
+ a list of public render parameter names or previously defined alias or parameter binding
+ names
+ </para>
+ </listitem>
+ </itemizedlist>
+ In this example, we defined an alias binding named "<literal>alias</literal>" which aliases
+ the public render parameters <literal>paramA</literal> and <literal>paramC</literal>.
+ </para>
+ </callout>
+ </calloutlist>
+ </programlistingco>
</sect2>
<sect2>
<title>Graphical configuration</title>
@@ -190,34 +249,106 @@
<title>Definition</title>
<para>
- Binds JSR-286 shared parameters. With implicit binding parameters with the
- same public name are shared. With explicit binding any public parameters can
- share values. Windows for which such binding applies are explicitly defined.
+ A <emphasis>parameter binding</emphasis> allows users to specify that public render parameters with
+ different names are semantically equivalent so that when one such parameter is updated, all the portlets
+ that can handle such a parameter receive the update, regardless of the name of the parameter that got
+ updated. In the <emphasis>implicit</emphasis> case, portlets can only react to changes of values in
+ parameters whose name they know.
</para>
+
+ <para>
+ Consider the following example. We are deploying two portlets, <literal>Portlet A</literal> and
+ <literal>Portlet B</literal>, from different vendors and assign them to
+ <literal>Window A</literal> and <literal>Window B</literal>, respectively. Each portlet can react to a
+ specific public render parameter (<literal>{nsA}paramA</literal> and <literal>{nsB}paramB</literal>,
+ respectively). Under the <emphasis>implicit</emphasis> coordination model, these portlets wouldn't be able
+ to communicate even if both parameters were semantically equivalent. JBoss Portal's explicit coordination
+ model allows users to explicit the semantic link between both parameter names such that, when
+ <literal>Portlet A</literal> updates the value of <literal>{nsA}paramA</literal>, <literal>Portlet B</literal>
+ gets notified of the update via a change of value of <literal>{nsB}paramB</literal>:
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/parameter_example.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </para>
+
</sect2>
<sect2>
<title>Configuration via XML</title>
- <para>TODO</para>
- <programlisting role="XML"><![CDATA[<coordination>
+ <para>
+ Explicit parameter bindings can be defined in any page definition of your <literal>*-object.xml</literal>
+ descriptors. For example, this is how the example that we detailed above would be implemented, within a
+ page definition:
+ </para>
+ <programlistingco>
+ <areaspec>
+ <area id="coordination.parameter.coordination" coords='2' />
+ <area id="coordination.parameter.bindings" coords='3' />
+ <area id="coordination.parameter.binding" coords='4' />
+ <area id="coordination.parameter.windowcoord" coords='6' />
+ </areaspec>
+ <programlisting><![CDATA[...
+<coordination>
<bindings>
- <implicit-mode>FALSE</implicit-mode>
<parameter-binding>
- <id>parameterBinding1</id>
+ <id>parameterBinding</id>
<window-coordination>
- <window-name>SomePortletWindow1</window-name>
- <qname>foo</qname>
+ <window-name>Window A</window-name>
+ <qname>{nsA}paramA</qname>
</window-coordination>
<window-coordination>
- <window-name>SomePortletWindow2</window-name>
- <qname>foo</qname>
+ <window-name>Window B</window-name>
+ <qname>{nsB}paramB</qname>
</window-coordination>
- <window-coordination>
- <window-name>SomePortletWindow2</window-name>
- <qname>{urn:jboss:portal:samples:daa1}daa1</qname>
- </window-coordination>
</parameter-binding>
</bindings>
</coordination>]]></programlisting>
+ <calloutlist>
+ <callout arearefs="coordination.parameter.coordination">
+ <para>
+ Coordination configuration is done via the newly introduced <literal><coordination></literal>
+ element.
+ </para>
+ </callout>
+ <callout arearefs="coordination.parameter.bindings">
+ <para>
+ Parameter bindings are defined using the <literal><bindings></literal> element. Note that this
+ element is also where alias bindings are defined. Note here that we don't specify a value for the
+ <literal><implicit-mode></literal> element, it will thus default to <literal>TRUE</literal>,
+ meaning that implicit binding of parameters will also be performed by JBoss Portal in addition to
+ the explicit binding we are defining here.
+ </para>
+ </callout>
+ <callout arearefs="coordination.parameter.binding">
+ <para>
+ A parameter binding definition consists of:
+ <itemizedlist>
+ <listitem>
+ <para>an id used to identify it</para>
+ </listitem>
+ <listitem>
+ <para>
+ a list of <literal><window-coordination></literal> elements identifying which
+ parameters will be bound for which portlets
+ </para>
+ </listitem>
+ </itemizedlist>
+ In this example, we defined a parameter binding named "<literal>parameterBinding</literal>" which
+ specifies that whenever <literal>Window A</literal> or <literal>Window B</literal> updates the
+ value of the public parameter <literal>{nsA}paramA</literal> or <literal>{nsA}paramA</literal>
+ (respectively), the other will receive the new value for the public render parameter it knows about.
+ </para>
+ </callout>
+ <callout arearefs="coordination.parameter.windowcoord">
+ <para>
+ A window / parameter name pair identifying either a public parameter to be wired.
+ </para>
+ </callout>
+ </calloutlist>
+ </programlistingco>
+
</sect2>
<sect2>
<title>Graphical configuration</title>
17 years, 6 months
JBoss Portal SVN: r12196 - in docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en: modules and 1 other directory.
by portal-commits@lists.jboss.org
Author: chris.laprun(a)jboss.com
Date: 2008-10-28 09:12:36 -0400 (Tue, 28 Oct 2008)
New Revision: 12196
Added:
docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/alias_example.png
docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/create_alias_3.png
docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/parameter_example.png
Removed:
docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/create_aliast_3.png
Modified:
docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/wiring_example.png
docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml
Log:
- Finished first pass on coordination GUI. Would need a re-reading from a pair of fresh eyes.
- Fixed incorrect name for third step image of alias creation.
Added: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/alias_example.png
===================================================================
(Binary files differ)
Property changes on: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/alias_example.png
___________________________________________________________________
Name: svn:mime-type
+ image/png
Copied: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/create_alias_3.png (from rev 12192, docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/create_aliast_3.png)
===================================================================
(Binary files differ)
Property changes on: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/create_alias_3.png
___________________________________________________________________
Name: svn:mime-type
+ image/png
Deleted: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/create_aliast_3.png
===================================================================
(Binary files differ)
Added: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/parameter_example.png
===================================================================
(Binary files differ)
Property changes on: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/parameter_example.png
___________________________________________________________________
Name: svn:mime-type
+ image/png
Modified: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/images/coordination/wiring_example.png
===================================================================
(Binary files differ)
Modified: docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml
===================================================================
--- docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml 2008-10-28 09:16:42 UTC (rev 12195)
+++ docs/branches/JBoss_Portal_Branch_2_7/referenceGuide/en/modules/coordination.xml 2008-10-28 13:12:36 UTC (rev 12196)
@@ -133,29 +133,88 @@
<title>Definition</title>
<para>
- Explicit alias binding define a name of page scoped parameter that will apply
- value to specified portlet windows public parameters.
+ <emphasis>Alias bindings</emphasis> are a JBoss Portal specific feature which allows users to define an
+ alias to a public render parameter that can be used in URLs to pass a value to all portlet windows reacting
+ to the aliased public parameter(s). The syntax for the URL is as follows:
+ <literal>{portal URL}/{page name}?{alias name}={alias value}</literal>.
</para>
- <programlisting><![CDATA[http://localhost:8080/portal/portal/default/Coordination+Samples?aliasBinding1=someValue]]></programlisting>
+ <para>
+ It is, for example, possible to alias public render parameters <literal>paramA</literal> and
+ <literal>paramC</literal> to the "<literal>alias</literal>" name so that JBoss Portal's event bus can
+ transmit that value to interested portlets on a given page when the requested page URL contains a value
+ for the appropriate URL parameter:
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/alias_example.png" format="png" align="center" valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </para>
</sect2>
- <sect2>
+ <sect2>
<title>Configuration via XML</title>
- <para>TODO</para>
- <programlisting role="XML"><![CDATA[<coordination>
+ <para>
+ Explicit alias bindings can be defined in any page definition of your <literal>*-object.xml</literal>
+ descriptors. For example, this is how the example that we detailed above would be implemented, within a
+ page definition:
+ </para>
+ <programlistingco>
+ <areaspec>
+ <area id="coordination.alias.coordination" coords='2' />
+ <area id="coordination.alias.bindings" coords='3' />
+ <area id="coordination.alias.implicit" coords='4' />
+ <area id="coordination.alias.binding" coords='5' />
+ </areaspec>
+ <programlisting><![CDATA[...
+<coordination>
<bindings>
<implicit-mode>FALSE</implicit-mode>
<alias-binding>
- <id>aliasBinding1</id>
- <qname>foo</qname>
+ <id>alias</id>
+ <qname>paramA</qname>
+ <qname>paramC</qname>
</alias-binding>
- <alias-binding>
- <id>aliasBinding2</id>
- <qname>bar1</qname>
- <qname>{urn:jboss:portal:samples:daa2}daa2</qname>
- </alias-binding>
</bindings>
</coordination>]]></programlisting>
+ <calloutlist>
+ <callout arearefs="coordination.alias.coordination">
+ <para>
+ Coordination configuration is done via the newly introduced <literal><coordination></literal>
+ element.
+ </para>
+ </callout>
+ <callout arearefs="coordination.alias.bindings">
+ <para>
+ Alias bindings are defined using the <literal><bindings></literal> element. Note that this
+ element is also where parameter bindings are defined.
+ </para>
+ </callout>
+ <callout arearefs="coordination.alias.implicit">
+ <para>
+ We specify here that we want JBoss Portal to send parameter values when an explicit bindings are
+ defined (<literal><implicit-mode></literal> set to <literal>FALSE</literal>).
+ </para>
+ </callout>
+ <callout arearefs="coordination.alias.binding">
+ <para>
+ An alias binding definition consists of:
+ <itemizedlist>
+ <listitem>
+ <para>an id used to identify it</para>
+ </listitem>
+ <listitem>
+ <para>
+ a list of public render parameter names or previously defined alias or parameter binding
+ names
+ </para>
+ </listitem>
+ </itemizedlist>
+ In this example, we defined an alias binding named "<literal>alias</literal>" which aliases
+ the public render parameters <literal>paramA</literal> and <literal>paramC</literal>.
+ </para>
+ </callout>
+ </calloutlist>
+ </programlistingco>
</sect2>
<sect2>
<title>Graphical configuration</title>
@@ -190,34 +249,106 @@
<title>Definition</title>
<para>
- Binds JSR-286 shared parameters. With implicit binding parameters with the
- same public name are shared. With explicit binding any public parameters can
- share values. Windows for which such binding applies are explicitly defined.
+ A <emphasis>parameter binding</emphasis> allows users to specify that public render parameters with
+ different names are semantically equivalent so that when one such parameter is updated, all the portlets
+ that can handle such a parameter receive the update, regardless of the name of the parameter that got
+ updated. In the <emphasis>implicit</emphasis> case, portlets can only react to changes of values in
+ parameters whose name they know.
</para>
+
+ <para>
+ Consider the following example. We are deploying two portlets, <literal>Portlet A</literal> and
+ <literal>Portlet B</literal>, from different vendors and assign them to
+ <literal>Window A</literal> and <literal>Window B</literal>, respectively. Each portlet can react to a
+ specific public render parameter (<literal>{nsA}paramA</literal> and <literal>{nsB}paramB</literal>,
+ respectively). Under the <emphasis>implicit</emphasis> coordination model, these portlets wouldn't be able
+ to communicate even if both parameters were semantically equivalent. JBoss Portal's explicit coordination
+ model allows users to explicit the semantic link between both parameter names such that, when
+ <literal>Portlet A</literal> updates the value of <literal>{nsA}paramA</literal>, <literal>Portlet B</literal>
+ gets notified of the update via a change of value of <literal>{nsB}paramB</literal>:
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/coordination/parameter_example.png" format="png" align="center"
+ valign="middle" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </para>
+
</sect2>
<sect2>
<title>Configuration via XML</title>
- <para>TODO</para>
- <programlisting role="XML"><![CDATA[<coordination>
+ <para>
+ Explicit parameter bindings can be defined in any page definition of your <literal>*-object.xml</literal>
+ descriptors. For example, this is how the example that we detailed above would be implemented, within a
+ page definition:
+ </para>
+ <programlistingco>
+ <areaspec>
+ <area id="coordination.parameter.coordination" coords='2' />
+ <area id="coordination.parameter.bindings" coords='3' />
+ <area id="coordination.parameter.binding" coords='4' />
+ <area id="coordination.parameter.windowcoord" coords='6' />
+ </areaspec>
+ <programlisting><![CDATA[...
+<coordination>
<bindings>
- <implicit-mode>FALSE</implicit-mode>
<parameter-binding>
- <id>parameterBinding1</id>
+ <id>parameterBinding</id>
<window-coordination>
- <window-name>SomePortletWindow1</window-name>
- <qname>foo</qname>
+ <window-name>Window A</window-name>
+ <qname>{nsA}paramA</qname>
</window-coordination>
<window-coordination>
- <window-name>SomePortletWindow2</window-name>
- <qname>foo</qname>
+ <window-name>Window B</window-name>
+ <qname>{nsB}paramB</qname>
</window-coordination>
- <window-coordination>
- <window-name>SomePortletWindow2</window-name>
- <qname>{urn:jboss:portal:samples:daa1}daa1</qname>
- </window-coordination>
</parameter-binding>
</bindings>
</coordination>]]></programlisting>
+ <calloutlist>
+ <callout arearefs="coordination.parameter.coordination">
+ <para>
+ Coordination configuration is done via the newly introduced <literal><coordination></literal>
+ element.
+ </para>
+ </callout>
+ <callout arearefs="coordination.parameter.bindings">
+ <para>
+ Parameter bindings are defined using the <literal><bindings></literal> element. Note that this
+ element is also where alias bindings are defined. Note here that we don't specify a value for the
+ <literal><implicit-mode></literal> element, it will thus default to <literal>TRUE</literal>,
+ meaning that implicit binding of parameters will also be performed by JBoss Portal in addition to
+ the explicit binding we are defining here.
+ </para>
+ </callout>
+ <callout arearefs="coordination.parameter.binding">
+ <para>
+ A parameter binding definition consists of:
+ <itemizedlist>
+ <listitem>
+ <para>an id used to identify it</para>
+ </listitem>
+ <listitem>
+ <para>
+ a list of <literal><window-coordination></literal> elements identifying which
+ parameters will be bound for which portlets
+ </para>
+ </listitem>
+ </itemizedlist>
+ In this example, we defined a parameter binding named "<literal>parameterBinding</literal>" which
+ specifies that whenever <literal>Window A</literal> or <literal>Window B</literal> updates the
+ value of the public parameter <literal>{nsA}paramA</literal> or <literal>{nsA}paramA</literal>
+ (respectively), the other will receive the new value for the public render parameter it knows about.
+ </para>
+ </callout>
+ <callout arearefs="coordination.parameter.windowcoord">
+ <para>
+ A window / parameter name pair identifying either a public parameter to be wired.
+ </para>
+ </callout>
+ </calloutlist>
+ </programlistingco>
+
</sect2>
<sect2>
<title>Graphical configuration</title>
17 years, 6 months
JBoss Portal SVN: r12195 - docs/tags.
by portal-commits@lists.jboss.org
Author: thomas.heute(a)jboss.com
Date: 2008-10-28 05:16:42 -0400 (Tue, 28 Oct 2008)
New Revision: 12195
Added:
docs/tags/JBoss_Portal_2_7_0/
Log:
Tagging docs
Copied: docs/tags/JBoss_Portal_2_7_0 (from rev 12194, docs/branches/JBoss_Portal_Branch_2_7)
17 years, 6 months