Hi,
I have configured a bundle to use sprint tx:annotation-driven but get
this error :
16:24:04,109 | ERROR | ExtenderThread-2 | ContextLoaderListener
| BundleApplicationContextListener 50 | Application context
refresh failed
(OsgiBundleXmlApplicationContext(bundle=com.goodyear.emea.gicl.esb.sap-prodspec-service,
config=osgibundle:/META-INF/spring/*.xml))
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:
Line 37 in XML document from URL
[bundle://138.0:0/META-INF/spring/service-context.xml] is invalid;
nested exception is org.xml.sax.SAXParseException:
cvc-complex-type.2.4.c: The matching wildcard is strict, but no
declaration can be found for element 'tx:annotation-driven'.
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:404)
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)
at
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149)
at
org.springframework.osgi.context.support.OsgiBundleXmlApplicationContext.loadBeanDefinitions(OsgiBundleXmlApplicationContext.java:176)
at
org.springframework.osgi.context.support.OsgiBundleXmlApplicationContext.loadBeanDefinitions(OsgiBundleXmlApplicationContext.java:142)
at
org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:123)
at
org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:422)
at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.access$800(AbstractDelegatedExecutionApplicationContext.java:69)
at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$3.run(AbstractDelegatedExecutionApplicationContext.java:269)
at
org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.startRefresh(AbstractDelegatedExecutionApplicationContext.java:247)
at
org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.stageOne(DependencyWaiterApplicationContextExecutor.java:222)
at
org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.refresh(DependencyWaiterApplicationContextExecutor.java:175)
at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.refresh(AbstractDelegatedExecutionApplicationContext.java:175)
at
org.springframework.osgi.extender.internal.activator.ContextLoaderListener$2.run(ContextLoaderListener.java:718)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The
matching wildcard is strict, but no declaration can be found for
element 'tx:annotation-driven'.
at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
Here is the config
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:osgi="http://www.springframework.org/schema/osgi"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/osgi
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/osgi/spring-osgi.xsd">
<!--
enable the configuration of transactional behavior based on
annotations
-->
<tx:annotation-driven transaction-manager="txManager" />
<osgi:reference id="txManager"
interface="org.springframework.transaction.PlatformTransactionManager"
/>
The Spring TX bundle is well installed, my bundle use Dynamic-Import :
[ 10] [Active ] [Created ] [ ] [ 30] Apache Felix
Karaf :: Spring Deployer (1.4.0)
[ 34] [Active ] [ ] [ ] [ 60] Spring Core (2.5.6.SEC01)
[ 35] [Active ] [ ] [ ] [ 60] Spring Beans (2.5.6.SEC01)
[ 36] [Active ] [ ] [ ] [ 60] Spring AOP (2.5.6.SEC01)
[ 37] [Active ] [ ] [ ] [ 60] Spring Context
(2.5.6.SEC01)
[ 38] [Active ] [ ] [ ] [ 60] Spring Context
Support (2.5.6.SEC01)
[ 51] [Active ] [ ] [ ] [ 60] Spring
Transaction (2.5.6.SEC01)
[ 72] [Active ] [ ] [ ] [ 60] Spring JMS (2.5.6.SEC01)
[ 109] [Active ] [ ] [ ] [ 60] Spring JDBC (2.5.6.SEC01)
[ 110] [Active ] [ ] [ ] [ 60] Spring ORM (2.5.6.SEC01)
Does anybody knows how to solve this ?
Kind regards,
Charles Moulliard
Senior Enterprise Architect (J2EE, .NET, SOA)
Apache Camel Committer
*******************************************************************
- Blog : http://cmoulliard.blogspot.com
- Twitter : http://twitter.com/cmoulliard
- Linkedlin : http://www.linkedin.com/in/charlesmoulliard