Apache Jetspeed-2 installation

Jetspeed-2 installation

Jetspeed-2 (JS2) portal installation is very easy and simple,still i have seen lot of people
having trouble in installation. Its very important to under-stand, what exactly is required to run jetspeed.

Jetspeed in more generic way an web application, which is serving user request as portal and requires three simple thing to run

Database

Jetspeed has custom database structure, which is an essential for running.
JS2 use database via JNDI, JS2 expect jndi to be named is “jdbc/jetspeed”.
JS2 will try to access database with this JNDI, there can be different way to setup JNDI in different application server. I would recommend to test database via JNDI from application server.

Shared lib

Jetspeed require shared lib to be setup with in application server. Each application server have different way to set-up shared lib. Different version of jetspeed require different files in shared lib.

Jetspeed 2.1.3
jetspeed-api-2.1.3.jar
jetspeed-commons-2.1.3.jar
pluto-1.0.1.jar
portals-bridges-common-1.0.4.jar
portlet-api-1.0.jar

Jetspeed 2.2.0
ccpp-1.0.jar
jetspeed-api-2.2-SNAPSHOT.jar
jetspeed-commons-2.2-SNAPSHOT.jar
pluto-container-api-2.0.0-SNAPSHOT.jar
pluto-taglib-2.0.0-SNAPSHOT.jar
portals-bridges-common-1.0.4.jar
portlet-api-2.0.jar

Note:

1) Make sure, Version of shared libraries should be same as version of jetspeed.
2) Jetspeed-api and jetspeed common, should be present only in shared lib, not even with your portlet application.

JAAS authentication setup


I would say this step is more-over optional and can be configured differently according to your requirement. Jespeed out-of-box comes with JAAS authentication, again like the above two steps. It is all depends on the application server to configure it.

Jetspeed installer comes with tomcat 5.5.27 and have JAAS authentication as pre configured to use. If you are facing problem ins setting up JAAS in your application server. I would suggest you to go set up jetspeed with filter authentication  Go here “filter-Authentication” for details on this.

Last and final step

Deploy jetspeed.war in your application server.

open browser with http://localhost:8080/jetspeed/portal
this should show default jetspeed.

Hope this will help.

Disable Web-sphere portlet container

Websphere 6.1 and above comes with in-built portlet container. Websphere load portlet api with all web application. There is no settings in adminstraive console to disable portlet container, it is an over-ahead on memory. This specifically make an problem or java based portal server e.g  jetspeed-2 , Liferay etc. There is only one way to disable it. You add the following context param to disable portlet container for your web application. This also saves the memory foot print.

  <context-param>
     <param-name>com.ibm.websphere.portletcontainer.PortletDeploymentEnabled</param-name>
     <param-value>false</param-value>
   </context-param>

Jetspeed2 Statistics Engine

Jetspeed 2 has inbuilt feature of statics, statics engine track all the portlet, pages and users.
All this information stored in database. so can be access and used any time.

statics engine keep track of

Number of time served
Max time taken in executing page/portlet
Avg time taken in executing page/portlet
Min time taken in executing page/portlet

It doesn’t have very good interface, but very use full of statics purpose for porltet
As only container can tell exact time take in execution of a portlet

Jetpseed2 allows you to disable statistics engine. by tweaking [/WEB-INF/assembly/statistics.xml].
It also gives small performance boost.

logging to console can be enable/disable by changing the constructor-0 argument to ture or false.
Database logging can be enable/disable by changing the constructor-1 argument to true or false.

<beans>
<!-- Statistics Implementation -->
<bean id="PortalStatistics"
class="org.apache.jetspeed.statistics.impl.PortalStatisticsImpl"
init-method="springInit"
destroy-method="springDestroy"
>
<!-- logToCLF -->
<constructor-arg index='0' type="boolean"><value>false</value></constructor-arg>

<!-- logToDatabase -->
<constructor-arg  index='1'  type="boolean"><value>true</value></constructor-arg>