The PSML branch just landed.
Everything builds OK and runs OK on my test computer with a fresb checkout
(NT/Apache/Jserv) :)
Package differences
===================
The main changes are in the portal packages which has now this class hierarchy :
+-----------+
+------->| Portlet |
| +-----------+
| ^
| (Composite) |
| +-----------+ controller +-------------------+
+------<>| PortletSet|---------------|>| PortletController |
+-----------+ (Strategy) +-------------------+
^ ^
(Decorator) | +---------+--------+
+-----------------+ | |
| PortletControl | +-----------------+ +------------------+
+-----------------+ |DefaultController| | CardController |
^ +-----------------+ +------------------+
|
+------------------+----------------+
| | |
+---------------+ +-----------------+ +----------------+
| TitledControl | | PanedControl | | BorderControl |
+---------------+ +-----------------+ +----------------+
This allows in particular nested portletSets constructs which can be used to specify
group layout/skin settings. Try the default.psml file in the content directory
to see a rendition example.
The available PortletControllers and PortletControls are now defined in their
respective controllers and controls subpackages.
Each major portal entities (Portlet, PortletSet, PortletControl, PortletController)
has also access to its own Config object, so that you can pass init parameters
in the portletmarkup.
Markup differences
==================
The main difference is that we now have 2 distinct markups:
- portletmarkup: define the portlet selection and display organisation/
personalization for a given user.
- registrymarkup: defines all the available resources in the portal system,
currently only the portlets defined in the system
An important difference between the old PSML and the new is that all entry in the
markup must reference an entry in the registry, you can't have standalone entry
directly.
Also note that you *CAN'T* specify an URL in the portletmarkup anymore, every URL
needs to be registered in the registry.
I know this is tedious but it is the only way we can easily:
- bulk download all URLs
- implement a security feature
- browse the available portlets
without exploring all the user-defined psml files to search for new unknown
entries...
I'm still trying to come with a better scheme but for now, if you want a given
file served from FilerPortlet or access to a specific RSS source, you have to
name it in the registry. Any ideas welcome on this subject.
Misc modifications
==================
I created a new MetaData object for storing metadata information in a locale
specific fashion, so that we can extract from the markup localized meta
information. This is not yet fully implemented.
Known bugs
==========
I have identified some bugs in the cureently committed version :
- there's a portlet caching bug, if a portlet is extracted from the cache
it may have wrong presentation (layout/skin) or metainfo options.
- the metainfo specified in the portletmarkup is ignored when the
portlet sets its own title when init() is called.
- the Edit button doesn't work with the JetspeedContent portlet (I don't
think this related to my changes)
- the DaemonAdminPortlet doesn't work properly (beacuse it doesn't set
the correct parameters in its start/stop buttons, uses classname
instead of registry names).
TODO
====
A lot of things. I'll complete the TODO list in the docs directory.
--
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]