XmlBeanDefinitionStoreException : activemq.xsd URL broken in spring.schemas
---------------------------------------------------------------------------
Key: AMQ-1638
URL: https://issues.apache.org/activemq/browse/AMQ-1638
Project: ActiveMQ
Issue Type: Bug
Components: Broker
Affects Versions: 5.0.0
Environment: activemq-core-5.0.0 and spring-jms-2.5.2 .
Reporter: Cyrille Le Clerc
*Problem description*
activemq-core's {{spring.schemas}} file targets broken activemq xsd urls. When
{{beans.xml}} targets the correct activemq-core-5.0.0.xsd url in
{{xsi:schemaLocation}} attribute, Spring fails to start if an internet
connection to activemq.apache.org does not work.
* Broken urls currently in {{spring.schemas}} :
** http://activemq.apache.org/schema/activemq-core.xsd
** http://activemq.apache.org/schema/activemq-core-5.0.xsd
* Correct url to add in {{spring.schemas}} :
** http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd
*Sample of currently failing spring configuration file*
{code:xml|title=beans.xml with "activemq-core-5.0.0.xsd" in
"xsi:schemaLocation" attribute}
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:lang="http://www.springframework.org/schema/lang"
xmlns:amq="http://activemq.org/config/1.0"
xmlns:jms="http://www.springframework.org/schema/jms"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/lang
http://www.springframework.org/schema/lang/spring-lang-2.5.xsd
http://www.springframework.org/schema/jms
http://www.springframework.org/schema/jms/spring-jms-2.5.xsd
http://activemq.org/config/1.0
http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd">
...
<amq:queue id="requestDestination" physicalName="requestDestination" />
<amq:queue id="replyToDestination" physicalName="replyToDestination" />
<amq:connectionFactory id="activeMqConnectionFactory"
brokerURL="vm://localhost?broker.persistent=false&broker.useJmx=false" />
...
</beans>
{code}
*Spring loading failure stacktrace*
{noformat}
42907 [main] WARN
org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Ignored XML
validation warning
org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema
document 'http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd',
because 1) could not find the document; 2) the document could not be read; 3)
the root element of the document is not <xsd:schema>.
at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
...
at
com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
at
org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:75)
...
at
org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:44)
...
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
42969 [main] ERROR org.springframework.test.context.TestContextManager -
Caught exception while allowing TestExecutionListener [EMAIL PROTECTED] to
prepare test instance [EMAIL PROTECTED]
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 24
in XML document from class path resource
[fr/xebia/sample/springframework/jms/requestreply/beans.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
'amq:queue'.
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)
...
at
org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:44)
...
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
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 'amq:queue'.
at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
...
at
com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
at
org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:75)
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:382)
... 26 more
{noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.