burtonator wrote:
> >
> > Still not really sure what your point is. I believe you are saying that once a user
> > has chosen a Portlet there's no easy way for the customizer to let him chose
> > where he wants to put it. I thought my step by step process or XSLT transformed GUI
> > described in my first reply would be enough.
>
> There are multiple PortletSets within a give PSML document... how can
> the customizer figure out which one without some type of ID/name? :(
>
There's definitely a need for an ID, I agree.
> >
> > Well, XML <portlets> <=> Java PortletSet just as XML <entry> <=> Java <portlet>,
> > I don't see why we can't write the GUID in the PSML.
>
> I think we need to change <portlets> to <portletset> and <entry> to
> <portlet>
>
> Thoughts?
>
The names were chosen because it avoided class name conflict in the code. If we
have a <portlet> element Castor will create <package>.Portlet class which will be
ambiguous to org.apache.jetspeed.portal.Portlet and thus we'll need to use
the fully qualified names, which is a real pain. (Java doesn't seem to recognize
"shortcut" import statements anymore)
> Also. If a human chooses the GUID it can't really be a GUID. We don't
> have enough randomness for 128bit uniqueness :(
>
Why should a human chose a GUID ? When a PSML is first loaded any element without
GUID can be assigned a GUID which'll be stored in the file...
> > >
> > > I looked at it... Everything seems to match up correctly. Do we need
> > > <layout position="1"> (I mean just the position attribute). Can't we
> > > just use the way it appears in the DOM?
> > >
> > > This seems to bind layout to the set. I would rather just assume the
> > > default.
> > >
> >
> > This is due to a limitation of the PortletSet factory, implied by the use of
>Castor.
> > - Castor doesn't let you access all the children of a given element, so you must
> > query them by type.
> > - Castor doesn't handle type inheritance so can't put a relation between <entry>
> > and <portlets> elements.
> >
> > All this means that when the factory needs to instanciate a set, it first queries
>and
> > instanciate all <portlets> children of this set and then all <entry> children. So
>if
> > you have in your PSML a set with mixed content (<portlets> and <entry>), your
><entry>
> > will appear after the <portlets> whatever their order in the PSML unless you
> > explicitely include the layout position.
>
> uh?? I don't think so .. I mean you could just nest getPortlets() and
> keep going until it returns null. This way you can call getEntry() on
> your Portlets. Then you can have an array of Entrys that are ordered
> correctly. Right?
>
That's what is done in the code. The issue only arise when they're both
portlets and entry children in a portlet, since Castor doesn't give a
getChildren() call. Just have a look at the factory... ;)
> > If you have only homogeneous portletsets, you can go without <layout position="">
>and
> > rely on document order. For the purpose of building a simple customizer, you can
> > chose to never mix content and never put position attributes.
> >
> > Once the Castor issue is dealt with, either by improving Castor or using a straight
> > XML parser to handle the files, layout would only be required for constraint-based
> > layout strategy such as the mythic GridBagPortletController. All the currently
> > implemented controllers can work properly xith the implicit position (except grid
> > but it very simple to patch).
>
> Yes. This is a good point. ug.
>
> It would be redundant. But maybe we can solve this by keeping the
> layout and just using may different sets. Each for different layout and
> different controllers to use.
>
I'm still waiting for your complete markup example, otherwise I can't really comment
on its merit.
--
Rapha�l Luta - [EMAIL PROTECTED]
--
--------------------------------------------------------------
Please read the FAQ! <http://java.apache.org/faq/>
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
Archives and Other: <http://java.apache.org/main/mail.html>
Problems?: [EMAIL PROTECTED]