I have been assigned the task of migrating some applications that have been successfully running in Tomcat 6 to run inside the Jboss AS 5.1 container. I have had some success but I am not sure if I am going about it in the right way. The first challenge was with the classloaders which I was able to solve using the jboss-classloading.xml file in my application's war file under the WEB_INF dir. The contents of this file is discussed in the article by Joel Tosi(4/4/2011) entitled "Classloaders and You" which I have attached. The next challenge has been updating the tag library definitions. I keep running into errors like this:
ERROR [cmmobile] Servlet.service() for servlet cmmobile threw exception
org.apache.jasper.JasperException: The absolute uri: http://tiles.apache.org/tags-tiles cannot be resolved in either web.xml or the jar files deployed with this application.
I was albe to resolve this for the jstl libs by includign this in my web.xml file:
and by downloading a c.tld file. None of this was neccessary for the the application to run under Tomcat 6. I am now running into the error described above. I manually changed web.xml to refrerence http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd where in the previous Tomcat version it was pointing to http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd. Similarly I manually changed the references in the tld files to "http://java.sun.com/xml/ns/javaee web-jsptaglibrary_2_1.xsd from "http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd.
Jboss seemed to complain about any references to j2ee.
So that leads me to my question of should I have to be manually edittting these references?
How can I resolve the above issue?
All neccessary .jar files are present in the WEB-INF/lib dir however Jboss seems to ignore them in some cases.
Any help in moving this forward would be greatly appreciated.
classloadersandyou.pdf 343.3 KB