Monday, April 07, 2008

PAL Portal 1.0.4 Released

PAL Portal is JSR 168 compliant portal server. This portal is Jetspeed2 based server and includes portlets which PAL project provides. In this release, features are:
  • Bug fixes
  • Added UserManagerServlet to do a batch processing for user info.
It is much appreciated if you can provide any feedback to us.

Download from: PAL Portal 1.0.4

How to install:

Note: Before running PAL Portal, you will need to install
Java SDK(1.5.x or later) and set environment JAVA_HOME
properly.

1. Download PALPortal-install-1.0.4.jar
2. Run installer
Open command shell, or DOS command box, type:
$ java -jar PALPortal-install-1.0.4.jar
You will see the installer executed. (Don't type '$')
3. Execute /bin/startup.[sh|bat]
4. Access http://localhost:8080/palportal to display
PAL Portal. To login as an administrator, you can use
admin/admin as Username/Password. To modify default pages,
use site/site as Site manager.

How to deploy PALab's portlets:

1. Login as admin
2. Navigate to Root >> Portal Administration >> Portlet Management
3. Click Deploy link you want to deploy

How to uninstall:

1. Delete the install directory,

Labels:

Tuesday, April 01, 2008

How to configure PAL Portal and OpenSSO

PAL Portal supports OpenSSO by putting PAL's OpenSSOFilter to web.xml. If you use Jetspeed2, you can apply the same procedure to your J2. The procedure is below:

1. Setup OpenSSO.
2. Download palportal-sso-2.1.3_pal-1.0.3.jar and openssoclientsdk.jar, and copy them to webapps/palportal/WEB-INF/lib/.
3. Edit webapps/palportal/WEB-INF/web.xml



...
<filter>
<filter-name>OpenSSOFilter</filter-name>
<filter-class>jp.sf.pal.portal.sso.opensso.OpenSSOFilter</filter-class>
<init-param>
<param-name>loginURL</param-name>
<param-value>http://servername:8080/opensso</param-value>
</init-param>
</filter>
...
<filter-mapping>
<filter-name>OpenSSOFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
...

Labels:

How to manage user data by a remote access

If you want to manage user data by a remote access on PAL Portal, you can use UserManagerServlet(If you use Jetspeed2, download UserManagerServlet.class).

An usage is simple. Please put the servlet information to web.xml:


  <servlet>
<servlet-name>UserManagerServlet</servlet-name>
<servlet-class>jp.sf.pal.portal.servlet.UserManagerServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>UserManagerServlet</servlet-name>
<url-pattern>/userManager</url-pattern>
</servlet-mapping>



and then access http://localhost:8080/palportal/userManager?name1=value1&... UserManagerServlert has the following features:


  • Check a user authentication

  • Add a user

  • Update a password

  • Delete a user



An example of an output format is below:


<?xml version="1.0" encoding="UTF-8" ?>
<results>
<status>string</status>
<message>string</message>
<result>
<name>string</name>
<value>string</value>
</result>
</results>



Check a user authentication

Parameters passed on URL:
[Request Parameters]="Value"
action=authenticate
username="User name"
password="Password"

Value of "status":
success -> Success!
authentication-failed -> Authentication failed.
invalid-parameter -> Invalid request parameter(s).
excluded-user -> a given user name is excluded.

Add a user

Parameters passed on URL:
[Request Parameters]="Value"
action=create
username="Username"
password="Password"

Value of "status":
success -> Success!
user-already-exists -> User already exists.
server-error -> Server error.
invalid-parameter -> Invalid request parameter(s).
excluded-user -> a given user name is excluded.

Update a password

Parameters passed on URL:
[Request Parameters]="Value"
action=update
username="User name"
password="Password"

Value of "status":
success -> Success!
user-not-found -> User not found.
server-error -> Server error.
invalid-parameter -> Invalid request parameter(s).
excluded-user -> a given user name is excluded.

Delete a user

Parameters passed on URL:
[Request Parameters]="Value"
action=update
username="User name"
password="Password"

Value of "status":
success -> Success!
user-not-found -> User not found.
server-error -> Server error.
invalid-parameter -> Invalid request parameter(s).
excluded-user -> a given user name is excluded.

Labels:

How to setup PAL Portal(Jetspeed2) on GlassFish 2ur1

An procedure about how to configure PAL Portal on GlassFish is below. Since PAL Portal is based on Jetspeed 2, if you want to setup J2 on GlassFish, you can refer the procedure. First of all, you need to download jetspeed-portal-glassfish.zip and jetspeed-security-glassfish-2.1.3_pal-1.0.3.jar, and then unzip jetspeed-portal-glassfish.zip to [palportal_home]/webapps/palportal/WEB-INF/classes.
The procedure is(if you apply it to j2, replace palportal with jetspeed and skip some steps):


$ java -Xmx256m -jar /tmp/glassfish-installer-v2ur1-b09d-linux.jar
$ mv glassfish/ glassfish-v2ur1
$ cd glassfish-v2ur1/
$ chmod -R +x lib/ant/bin
$ lib/ant/bin/ant -f setup.xml
$ cp /tmp/Portal/shared/lib/jetspeed-* domains/domain1/lib/
$ cp /tmp/Portal/shared/lib/p* domains/domain1/lib/
$ cp -r /tmp/Portal/webapps/palportal webapps/
$ vi webapps/palportal/WEB-INF/assembly/security-providers.xml
<!--constructor-arg index="2"><value>login.conf</value></constructor-arg-->
<constructor-arg index="2"><ref bean="org.apache.jetspeed.security.spi.CredentialHandler"/></constructor-arg>
<constructor-arg index="3"><ref bean="org.apache.jetspeed.security.spi.UserSecurityHandler"/></constructor-arg>
$ vi domains/domain1/config/login.conf
Jetspeed {
org.apache.jetspeed.security.impl.GlassFishLoginModule required;
};
$ vi webapps/palportal/WEB-INF/assembly/deployment.xml
<!--
<bean id="org.apache.jetspeed.tools.pamanager.servletcontainer.ApplicationServerManager"
class="org.apache.jetspeed.tools.pamanager.servletcontainer.TomcatManager"
init-method="start" destroy-method="stop"
>
<constructor-arg index="0"><value>${autodeployment.catalina.base}</value></constructor-arg>
<constructor-arg index="1"><value>${autodeployment.catalina.engine}</value></constructor-arg>
<constructor-arg index="2"><value>${autodeployment.server}</value></constructor-arg>
<constructor-arg index="3"><value>${autodeployment.port}</value></constructor-arg>
<constructor-arg index="4"><value>${autodeployment.user}</value></constructor-arg>
<constructor-arg index="5"><value>${autodeployment.password}</value></constructor-arg>
</bean>
-->
<bean id="org.apache.jetspeed.tools.pamanager.servletcontainer.ApplicationServerManager"
class="org.apache.jetspeed.tools.pamanager.servletcontainer.GlassFishManager"
init-method="start" />
$ vi webapps/palportal/WEB-INF/assembly/portal-url-generation.xml
<bean id="PortalURL"
class="org.apache.jetspeed.container.url.impl.GlassFishPathInfoEncodingPortalURL"
$ cp /tmp/jetspeed-security-glassfish-2.1.3.jar domains/domain1/lib/
$ pushd domains/domain1/lib/classes/
$ jar xvf ../jetspeed-security-glassfish-2.1.3.jar
$ rm -r META-INF/
$ mkdir -p ../../../../webapps/palportal/WEB-INF/classes/org/apache/jetspeed/security/impl/
$ mv ./org/apache/jetspeed/security/impl/GlassFishLoginModule.class ../../../../webapps/palportal/WEB-INF/classes/org/apache/jetspeed/security/impl/
$ rm ../jetspeed-security-glassfish-2.1.3.jar
$ popd
$ cp /tmp/mysql-connector-java-5.0.4.jar domains/domain1/lib/
$ vi domains/domain1/config/domain.xml
<java-config classpath-suffix="${com.sun.aas.instanceRoot}/lib/classes" ...
$ ./bin/asadmin start-domain domain1
$ echo adminadmin > passwordfile
$ ./bin/asadmin create-auth-realm --classname org.apache.jetspeed.security.impl.GlassFishRealm --user admin --passwordfile passwordfile --host localhost --port 4848 --property "jaas-context=Jetspeed:auth-type=jetspeed" Jetspeed
$ ./bin/asadmin stop-domain domain1
$ ./bin/asadmin start-domain domain1
-> Create Connection Pool(JetspeedDSPool) and JDBC Resource(jdbc/jetspeed)
$ ./bin/asadmin deploydir --user admin --passwordfile passwordfile webapps/palportal/
$ pushd webapps/
$ mkdir pal-admin
$ mkdir pal-wcm
$ cd pal-admin
$ jar xvf ../pal-admin.war
$ cd ../pal-wcm
$ jar xvf ../pal-wcm.war
$ popd
$ rm webapps/pal-admin/WEB-INF/lib/geronimo-ejb_2.1_spec-1.0.jar
$ ./bin/asadmin deploydir --user admin --passwordfile passwordfile webapps/pal-admin
$ ./bin/asadmin deploydir --user admin --passwordfile passwordfile webapps/pal-wcm

Labels:

Friday, February 15, 2008

How to setup PAL Portal(Jetspeed2) on JBoss AS 4.0.5 GA

I installed PAL Portal on JBoss AS 4.0.2. Since PAL Portal is Jetspeed2 base portal, I think that the configuration is the same as Jetspeed2. The installation step is below:


$ cd /tmp
$ unzip /tmp/jboss-4.0.5.GA.zip
$ cd jboss-4.0.5.GA/
$ cp -r ../PALPortal/webapps/palportal/ server/default/deploy/palportal.war
$ cp ../PALPortal/shared/lib/*.jar server/default/lib/
$ cp -r ../PALPortal/database/ .
$ vi server/default/deploy/palportal-ds.xml
<datasources>
<local-tx-datasource>
<jndi-name>/JetspeedDS</jndi-name>
<connection-url>jdbc:derby:/tmp/jboss-4.0.5.GA/database/derby/productiondb;create=true</connection-url>
<driver-class>org.apache.derby.jdbc.EmbeddedDriver</driver-class>
<user-name></user-name>
<password></password>
<min-pool-size>5</min-pool-size>
<max-pool-size>20</max-pool-size>
<idle-timeout-minutes>0</idle-timeout-minutes>
</local-tx-datasource>
</datasources>
$ vi ./server/default/deploy/palportal.war/WEB-INF/assembly/deployment.xml
<!--
<bean id="org.apache.jetspeed.tools.pamanager.servletcontainer.ApplicationServerManager"
class="org.apache.jetspeed.tools.pamanager.servletcontainer.TomcatManager"
init-method="start" destroy-method="stop"
>
<constructor-arg index="0"><value>${autodeployment.catalina.base}</value></constructor-arg>
<constructor-arg index="1"><value>${autodeployment.catalina.engine}</value></constructor-arg>
<constructor-arg index="2"><value>${autodeployment.server}</value></constructor-arg>
<constructor-arg index="3"><value>${autodeployment.port}</value></constructor-arg>
<constructor-arg index="4"><value>${autodeployment.user}</value></constructor-arg>
<constructor-arg index="5"><value>${autodeployment.password}</value></constructor-arg>
</bean>
-->
<bean id="org.apache.jetspeed.tools.pamanager.servletcontainer.ApplicationServerManager"
class="org.apache.jetspeed.tools.pamanager.servletcontainer.JBossManager"
init-method="start" />
$ rm server/default/deploy/palportal.war/WEB-INF/lib/commons-logging-*.jar
$ rm server/default/deploy/palportal.war/WEB-INF/lib/log4j-*.jar
$ vi server/default/deploy/palportal.war/WEB-INF/web.xml
<!--
<listener>
<listener-class>org.apache.jetspeed.webapp.logging.Log4JConfigurator</listener-class>
</listener>
-->
$ vi server/default/deploy/palportal.war/WEB-INF/jboss-web.xml
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
<class-loading>
<loader-repository java2ClassLoadingCompliance="false">
org.apache.jetspeed:loader=palportal.war<loader-repository-config>java2ParentDelegation=false</loader-repository-config>
</loader-repository>
</class-loading>
<security-domain flushOnSessionInvalidation="true">java:/jaas/Jetspeed</security-domain>
<resource-ref>
<res-ref-name>jdbc/jetspeed</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<jndi-name>java:/JetspeedDS</jndi-name>
</resource-ref>
</jboss-web>
$ vi server/default/conf/login-config.xml
<application-policy name="Jetspeed">
<authentication>
<login-module code="org.apache.jetspeed.security.impl.ext.JBossLoginModule"
flag="required">
<module-option name="unauthenticatedIdentity">guest</module-option>
</login-module>
</authentication>
</application-policy>
$ pushd server/default/deploy/palportal.war/WEB-INF/deploy/
$ for warfile in `find . -type f|grep war`; do tfile=`zipnote $warfile|grep commons-logging|sed -e "s/@ //"`;if [ ! x$tfile = "x" ] ; then zip -d $warfile $tfile; fi; done
$ for warfile in `find . -type f|grep war`; do tfile=`zipnote $warfile|grep log4j|sed -e "s/@ //"`;if [ ! x$tfile = "x" ] ; then zip -d $warfile $tfile; fi; done
$ popd
$ ./bin/run.sh

Labels:

Tuesday, January 22, 2008

PAL Portal 1.0.2 Released

PAL Portal is JSR 168 compliant portal server. This portal is Jetspeed2 based server and includes portlets which PAL project provides. In this release, features are:
  • Based on Jetspeed 2.1.3
  • New UI (Drag and Drop layout)
  • New installer
  • Dropped j2-admin
  • Dropped J2 Desktop(and Dojo)
It is much appreciated if you can provide any feedback to us.

Download from: PAL Portal 1.0.2

How to install:

Note: Before running PAL Portal, you will need to install
Java SDK(1.5.x or later) and set environment JAVA_HOME
properly.

1. Download PALPortal-install-1.0.2.jar
2. Run installer
Open command shell, or DOS command box, type:
$ java -jar PALPortal-install-1.0.jar
You will see the installer executed. (Don't type '$')
3. Execute /bin/startup.[sh|bat]
4. Access http://localhost:8080/palportal to display
PAL Portal. To login as an administrator, you can use
admin/admin as Username/Password. To modify default pages,
use site/site as Site manager.

How to deploy PALab's portlets:

1. Login as admin
2. Navigate to Root >> Portal Administration >> Portlet Management
3. Click Deploy link you want to deploy

How to uninstall:

1. Delete the install directory,

Labels:

Tuesday, May 15, 2007

PAL Portal 1.0 Beta 5 Released

PAL Portal is JSR 168 compliant portal server. This portal is Jetspeed2 based server and includes portlets which PAL project provides. In this release, PAL-Admin and PAL-WCM portlets are contained. PAL-Admin portlet has User Management and Portlet Management portlet. In User Management portlet, you can handle over 100000 users in DB. PAL-WCM portlet provides a Web Content Management feature. In this portlet, you can edit a web content by FCKditor.

How to install:

  1. Download PALPortal-install-1.0-beta5.jar from http://sourceforge.jp/projects/pal/files/?release_id=25345#25345
  2. Run installer
    $ java -jar PALPortal-install-1.0-beta5.jar
  3. Run PAL Portal to execute <INSTALL_DIR>/bin/startup.[sh|bat]
  4. Access http://localhost:8080/palportal to display PAL Portal. Information about Administrator's username/password is admin/admin. If you want to modify the default contents, login as site/site user.



How to uninstall:

  1. Remove the install directory, <INSTALL_DIR>

Labels: