0 Replies Latest reply on Mar 5, 2004 11:55 AM by Jim Doble

    Upgrading a JavaServer Faces App from JSF-1_0 beta to the Of

    Jim Doble Newbie

      Sun has recently released the official 1.0 reference implementation for JavaServer Faces (replacing the beta version released in December of last year), and I have managed, after some pain, to upgrade a simple application that I had developed and was running with JBoss 3.2.3 and Tomcat 5. I thought I would share my experience, so the next person won't take as long to figure things out as I did.

      First, there are a few syntax changes, such as tags changed to use camel case (e.g. "output_text" becomes "outputText"). There is a "Major changes/features in this release" section in the newly-released JSF 1.0 specification that describes these changes, and the error messages you get are reasonably straightforward, so this likely won't cause too much trouble.

      The most time-consuming problem I encountered was due to the fact that the class "com.sun.faces.config.ConfigListener" was renamed to "com.sun.faces.config.ConfigureListener" in the official release, and even though I didn't reference that class anywhere, I kept getting a classloader error indicating that com.sun.faces.config.ConfigListener could not be found. I wondered if something was being cached, but even shutting down and restarting my server didn't help.

      What I finally discovered is that the old class name was being referenced in a file in the work directory, related to my application (called jsf-test):

      /usr/jboss/server/default/work/jboss-web/localhost/jsf-test/tldCache.ser
      


      This was probably overkill, but I simply deleted the entire work directory, restarted my server, and no more classloader problem.