geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pavel Janoušek <janou...@fonet.cz>
Subject Geronimo 2.1.x, standard MyFaces bundle, org.apache.myfaces.ERROR_HANDLER in web.xml - classloading problem
Date Thu, 26 Feb 2009 10:31:20 GMT
	Hello,

	I'm trying to write own ErrorHandler for handling Exceptions. It's based on Tomahawk ErrorRedirectJSFPageHandler
with some other attributes in ExceptionContext (error identificator for BFU etc.).

	When I deploy web application under common way (WAR), all is OK, but when MyFaces catches
exception and try to redirect processing to my own handler (specified in web.xml by parameter
org.apache.myfaces.ERROR_HANDLER) I got error from Tomcat:

javax.servlet.ServletException: Error-Handler : cz.pajasoftovi.TestJSF.ErrorRedirectJSFPageHandler
was not found. Fix your web.xml-parameter : org.apache.myfaces.ERROR_HANDLER
	javax.faces.webapp.FacesServlet.handleLifecycleException(FacesServlet.java:248)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:160)

root cause

java.lang.ClassNotFoundException: cz.pajasoftovi.TestJSF.ErrorRedirectJSFPageHandler in classloader
org.apache.geronimo.framework/jee-specs/2.1.4-SNAPSHOT/car
	org.apache.geronimo.kernel.config.MultiParentClassLoader.loadOptimizedClass(MultiParentClassLoader.java:438)
	org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:280)
	java.lang.ClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.loadClassInternal(Unknown Source)
	java.lang.Class.forName0(Native Method)
	java.lang.Class.forName(Unknown Source)
	javax.faces.webapp.FacesServlet.handleLifecycleException(FacesServlet.java:240)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:160)


	Yes, I known this is classloading issue... so I'm trying to add MyFaces JSF (1.2) implementation
(myfaces-api, myfaces-impl) to application WEB-INF/lib directory and in Geronimo deployment
descriptor I'm hiding javax.faces and org.apache.myfaces to prevent loading the Geronimo server
version of MyFaces (my and Geronimo version are though identical) and all is working AS EXPECTED.

	So my simple question is how to modify web.xml (or better in geronimo-web.xml) to working
as expected with Geronimo server bundled MyFaces package? How to modify classloading by deploy
descriptor (inverse-classloading... don't work)? It's possible by modify deploying descriptor
or some special GBEAN configuration is required? I don't like to distribute own version of
MyFaces...

	Thanks

Ing. Pavel Janoušek
technická podpora

E-mail: janousek@fonet.cz
FoNet, spol. s r.o.
Za Kovárnou 9, 625 00 Brno
Tel.: +420 543 244 749
Fax.: +420 543 244 751
WWW : http://WWW.FoNet.Cz/ 


Mime
View raw message