[ 
https://issues.apache.org/activemq/browse/AMQ-2599?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gary Tully resolved AMQ-2599.
-----------------------------

       Resolution: Fixed
    Fix Version/s: 5.4.0

resolved in r910238

The example configuration files now match the schema as they should do. 

Order is an attribute of the sequence but the sequence is important as it 
allows for extensibility, see: 
http://www.w3.org/2005/07/xml-schema-patterns.html#Collection-Extending-Elements
 

> Distribution activemq.xml does not match distribution activemq.xsd, causing 
> SAXParseException with newer versions of Spring
> ---------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-2599
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2599
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 5.3.0
>            Reporter: Kevin Hunter
>            Assignee: Gary Tully
>            Priority: Minor
>             Fix For: 5.4.0
>
>
> In the 5.3.0 distribution, an "activemq.xml" file is provided in the "conf" 
> directory.  The format of this file does not match the schema "activemq.xsd" 
> that is located in the activemq-core-5.3.0.jar.  Specifically, in the latter, 
> the "broker" tag is defined as a sequence of tags as follows:
>       adminView
>       applicationContext
>       consumerSystemUsage
>       destinationFactory
>       destinationInterceptors
>       destinationPolicy
>       destinations
>       jmsBridgeConnectors
>       managementContext
>       messageAuthorizationPolicy
>       networkConnectorURIs
>       networkConnectors
>       persistenceAdapter
>       persistenceFactory
>       persistenceTaskRunnerFactory
>       plugins
>       producerSystemUsage
>       proxyConnectors
>       regionBroker
>       services
>       sslContext
>       systemUsage
>       taskRunnerFactory
>       tempDataStore
>       transportConnectorURIs
>       transportConnectors
> (suspiciously, these tags are listed in alphabetical order - I question 
> whether "sequence" was the correct type in the xsd, as opposed to "one or 
> more of the following")
> In any event, in the "activemq.xml" that is provided as part of the 
> distribution, the children of the "broker" tag are provided in the following 
> order:
>       managementContext
>       persistenceAdapter
>       destinationPolicy
>       systemUsage
>       transportConnectors
> If the activemq.xsd file is correct, then "destinationPolicy" should have 
> been positioned first - before "managementContext".  Alternately, the tag 
> order in the xsd file needs to be reworked.
> This problem causes a SAXParseException if one tries to use the default 
> activemq.xml with Spring 3.0 jars used instead of the Spring 2.5.6 jars that 
> come with the distribution.  I can only presume that the newer version of 
> Spring is configured, by default, to validate parsed XML against the XSD, 
> while Spring 2.5.6 is not.
> I note that http://activemq.apache.org/networks-of-brokers.html indicates 
> "Order of construction of networks/persistence/transports IS important!"  
> This at least suggests to me that the ordering of other tags might possibly 
> be important, or that multiple orders may be valid depending on the desired 
> effect.  Thus, it is not immediately obvious which of the two files is, in 
> fact, the correct one.
> Regardless, it seems that the example XML file should match the provided XSD 
> file.
> The current workaround is to either use a version of Spring earlier than 3, 
> or to edit the activemq.xml to re-order the children of "broker".

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to