Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info
titleHint

Links to channels in guest mode work only with a url which contains the tag element such as: http://portal.yale.edu/tag.idempotent.render.userLayoutRootNode.uP?uP_fname=yaleDirectorySearch

Servlets for deep links in guest mode

Servlet GuestServlet.java handles deep links in guest mode. It was inspired by LoginServlet, where authentication stuff has been removed. To use it, insert the following lines to web.xml in your uPortal hierarchy:

Code Block
xml
xml

<servlet>
  <servlet-name>Guest</servlet-name>
  <servlet-class>org.jasig.portal.GuestServlet</servlet-class>
</servlet>
<servlet-mapping>
  <servlet-name>Guest</servlet-name>
  <url-pattern>/Guest</url-pattern>
</servlet-mapping>

Links can then look like: http://server/uPortal_path/Guest?uP_fname=xxx&uP_args=yyy.

As well as LoginServlet, GuestServlet invalidates the current HTTP session (and creates a new one). Servlet PersistentGuestServlet.java extends GuestServlet.java to preserve some attributes (the attributes with name starting by 'uP_pers_'). Attributes are saved by class PersistentAttributesSaver.java.

Info
titleNote

Note that developers using servlet PersistentGuestServlet.java should be aware that storing critical information (such as passwords) in session attributes starting with 'uP_pers_' is a potential security hole (as these attributes will pass through HTTP sessions).

Those contributions are currently used in channel esup-helpdesk (http://esup-helpdesk.sourceforge.net) and we would be pleased if this code was integrated into the main uPortal distribution.

Pascal Aubry, ESUP-Portail consortium.