Uploaded image for project: 'Jetspeed (Retired)'
  1. Jetspeed (Retired)
  2. JS1-383

[FIX] Portlet Customiser doesn't display content properly if you have two instances of the same portlet

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Resolution: Fixed
    • 1.4b5-dev / CVS
    • None
    • Customizer
    • None
    • Operating System: Windows XP
      Platform: PC
    • 22712

    Description

      If you add the same portlet more than once to a pane and select "Tab Pane" as
      the layout, your portlets are not displayed properly. If you look at the PSML
      file I have listed below, I have 2 IFramePortlets but with different titles
      (Google and Yahoo). However in the pane customizer these two are both displayed
      under the name "Google".

      After tracing back to the action class ( RowColumnControllerAction.java) I
      found that it's creating a HashMap of titles using the parent portlet as the
      key. But in this case since they both have the same parent (IFramePortlet) only
      one entry survives.

      titles.put(entry.getParent(),entry.getMetaInfo().getTitle());

      This doesn't happen with MultiColumn Layouts. That uses the portlet ID as the key.

      titles.put(entry.getId(), pentry.getTitle());

      Not sure if this is a bug or a design feature ? What effect would it have if we
      change this to use the portlet ID as the key ?

      <?xml version="1.0" encoding="iso-8859-1"?>
      <portlets id="P-f71d1de6c6-10003">
      <metainfo>
      <title>My WebPages</title>
      </metainfo>
      <control name="TabControl"/>
      <controller name="TabController"/>
      <entry id="P-f71d1e2b3c-10004" parent="IFramePortlet">
      <metainfo>
      <title>Yahoo</title>
      </metainfo>
      <control name="TitlePortletControl"/>
      <parameter name="source" value="http://www.yahoo.com"/>
      </entry>
      <entry id="P-f71d1e4d26-10005" parent="IFramePortlet">
      <metainfo>
      <title>Google</title>
      </metainfo>
      <layout position="-1" size="-1">
      <property name="column" value="0"/>
      <property name="row" value="0"/>
      </layout>
      <control name="TitlePortletControl"/>
      <parameter name="source" value="http://www.google.com"/>
      </entry>
      <entry id="P-f71d27c8dc-10006" parent="HelloJSP">
      <metainfo>
      <title>HelloJSP3</title>
      </metainfo>
      </entry>
      <entry id="P-f71d27df28-10007" parent="HelloJSP">
      <metainfo>
      <title>HelloJSP2</title>
      </metainfo>
      </entry>
      <entry id="P-f71d27e38a-10008" parent="HelloJSP">
      <metainfo>
      <title>HelloJSP1</title>
      </metainfo>
      </entry>
      </portlets>

      Thanks,
      Roshan

      Attachments

        Activity

          People

            Unassigned Unassigned
            roshan741@hotmail.com Roshan
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: