--- On Mon, 4/25/11, anyz <anyz...@gmail.com> wrote:

> From: anyz <anyz...@gmail.com>
> Subject: Re: JSP include and multiple portlets Problem
> To: "Jetspeed Users List" <jetspeed-user@portals.apache.org>
> Date: Monday, April 25, 2011, 6:57 AM
> Thanks, it is very helpful
> configuring portlet speicifc JSP header pages
> using init params.
> 
> I also thought of using portlet filter. This portlet filter
> will set a
> portlet session variable if it finds a portlet with common
> headers. And in
> common header files we can check this flag variable to
> include the code or
> not. Howerver once set we need to remvoe it when filter is
> called for last
> Portlet on PSML page so that next time PSML page is called
> it can include
> header files.
> 
> I dont' think its possibel to detect last portlet on PSML
> page in Portlet
> Filter. It is like setting a flag in *PSML Page Level
> Scope*.

If it is okay with Jetspeed-2 specific API, then you can make use of 
RequestContext object which is a flyweight object only for the current page 
request:

import org.apache.jetspeed.request.RequestContext;

RequestContext requestContext = (RequestContext) 
portletRequest.getAttribute(RequestContext.REQUEST_PORTALENV);

Because requestContext is shared among portal and portlets, you may use 
#setAttribute() and #getAttribute() and you don't have to remove attributes 
later in this case. requestContext object will be removed after the request.

Woonsan

> 
> 
> 
> 
> On Fri, Apr 22, 2011 at 7:17 PM, Woonsan Ko <woon_...@yahoo.com>
> wrote:
> 
> >
> > --- On Fri, 4/22/11, anyz <anyz...@gmail.com>
> wrote:
> >
> > > From: anyz <anyz...@gmail.com>
> > > Subject: Re: JSP include and multiple portlets
> Problem
> > > To: "Jetspeed Users List" <jetspeed-user@portals.apache.org>
> > > Date: Friday, April 22, 2011, 8:11 AM
> > > Thanks Woonsan,
> > >
> > > 1- First I am using
> > >
> org.apache.portals.bridges.common.GenericServletPortlet
> > > and hence no Java file exists for portlet but
> viewPage is
> > > set to JSP
> > > directly.
> >
> > You might want to extend GenericServletPortlet to have
> another HeaderPage
> > init parameter, so you can configure headers JSP page
> to be dispatched in
> > doHeaders() method. You don't have to create java
> class for each portlet.
> > Please refer to the example [1].
> >
> > [1]
> > http://svn.apache.org/repos/asf/portals/applications/gems/tags/apa-gems-1.1/src/main/java/org/apache/portals/gems/dojo/AbstractDojoVelocityPortlet.java
> >
> > >
> > > 2- Even if i create the Java file for each
> portlet i.e.
> > > makeing portlets of
> > > Type GenericPortlet instead of
> GenericServletPortlet. This
> > > will solve the
> > > issue duplicate markup elements in header.
> However each of
> > > my JSP file in
> > > turn includes common files say "Header.jsp". This
> common
> > > file has losts of
> > > JSP scriptlet code as well as static css and Js .
> Thus
> > > static Js and CSS can
> > > be moved to doHeaders() but scriplet code in
> Header.jsp
> > > will still
> > > duplicated for all portlets.
> >
> > I'm not sure, but you could consider moving the common
> scriptlet codes into
> > a portlet filter if you want to make it sure to be
> invoked at lease or only
> > once.
> >
> > HTH,
> >
> > Woonsan
> >
> > >
> > >
> > >
> > >
> > > On Thu, Apr 21, 2011 at 6:46 PM, Woonsan Ko
> <woon_...@yahoo.com>
> > > wrote:
> > >
> > > > Hi,
> > > >
> > > > I think you can make use of Portlet 2.0 Head
> Element
> > > Contribution. Also see
> > > > [1].
> > > >
> > > > [1]
> > > >
> > http://mail-archives.apache.org/mod_mbox/portals-jetspeed-user/201101.mbox/%3c771436.89975...@web112814.mail.gq1.yahoo.com%3E
> > > >
> > > > Woonsan
> > > >
> > > > --- On Thu, 4/21/11, anyz <anyz...@gmail.com>
> > > wrote:
> > > >
> > > > > From: anyz <anyz...@gmail.com>
> > > > > Subject: JSP include and multiple
> portlets
> > > Problem
> > > > > To: "Jetspeed Users List" <jetspeed-user@portals.apache.org>
> > > > > Date: Thursday, April 21, 2011, 3:04
> PM
> > > >  > I have multiple JSP portlets on
> a
> > > > > PSML page. Each JSP portlet page uses
> > > > > common code by including various common
> JSP
> > > files.
> > > > >
> > > > > Thus common JSP files are actually
> included
> > > multiple times
> > > > > in one PSML page
> > > > > due to multipel portlets including
> these. It
> > > creates many
> > > > > issues including
> > > > > Javascript code that is over written
> by
> > > portlets.
> > > > >
> > > > > What should be best approach to include
> common
> > > jsp files
> > > > > only once. May be
> > > > > some sort of conditionall inclusion or
> J2 has
> > > some
> > > > > recommended way to do
> > > > > this.
> > > > >
> > > > > Thanks
> > > > >
> > > >
> > > >
> > >
> ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: jetspeed-user-unsubscr...@portals.apache.org
> > > > For additional commands, e-mail: jetspeed-user-h...@portals.apache.org
> > > >
> > > >
> > >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: jetspeed-user-unsubscr...@portals.apache.org
> > For additional commands, e-mail: jetspeed-user-h...@portals.apache.org
> >
> >
>

---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-user-unsubscr...@portals.apache.org
For additional commands, e-mail: jetspeed-user-h...@portals.apache.org

Reply via email to