External Links to Channels and tabs (v2.5)
There are several ideas and requirements that have been voiced about enabling external links that come into uPortal and "land" directly on a channel in focus mode or on a tab both in guest mode and as an authenticated user.
...
For information on how to go directly to a channel in focus mode as an authenticated user see this page: 05 Focus a channel
Linking directly to a channel in guest mode
...
Info | ||
---|---|---|
| ||
Links to channels in guest mode work only with a url which contains the tag element such as: httphttps://portal.yale.edu/tag.idempotent.render.userLayoutRootNode.uP?uP?uP_fname=yaleDirectorySearch_fname=general-search |
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 | ||||
---|---|---|---|---|
| ||||
<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 | ||
---|---|---|
| ||
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.
External Links to Channels and tabs (v2.6)
TheĀ GuestServlet.java is unchanged, but GuestUserPreferencesManager.java was modified to pass the uP_args parameter in addition to uP_fname.