The last week I was asked to migrate a JSF 1.2 / Seam 2.x based web app to a WebSphere 6.1 application server. I hadn’t worked with WebSphere in a while, though I knew what I had to expect.

IBM still hasn’t released a JavaEE 5 compliant product, so the 6.1 version is still on J2SE 1.4 with JSP 2.0 and Java Servlet 2.4. Also it has a built-in JSF 1.1.

The application to be migrated luckly is using facelets as its view technology otherwise I would have been screwed anyway. JSF 1.2 itself doesn’t rely on the servlet spec 2.4 so a good chance to get it done.

To run JSF 1.2 the following is required:

  • Make sure that you WebSphere installation is at least running with fixpack 13!
  • Create a shared library containing JSF RI 1.2 jars (jsf-api.jar, jsf-impl.jar, el-api-1.0.jar, el-impl-1.0.jar)
  • Create a classloader with application classes loaded first and bind it to the shared library above
  • Set the classloading policy as application classes loaded first and assign the classloader