Tomcat understands amq:broker but Eclipse marks errors in schema
Asked Answered
C

1

5

When working with ActiveMQ in Eclipse, you might sometimes get a schema parsing error as such:

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:broker'.  

However, the project deploys successfully in Tomcat.

Chemisorb answered 18/2, 2010 at 15:2 Comment(0)
C
7

To fix this, you must associate the ActiveMQ XSD URL with the schema.

Go to XML->XML Catalog in Preferences, and add a User Specified Entry.

Location: http://activemq.apache.org/schema/core/activemq-core-5.3.0.xsd
Key Type: Namespace Name
Key: http://activemq.apache.org/schema/core

Then add a second one:

Location: http://activemq.apache.org/schema/core/activemq-core-5.3.0.xsd
Key Type: Schema Location
Key: http://activemq.apache.org/schema/core/activemq-core.xsd

Hit OK.

If you have this same error and Tomcat fails, open the applicationContext-jms.xml file which triggers the error and replace:

http://activemq.apache.org/schema/core/activemq-core-5.2.0.xsd

with

http://activemq.apache.org/schema/core/activemq-core.xsd
Chemisorb answered 18/2, 2010 at 15:5 Comment(1)
Answer obtained from bigsoft.co.uk/blog/index.php/2009/02/01/… comments. See his solution, which uses local jar, if this one does not work for you. Answered my own question.Directrix

© 2022 - 2024 — McMap. All rights reserved.