I found my classloader pb ☹ It s more a config pb…
It’s vicious
CXF uses WAR:
-------------
spring-core-2.0.8.jar
spring-beans-2.0.8.jar
spring-context-2.0.8.jar
spring-web-2.0.8.jar
At init Spring loads the namespace handlers:
--------------------------------------------
org.springframework.beans.factory.xml.UtilNamespaceHandler
org.springframework.aop.config.AopNamespaceHandler
org.springframework.scripting.config.LangNamespaceHandler
org.springframework.transaction.config.TxNamespaceHandler
org.springframework.ejb.config.JeeNamespaceHandler
org.springframework.beans.factory.xml.SimplePropertyNamespaceHandler
If CXF is alone in the application server:
------------------------------------------
14:44:49,980 DEBUG [DefaultNamespaceHandlerResolver] Ignoring namespace handler
[org.springframework.scripting.config.LangNamespaceHandler]: handler class not
found
java.lang.ClassNotFoundException:
org.springframework.scripting.config.LangNamespaceHandler
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1355)
It’s a warning : normal.
But If I have another EAR/WAR which uses other spring versions (In my
---------------------------------------------------------------------
example one ear contains spring-2.5.1.jar) I’ve got this error:
----------------------------------------------------------------
java.lang.IllegalArgumentException: Class
[org.springframework.scripting.config.LangNamespaceHandler] does not implement
the NamespaceHandler interface"
There it s an error. It searches the class
org.springframework.scripting.config.LangNamespaceHandler in the classloader
and this one is defined in the spring-2.5.1.jar but like it’s a different
version this one cause an error!
If someone knows how to configure CXF or Spring to avoid this it would be very
appreciated!
Thanks in advance
Max.