I think we should take the advantage of the fact that a lot of people from the portals projects are at the ApacheCON and discuss the console with the Geronimo team. What we should avoid is parallel development of the same feature.

Roger


David H. DeWolf wrote:

Randy:

FWIW, I've also discussed using pluto 1.1 with the geronimo team. It seems as though the console need is for a "lightweight" portal, though it does need things like runtime portlet deployment and page configuration. We have been moving towards these things in pluto in hopes that it will meet their needs.

Whatever the descision, I'd like to be on the same page as you jetspeed folks so we can work together to come up with the best approach.

I've worked on upgrading the g-console to use pluto-1.1 here at the hackathon, but have gotten side tracked on a couple of other things (tck-testing). I have spoken with Aaron Mulder (g-console) and hope to discuss this with him before the conference is over.

David

Randy Watler wrote:

I'm sitting here in the Geronimo Tutorial and I just saw the Geronimo
Console. Santiago, did this discussion ever go anywhere?

IMHO, we hare in a better position to handle deployable PSML, (both in a
site jar file and/or in a portlet-app WAR. I am supposed to work on the
PSML deployer here soon...

Should we discuss this stuff with the Geronimo team this week?

Randy

On Sat, 2005-09-24 at 12:19 +0200, Santiago Gala wrote:

CC: jetspeed-dev, as I find the discussion relevant for a lot of portal
use cases.

El jue, 22-09-2005 a las 09:54 -0700, Jeremy Boynes escribió:

Craig Doremus wrote:

Jeremy,

I have not seen the Geromino console, so I am not sure what you mean by "making it more dynamic", but a recent change to the Pluto portal might help you. I have added a hot deployment feature to the Pluto Admin application. There is a binary Snapshot of Pluto 1.0.1 with this feature available at: http://cvs.apache.org/dist/portals/pluto/v1.0.1/.

The servlet controller that underlies the Pluto portal (org.apache.pluto.portalImpl.Servlet) was modified to dynamically re-read Pluto's registries (portletentityregistry.xml,pageregistry.xml,portletcontexts.txt) when it is invoked with a 'hot deploy' parameter.


The long term vision is that someone will be able to include a management portlet with their application and when it starts that portlet automatically appears in Geronimo's console allowing admins to control the applications as well as the server.


In a recent jetspeed discussion on IRC, regarding how to deal with demo
pages for the handful of different demos we have, we were able to
articulate a similar requirement:

- We want to have a portlet application (war) to include one or more
portal pages.
- We want to have the portal able to "mount" those pages in a given
mountpoint (configurable by the portal admin) in the site map

Jetspeed uses PSML as a format to express the structure of a portlet
page (which portlets are referenced and how are they decorated and layed
out in the browser page).

My bet is that you will need something similar:
- to enable easy discovery/demo of the included functionality in a war
- to "automount" conforming wars in a certain point in the space in the
site.


There are a few challenges to overcome before we get there:

* letting the portlet container know the new portlet is available
  I think the hot deploy stuff would help there. There may be an
  additional challenge in that multiple portals may be running and
  we need to make sure the portlet ends up in the right one.


jetspeed has hot deployment using a directory in the portal, so if there are several portals in the servlet container, it is a matter of dropping
it in the proper place. But I'm not sure jetspeed2 supports currently
several instances in the same container. Anyone knows?


* adjusting the aggregation to include the new portlet
  I think we may need additional metadata with the portlet that would
  determine where it should go. This is slightly different to a
traditional portal where the user determines where it goes - although
  that should work too :-)


This is where the idea of the war specifying a set of pages which show
the included portlets and servlets integrated should work.

For simple portlets it would be simple to just add them to a certain
page, but in the general case of a set of interacting portlets it is
better that the war specifies a full page or a set of pages.


* controlling access to the portlet
Given these are for administration, we would need some form of access control to determine who can see the portlet at all, what information
  a user can view and what they can modify


JSR-168 gives a coarse access specification in portlet.xml As far as I
can tell, there is nothing standard beyond this, i.e., the portlet
itself should use JAAS and java security.


I've been assuming that most of this type of functionality is portal related rather than container related and that we would probably end up including J2. However, I don't think we need all the functionality from J2 and I have been concerned that we would end up bloating Geronimo just to have snazzy console functions that people don't use.


We are making an effort to simplify jetspeed:
- make most of the demos optional, and with them the set of
dependencies, and re-structure them so that the learning curve is
simpler.
- build demos in portals-bridges, so that building a portal just "uses"
demo .wars coming from the different bridges builds

I mean, a page where different demos are listed and a way to drop them
in the autodeploy directory, plus a set of auto-mounted demo pages would
go far in this area, while keeping the core jetspeed simple.

Most of the "bloat" now existing is due to the mixup of different
technologies (jsf,struts,jsp,velocity,perl,php,python...) to be
shown/demoed/tested in early development stages. Now that we have pushed the bridging functionality outside, it is possible to factor out most of
those dependencies to where they belong (the app/demo area, not the
portal area).

Not all of this effort is done, we still need to move the demo webapps
themselves to portals-bridges.


With that in mind, I have been wondering if there is a use for a kind of stripped down portal that does this kind of thing but does not offer the capabilities of something like J2. Is that something that the Pluto folks would be interested in or would it be more aligned with J2?


Not sure. I'd like to see how far the portletAPI can be stretched. I
guess we need more work in defining the different requirement sets/use
cases, and work from there.

J2 has done a big effort to be less monolithic and more modular. In
fact, the whole page aggregation process is done using portletAPI
+internal hooks.

As part of the Google Summers of Code grant that I was mentoring, (ajax
rendering in jetspeed), I wrote a layout.py prototype portlet in jython,
using the *I should commit it asap to portals-bridges* ;) python bridge
that does the whole page aggregation, much like it is done now in
velocity.

This means that the architecture is clean enough so that a layout
portlet can be written using just context references to a couple of
jetspeed objects and the portlet API. This, for me, was a strong
demonstration that the current architecture is sound, and logically
isolated.

Regards
Santiago


--
Jeremy




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to