activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Hiram Chirino <hi...@hiramchirino.com>
Subject Re: Apollo & Plugins & Configuration
Date Fri, 20 Apr 2012 13:45:50 GMT
Hi Lionel,

I think that 'xs:any' causes the parser to  not report errors for XML
elements that are NOT in apollo's XML namespace.  And yes you would added
your own elements with a custom 'xmlns' to have those elements validated
against a different .xsd.  The tricky part is going to be getting Apollo to
associate your custom namespace to a where the .xsd file is which validates
it.  We may need to provide a way for plugins to register those
associations so that the XML parser can be setup with a proper resolver for
those xsd files.

On Fri, Apr 20, 2012 at 3:38 AM, Lionel Cons <lionel.cons@cern.ch> wrote:

> Apollo can validate its XML configuration using XSD [1]. This is very
> good and allows for instance the detection of typos in the file before
> the broker even starts.
>
> Apollo supports plugins [2] that may need to be configured. AFAIK,
> configuration bits can appear in many places and apollo.xsd will
> somehow ignore them thanks to lines like:
>
>  <xs:any processContents="lax" namespace="##other" minOccurs="0"
> maxOccurs="unbounded"/>
>
> It is however not clear to me how the two work together. Imagine that
> I have a plugin that needs some XML configuration, how can I plug its
> own XSD so that Apollo will be happy with it?
>
> FWIW, in ActiveMQ, we use namespaces for this. We add our namespace
> with its schema in <beans xsi:schemaLocation> and we can further down
> configure our plugin with:
>
>  <plugins>
>    <ourPlugin xmlns="ourNameSpace" ourOption="whatever">
>  </plugins>
>
> Cheers,
>
> Lionel Cons
>
> [1]
> http://activemq.apache.org/apollo/versions/99-trunk-SNAPSHOT/website/documentation/user-manual.html#Understanding_the__code_apollo_xml__code__File
> [2]
> http://activemq.apache.org/apollo/versions/99-trunk-SNAPSHOT/website/documentation/extending-guide.html
>



-- 

**

*Hiram Chirino*

*Software Fellow | FuseSource Corp.*

*chirino@fusesource.com | fusesource.com*

*skype: hiramchirino | twitter: @hiramchirino<http://twitter.com/hiramchirino>
*

*blog: Hiram Chirino's Bit Mojo <http://hiramchirino.com/blog/>*

*
*

*
*

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message