bval-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Romain Manni-Bucau <rmannibu...@gmail.com>
Subject Re: Location of validation.xml
Date Thu, 20 Mar 2014 16:43:49 GMT
excepted the cdi integration is done through an interceptor getting
Validator injected so it still works, ot I didn't get the failing case
(possible ;)
Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau



2014-03-20 17:43 GMT+01:00 Matt Benson <gudnabrsam@gmail.com>:
> Well, take the existing BValExtension code. When the extension is
> constructed, it calls Validation.byDefaultProvider().configure(). It
> never has a chance to learn about WEB-INF/validation.xml, and I'm
> having a very hard time believing that we're supposed to ignore it
> completely, and that when a user decides (not unreasonably) to use
> this location as specified in the EE spec, that the CDI support we
> provide is completely unaware of their custom validation
> configuration. It would violate principle of least surprise in quite a
> flagrant manner. This seems to run us all the way back to the SPI
> approach where BVal has to discover for itself where to pull
> validation.xml ! :P
>
> Matt
>
> On Thu, Mar 20, 2014 at 11:34 AM, Romain Manni-Bucau
> <rmannibucau@gmail.com> wrote:
>> BV is not EE aware so that's not a big deal. It works fine in META-INF
>> and in WEB-INF for EE case when the container handles it.
>>
>> Not sure I see the issue.
>>
>> That's the integration work of EE and not of BVal IMO.
>> Romain Manni-Bucau
>> Twitter: @rmannibucau
>> Blog: http://rmannibucau.wordpress.com/
>> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>> Github: https://github.com/rmannibucau
>>
>>
>>
>> 2014-03-20 17:31 GMT+01:00 Matt Benson <gudnabrsam@gmail.com>:
>>> But this goes back to the problem that the EE spec says to pull
>>> validation.xml from WEB-INF. Since the BV spec doesn't make any
>>> mention of WEB-INF/validation.xml it does imply that we could never
>>> handle CDI as defined by the spec, because we wouldn't be able to make
>>> the determination whether, e.g., any custom ConstraintValidatorFactory
>>> was specified. Since the spec clearly says we *do* have to integrate
>>> w/ CDI in an EE container, we may IMO surmise that we have to attempt
>>> to implement the *intent* of the spec since we clearly can't follow
>>> the *letter* of the spec. Does that make sense? This seems to put us
>>> back to the need for a container to either specify some handle to read
>>> the validation configuration, or else the unmarshaled
>>> ValidationConfigType object, due to the difference between the
>>> *classname* as supplied by the validation config vs. the *instance* as
>>> would be supplied by the Configuration bootstrap methods.
>>>
>>> Matt
>>>
>>> On Thu, Mar 20, 2014 at 11:10 AM, Romain Manni-Bucau
>>> <rmannibucau@gmail.com> wrote:
>>>> to provide its own validator and validatorfactory for sure
>>>> Romain Manni-Bucau
>>>> Twitter: @rmannibucau
>>>> Blog: http://rmannibucau.wordpress.com/
>>>> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>>>> Github: https://github.com/rmannibucau
>>>>
>>>>
>>>>
>>>> 2014-03-20 17:07 GMT+01:00 Michael Blyakher <michael.blyakher@gmail.com>:
>>>>> I'm not sure I followed that last comment. Are you implying that an EE
>>>>> container needs to implement it's own CDI extension (or through other
>>>>> means) and not use the native bval support to get this integrated CDI
>>>>> behavior?
>>>>>
>>>>>
>>>>> On Thu, Mar 20, 2014 at 10:58 AM, Romain Manni-Bucau
>>>>> <rmannibucau@gmail.com>wrote:
>>>>>
>>>>>> if not existing and provided by the EE container which will be the
>>>>>> case for sure.
>>>>>> Romain Manni-Bucau
>>>>>> Twitter: @rmannibucau
>>>>>> Blog: http://rmannibucau.wordpress.com/
>>>>>> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>>>>>> Github: https://github.com/rmannibucau
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2014-03-20 16:52 GMT+01:00 Michael Blyakher <michael.blyakher@gmail.com>:
>>>>>> > Unless I am mistaken, when bval creates the configured components from
>>>>>> > validation.xml (MessageInterpolator, ParameterNameProvider, etc...), it
>>>>>> > uses BValExtension#inject which creates these components as CDI managed
>>>>>> > beans. That is what I would be loosing by loading/instantiating these
>>>>>> > classes without delegating to bval to do it.
>>>>>> >
>>>>>> >
>>>>>> >
>>>>>> > On Thu, Mar 20, 2014 at 10:20 AM, Romain Manni-Bucau
>>>>>> > <rmannibucau@gmail.com>wrote:
>>>>>> >
>>>>>> >> not sure I follow, while @Inject Validator works it is fine.
>>>>>> >> Romain Manni-Bucau
>>>>>> >> Twitter: @rmannibucau
>>>>>> >> Blog: http://rmannibucau.wordpress.com/
>>>>>> >> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>>>>>> >> Github: https://github.com/rmannibucau
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >> 2014-03-20 16:17 GMT+01:00 Michael Blyakher <michael.blyakher@gmail.com
>>>>>> >:
>>>>>> >> > So doing that means I will be loosing all of the integration that bval
>>>>>> >> does
>>>>>> >> > with CDI. Does that mean I need to do the CDI pieces outside of this
>>>>>> bval
>>>>>> >> > implementation? That has been my whole driver for this discussion...
>>>>>> >> >
>>>>>> >> >
>>>>>> >> > On Thu, Mar 20, 2014 at 10:12 AM, Romain Manni-Bucau
>>>>>> >> > <rmannibucau@gmail.com>wrote:
>>>>>> >> >
>>>>>> >> >> Yes, basically use your own representation of validation.xml and
>>>>>> >> >> create the Configuration respecting what is in validation.xml (kind
>>>>>> of
>>>>>> >> >> custom to bval conversion). That's what we do (and we'll do) in tomee
>>>>>> >> >> validationbuilder
>>>>>> >> >> Romain Manni-Bucau
>>>>>> >> >> Twitter: @rmannibucau
>>>>>> >> >> Blog: http://rmannibucau.wordpress.com/
>>>>>> >> >> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>>>>>> >> >> Github: https://github.com/rmannibucau
>>>>>> >> >>
>>>>>> >> >>
>>>>>> >> >>
>>>>>> >> >> 2014-03-20 15:50 GMT+01:00 Michael Blyakher <
>>>>>> michael.blyakher@gmail.com
>>>>>> >> >:
>>>>>> >> >> > Providing a Configuration<?> implies that I am loading the classes
>>>>>> >> from
>>>>>> >> >> > validation.xml myself. This circumvents the bval instantiation and
>>>>>> >> >> > integration of CDI if it is available, no?
>>>>>> >> >> >
>>>>>> >> >> >
>>>>>> >> >> > On Thu, Mar 20, 2014 at 9:35 AM, Romain Manni-Bucau
>>>>>> >> >> > <rmannibucau@gmail.com>wrote:
>>>>>> >> >> >
>>>>>> >> >> >> Providing a Configuration<?> impl bval will get all it needs to
>>>>>> >> >> >> execute. For executable stuff there is a property you can add but
>>>>>> not
>>>>>> >> >> >> sure it will be needed for you.
>>>>>> >> >> >> Romain Manni-Bucau
>>>>>> >> >> >> Twitter: @rmannibucau
>>>>>> >> >> >> Blog: http://rmannibucau.wordpress.com/
>>>>>> >> >> >> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>>>>>> >> >> >> Github: https://github.com/rmannibucau
>>>>>> >> >> >>
>>>>>> >> >> >>
>>>>>> >> >> >>
>>>>>> >> >> >> 2014-03-20 15:22 GMT+01:00 Michael Blyakher <
>>>>>> >> michael.blyakher@gmail.com
>>>>>> >> >> >:
>>>>>> >> >> >> > Romain - I don't quite understand what you mean by using
>>>>>> >> >> >> > ConfigurationImpl.java is enough. I'm not finding that I can do
>>>>>> >> what I
>>>>>> >> >> >> > described with it. Can you elaborate on what you mean?
>>>>>> >> >> >> >
>>>>>> >> >> >> >
>>>>>> >> >> >> > On Thu, Mar 20, 2014 at 12:56 AM, Romain Manni-Bucau
>>>>>> >> >> >> > <rmannibucau@gmail.com>wrote:
>>>>>> >> >> >> >
>>>>>> >> >> >> >> Guys it is not needed normally and using
>>>>>> >> >> >> >>
>>>>>> >> >> >> >>
>>>>>> >> >> >>
>>>>>> >> >>
>>>>>> >>
>>>>>> https://svn.apache.org/repos/asf/bval/branches/bval-11/bval-jsr/src/main/java/org/apache/bval/jsr/ConfigurationImpl.javais
>>>>>> >> >> >> >> enough
>>>>>> >> >> >> >> Le 19 mars 2014 23:47, "Matt Benson" <gudnabrsam@gmail.com> a
>>>>>> >> écrit
>>>>>> >> >> :
>>>>>> >> >> >> >>
>>>>>> >> >> >> >> > No, but if you would file a JIRA issue it'd make us feel
>>>>>> >> popular.
>>>>>> >> >> ;)
>>>>>> >> >> >> >> >
>>>>>> >> >> >> >> > Thanks,
>>>>>> >> >> >> >> > Matt
>>>>>> >> >> >> >> >
>>>>>> >> >> >> >> > On Wed, Mar 19, 2014 at 5:44 PM, Michael Blyakher
>>>>>> >> >> >> >> > <michael.blyakher@gmail.com> wrote:
>>>>>> >> >> >> >> > > Right after sending of my last email I started wondering
>>>>>> this
>>>>>> >> >> >> approach
>>>>>> >> >> >> >> of
>>>>>> >> >> >> >> > > picking off the mappings in ValidationConfigType and
>>>>>> calling
>>>>>> >> >> >> >> > #addMapping()
>>>>>> >> >> >> >> > > would solve my problem and I'm pretty sure that it will.
>>>>>> Glad
>>>>>> >> we
>>>>>> >> >> >> got to
>>>>>> >> >> >> >> > the
>>>>>> >> >> >> >> > > same solution!
>>>>>> >> >> >> >> > >
>>>>>> >> >> >> >> > > Is there something tracking this work already that I can
>>>>>> >> follow?
>>>>>> >> >> >> >> > >
>>>>>> >> >> >> >> > >
>>>>>> >> >> >> >> > > On Wed, Mar 19, 2014 at 5:36 PM, Matt Benson <
>>>>>> >> >> gudnabrsam@gmail.com>
>>>>>> >> >> >> >> > wrote:
>>>>>> >> >> >> >> > >>
>>>>>> >> >> >> >> > >> Well, I haven't yet seen anything that tells me that it
>>>>>> >> would be
>>>>>> >> >> >> >> > >> correct for a mapping found in WEB-INF/validation.xml to
>>>>>> be
>>>>>> >> >> >> resolved
>>>>>> >> >> >> >> > >> from the ServletContext as opposed to the classpath, but
>>>>>> >> since
>>>>>> >> >> in
>>>>>> >> >> >> an
>>>>>> >> >> >> >> > >> EE server the BV impl (here BVal) would live "above" the
>>>>>> >> >> >> application
>>>>>> >> >> >> >> > >> code there's a problem regardless in having BVal load the
>>>>>> >> >> mapping
>>>>>> >> >> >> >> > >> resources, I think, because it won't have awareness of a
>>>>>> >> given
>>>>>> >> >> >> >> > >> webapp's classloader.
>>>>>> >> >> >> >> > >>
>>>>>> >> >> >> >> > >> However, using Romain's approach of having the actual
>>>>>> parsed
>>>>>> >> >> JAXB
>>>>>> >> >> >> >> > >> ValidationConfigType object be passed to BVal would seem
>>>>>> to
>>>>>> >> take
>>>>>> >> >> >> care
>>>>>> >> >> >> >> > >> of your issue: the EE server could use JAXB to produce
>>>>>> this
>>>>>> >> from
>>>>>> >> >> >> >> > >> WEB-INF/validation.xml, then pick off the mapping
>>>>>> elements,
>>>>>> >> >> provide
>>>>>> >> >> >> >> > >> the modified ValidationConfigType object to the BV
>>>>>> >> >> bootstrapping,
>>>>>> >> >> >> and
>>>>>> >> >> >> >> > >> call #addMapping() for the app-specific resource streams.
>>>>>> How
>>>>>> >> >> does
>>>>>> >> >> >> >> > >> that sound?
>>>>>> >> >> >> >> > >>
>>>>>> >> >> >> >> > >> Matt
>>>>>> >> >> >> >> > >>
>>>>>> >> >> >> >> > >> On Wed, Mar 19, 2014 at 5:25 PM, Michael Blyakher
>>>>>> >> >> >> >> > >> <michael.blyakher@gmail.com> wrote:
>>>>>> >> >> >> >> > >> > From an application perspective I understand that
>>>>>> >> regardless
>>>>>> >> >> how
>>>>>> >> >> >> the
>>>>>> >> >> >> >> > >> > ValidatorFactory is built there would never be a desire
>>>>>> to
>>>>>> >> >> ignore
>>>>>> >> >> >> >> > >> > mappings
>>>>>> >> >> >> >> > >> > files specified in validation.xml. The application
>>>>>> already
>>>>>> >> >> knows
>>>>>> >> >> >> >> what
>>>>>> >> >> >> >> > it
>>>>>> >> >> >> >> > >> > wants and therefor anything specified should be used
>>>>>> from
>>>>>> >> both
>>>>>> >> >> >> ways
>>>>>> >> >> >> >> to
>>>>>> >> >> >> >> > >> > specify mappings.
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> > In an EE app server environment, the server needs to
>>>>>> make
>>>>>> >> the
>>>>>> >> >> >> >> > >> > Validator/ValidatorFactory for each module available
>>>>>> >> through
>>>>>> >> >> >> >> injection
>>>>>> >> >> >> >> > >> > or
>>>>>> >> >> >> >> > >> > lookup. This means the app server is bootstrapping the
>>>>>> >> >> >> >> > ValidatorFactory
>>>>>> >> >> >> >> > >> > itself, using the module deployment descriptors
>>>>>> >> >> (validation.xml)
>>>>>> >> >> >> to
>>>>>> >> >> >> >> > >> > create
>>>>>> >> >> >> >> > >> > it before passing it back to the application. With this
>>>>>> in
>>>>>> >> >> mind,
>>>>>> >> >> >> the
>>>>>> >> >> >> >> > app
>>>>>> >> >> >> >> > >> > server needs to be able to direct bval to specify that
>>>>>> the
>>>>>> >> >> >> location
>>>>>> >> >> >> >> of
>>>>>> >> >> >> >> > >> > validation.xml will be under WEB-INF for a web module
>>>>>> (if
>>>>>> >> it
>>>>>> >> >> was
>>>>>> >> >> >> >> > >> > included
>>>>>> >> >> >> >> > >> > by the app developer). As we discussed earlier, bval
>>>>>> >> doesn't
>>>>>> >> >> >> handle
>>>>>> >> >> >> >> > >> > this.
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> > Taking a step back to 1.0 this wasn't an issue, because
>>>>>> as
>>>>>> >> >> long
>>>>>> >> >> >> as
>>>>>> >> >> >> >> the
>>>>>> >> >> >> >> > >> > EE
>>>>>> >> >> >> >> > >> > app server could handle parsing validation.xml since it
>>>>>> >> knows
>>>>>> >> >> >> >> > where/how
>>>>>> >> >> >> >> > >> > to
>>>>>> >> >> >> >> > >> > find it and programatically bootstrap the
>>>>>> Configuration, it
>>>>>> >> >> could
>>>>>> >> >> >> >> then
>>>>>> >> >> >> >> > >> > call
>>>>>> >> >> >> >> > >> > ignoreXMLConfiguration and nothing would be lost. Now
>>>>>> with
>>>>>> >> >> 1.1,
>>>>>> >> >> >> all
>>>>>> >> >> >> >> > CDI
>>>>>> >> >> >> >> > >> > integration bval does is lost if the EE app server
>>>>>> follows
>>>>>> >> >> this
>>>>>> >> >> >> >> > pattern.
>>>>>> >> >> >> >> > >> > Thus, to utilize the CDI integration piece, bval needs
>>>>>> to
>>>>>> >> >> create
>>>>>> >> >> >> all
>>>>>> >> >> >> >> > of
>>>>>> >> >> >> >> > >> > the
>>>>>> >> >> >> >> > >> > configuration components, but that also means that it
>>>>>> >> needs to
>>>>>> >> >> >> parse
>>>>>> >> >> >> >> > >> > validation.xml (or have it be provided to it).
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> > Now, if something (method TBD) was done to find
>>>>>> >> >> >> >> WEB-INF/validation.xml
>>>>>> >> >> >> >> > >> > by
>>>>>> >> >> >> >> > >> > bval, how then would it go about trying to find the
>>>>>> mapping
>>>>>> >> >> >> files?
>>>>>> >> >> >> >> > This
>>>>>> >> >> >> >> > >> > is
>>>>>> >> >> >> >> > >> > done the same way that validation.xml was looked for
>>>>>> >> >> originally
>>>>>> >> >> >> >> before
>>>>>> >> >> >> >> > >> > this
>>>>>> >> >> >> >> > >> > workaround/solution, which gets us into the same
>>>>>> situation
>>>>>> >> >> where
>>>>>> >> >> >> we
>>>>>> >> >> >> >> > >> > couldn't find WEB-INF/validation.xml if the mapping
>>>>>> file is
>>>>>> >> >> >> >> > >> > WEB-INF/my-mapping.xml (I'm curious where the spec
>>>>>> >> indicates
>>>>>> >> >> that
>>>>>> >> >> >> >> this
>>>>>> >> >> >> >> > >> > location isn't compliant).
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> > So in short, it's not that I want to be able to ignore
>>>>>> >> >> mappings
>>>>>> >> >> >> >> > >> > altogether.
>>>>>> >> >> >> >> > >> > I was just thinking that if WEB-INF is a valid location
>>>>>> for
>>>>>> >> >> the
>>>>>> >> >> >> >> > mapping
>>>>>> >> >> >> >> > >> > file to live, bval won't be able to find it either, so
>>>>>> even
>>>>>> >> >> if a
>>>>>> >> >> >> >> > >> > workaround
>>>>>> >> >> >> >> > >> > is provided for finding validation.xml, any mappings
>>>>>> >> >> specified in
>>>>>> >> >> >> >> xml
>>>>>> >> >> >> >> > >> > will
>>>>>> >> >> >> >> > >> > not be found either. The idea of being able to
>>>>>> >> programatically
>>>>>> >> >> >> >> specify
>>>>>> >> >> >> >> > >> > that
>>>>>> >> >> >> >> > >> > xml mappings should be ignored is so that the EE app
>>>>>> server
>>>>>> >> >> could
>>>>>> >> >> >> >> > >> > convert
>>>>>> >> >> >> >> > >> > them into InputStream's and then somehow indicate to
>>>>>> bval
>>>>>> >> >> that it
>>>>>> >> >> >> >> > >> > doesn't
>>>>>> >> >> >> >> > >> > need to do anything with the xml anymore.
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> > Hopefully all of that rambling makes sense and clarifies
>>>>>> >> the
>>>>>> >> >> >> problem
>>>>>> >> >> >> >> > I'm
>>>>>> >> >> >> >> > >> > butting into :)
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> > On Wed, Mar 19, 2014 at 4:28 PM, Romain Manni-Bucau
>>>>>> >> >> >> >> > >> > <rmannibucau@gmail.com>wrote:
>>>>>> >> >> >> >> > >> >
>>>>>> >> >> >> >> > >> >> I think mapping in web-inf is not spec compliant
>>>>>> >> >> >> >> > >> >>
>>>>>> >> >> >> >> > >> >> That said calling ignoreXmlConfig you can already do
>>>>>> what
>>>>>> >> you
>>>>>> >> >> >> want
>>>>>> >> >> >> >> > >> >>
>>>>>> >> >> >> >> > >> >> Finally i think the spi or assimilated  is useless and
>>>>>> >> using
>>>>>> >> >> >> api +
>>>>>> >> >> >> >> > >> >> maybe
>>>>>> >> >> >> >> > >> >> few custom properties should be enough so i wouldnt
>>>>>> add it
>>>>>> >> >> >> before
>>>>>> >> >> >> >> it
>>>>>> >> >> >> >> > >> >> sould
>>>>>> >> >> >> >> > >> >> be mandatory. It generally breaks the framework which
>>>>>> is
>>>>>> >> not
>>>>>> >> >> >> enough
>>>>>> >> >> >> >> > >> >> tested
>>>>>> >> >> >> >> > >> >> then.
>>>>>> >> >> >> >> > >> >> Le 19 mars 2014 22:04, "Michael Blyakher" <
>>>>>> >> >> >> >> > michael.blyakher@gmail.com>
>>>>>> >> >> >> >> > >> >> a
>>>>>> >> >> >> >> > >> >> écrit :
>>>>>> >> >> >> >> > >> >>
>>>>>> >> >> >> >> > >> >> > I'm prototyping the development efforts for pulling
>>>>>> in
>>>>>> >> the
>>>>>> >> >> 1.1
>>>>>> >> >> >> >> > >> >> > implementation into an EE app server, so I need be
>>>>>> able
>>>>>> >> to
>>>>>> >> >> >> press
>>>>>> >> >> >> >> > the
>>>>>> >> >> >> >> > >> >> right
>>>>>> >> >> >> >> > >> >> > buttons on bval so that it is able to handle both the
>>>>>> >> >> mappings
>>>>>> >> >> >> >> > files
>>>>>> >> >> >> >> > >> >> > and
>>>>>> >> >> >> >> > >> >> > validation.xml. (I won't be able to control how an
>>>>>> >> >> application
>>>>>> >> >> >> >> > >> >> > specifies
>>>>>> >> >> >> >> > >> >> > it's mappings, but I need to ensure that specifying
>>>>>> >> them in
>>>>>> >> >> >> xml
>>>>>> >> >> >> >> > under
>>>>>> >> >> >> >> > >> >> > WEB-INF works)
>>>>>> >> >> >> >> > >> >> >
>>>>>> >> >> >> >> > >> >> > My concern was that I was going to run into the same
>>>>>> >> issues
>>>>>> >> >> >> >> loading
>>>>>> >> >> >> >> > >> >> > the
>>>>>> >> >> >> >> > >> >> > mappings files as with validation.xml from WEB-INF
>>>>>> >> unless
>>>>>> >> >> the
>>>>>> >> >> >> >> > >> >> > proposed
>>>>>> >> >> >> >> > >> >> > change somehow provided a way to tell bval to skip
>>>>>> using
>>>>>> >> >> the
>>>>>> >> >> >> >> > mappings
>>>>>> >> >> >> >> > >> >> found
>>>>>> >> >> >> >> > >> >> > in the provided parsed validation.xml and only use
>>>>>> those
>>>>>> >> >> >> provided
>>>>>> >> >> >> >> > by
>>>>>> >> >> >> >> > >> >> > calling Configuration#addMapping(). Otherwise I would
>>>>>> >> call
>>>>>> >> >> >> >> > >> >> > Configuration#addMapping(), but bval would still try
>>>>>> to
>>>>>> >> >> find
>>>>>> >> >> >> the
>>>>>> >> >> >> >> > >> >> > mappings
>>>>>> >> >> >> >> > >> >> > resources itself and fail to do so. Does that make
>>>>>> >> sense?
>>>>>> >> >> >> >> > >> >> >
>>>>>> >> >> >> >> > >> >> >
>>>>>> >> >> >> >> > >> >> > On Wed, Mar 19, 2014 at 12:32 PM, Matt Benson <
>>>>>> >> >> >> >> > gudnabrsam@gmail.com>
>>>>>> >> >> >> >> > >> >> > wrote:
>>>>>> >> >> >> >> > >> >> >
>>>>>> >> >> >> >> > >> >> > > XML constraint mapping files are separate from xml
>>>>>> >> >> >> validation
>>>>>> >> >> >> >> > >> >> > > config.
>>>>>> >> >> >> >> > >> >> > > So you either provide them via
>>>>>> >> Configuration#addMapping()
>>>>>> >> >> >> or in
>>>>>> >> >> >> >> > >> >> > > your
>>>>>> >> >> >> >> > >> >> > > validation.xml (or whatever you override with).
>>>>>> >> >> >> >> > >> >> > >
>>>>>> >> >> >> >> > >> >> > > Matt
>>>>>> >> >> >> >> > >> >> > >
>>>>>> >> >> >> >> > >> >> > > On Wed, Mar 19, 2014 at 11:39 AM, Michael Blyakher
>>>>>> >> >> >> >> > >> >> > > <michael.blyakher@gmail.com> wrote:
>>>>>> >> >> >> >> > >> >> > > > So if I understand this latest proposal
>>>>>> correctly,
>>>>>> >> any
>>>>>> >> >> >> >> > >> >> > > > bootstrapper
>>>>>> >> >> >> >> > >> >> (EE
>>>>>> >> >> >> >> > >> >> > > > servers specifically) will be able to provide the
>>>>>> >> >> parsed
>>>>>> >> >> >> >> > >> >> validation.xml
>>>>>> >> >> >> >> > >> >> > > > configuration to the
>>>>>> ApacheValidatorConfiguration?
>>>>>> >> >> >> >> > >> >> > > >
>>>>>> >> >> >> >> > >> >> > > > If so, how will this work with the mappings
>>>>>> config
>>>>>> >> >> files?
>>>>>> >> >> >> If
>>>>>> >> >> >> >> > for
>>>>>> >> >> >> >> > >> >> > example
>>>>>> >> >> >> >> > >> >> > > I
>>>>>> >> >> >> >> > >> >> > > > have my constraints defined in
>>>>>> >> WEB-INF/my-mappings.xml,
>>>>>> >> >> >> while
>>>>>> >> >> >> >> > >> >> > > bootstrapping
>>>>>> >> >> >> >> > >> >> > > > will I still be able to set the InputStream for
>>>>>> that
>>>>>> >> >> file
>>>>>> >> >> >> >> > without
>>>>>> >> >> >> >> > >> >> bval
>>>>>> >> >> >> >> > >> >> > > > trying to do it as well (and not finding this
>>>>>> >> resource
>>>>>> >> >> at
>>>>>> >> >> >> >> this
>>>>>> >> >> >> >> > >> >> > location)?
>>>>>> >> >> >> >> > >> >> > > > Previously this could be accomplished by
>>>>>> specifying
>>>>>> >> >> >> >> > >> >> > > > Configuration.ignoreXMLConfiguration, but I don't
>>>>>> >> quite
>>>>>> >> >> >> see
>>>>>> >> >> >> >> how
>>>>>> >> >> >> >> > >> >> > > > that
>>>>>> >> >> >> >> > >> >> > > would
>>>>>> >> >> >> >> > >> >> > > > work in this case.
>>>>>> >> >> >> >> > >> >> > > >
>>>>>> >> >> >> >> > >> >> > > > Thanks,
>>>>>> >> >> >> >> > >> >> > > > Mike
>>>>>> >> >> >> >> > >> >> > > >
>>>>>> >> >> >> >> > >> >> > > >
>>>>>> >> >> >> >> > >> >> > > > On Wed, Mar 19, 2014 at 11:11 AM, Romain
>>>>>> >> Manni-Bucau <
>>>>>> >> >> >> >> > >> >> > > rmannibucau@gmail.com>
>>>>>> >> >> >> >> > >> >> > > > wrote:
>>>>>> >> >> >> >> > >> >> > > >>
>>>>>> >> >> >> >> > >> >> > > >> Well if we can avoid to fork/branch tomee before
>>>>>> >> next
>>>>>> >> >> >> >> release
>>>>>> >> >> >> >> > >> >> > > >> would
>>>>>> >> >> >> >> > >> >> be
>>>>>> >> >> >> >> > >> >> > > >> awesome but yes it sonds reasonable and avoiding
>>>>>> >> jvm
>>>>>> >> >> SPI
>>>>>> >> >> >> is
>>>>>> >> >> >> >> > >> >> > > >> awesome
>>>>>> >> >> >> >> > >> >> > > >> Romain Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> Twitter: @rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> Blog: http://rmannibucau.wordpress.com/
>>>>>> >> >> >> >> > >> >> > > >> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> Github: https://github.com/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >>
>>>>>> >> >> >> >> > >> >> > > >>
>>>>>> >> >> >> >> > >> >> > > >>
>>>>>> >> >> >> >> > >> >> > > >> 2014-03-19 17:10 GMT+01:00 Matt Benson <
>>>>>> >> >> >> >> gudnabrsam@gmail.com
>>>>>> >> >> >> >> > >:
>>>>>> >> >> >> >> > >> >> > > >> > Actually, come to think of it, we don't have
>>>>>> to
>>>>>> >> do
>>>>>> >> >> it
>>>>>> >> >> >> as a
>>>>>> >> >> >> >> > >> >> > "services"
>>>>>> >> >> >> >> > >> >> > > >> > SPI at all; we can just define the interface
>>>>>> and
>>>>>> >> >> have
>>>>>> >> >> >> it
>>>>>> >> >> >> >> be
>>>>>> >> >> >> >> > a
>>>>>> >> >> >> >> > >> >> custom
>>>>>> >> >> >> >> > >> >> > > >> > config item for ApacheValidatorConfiguration.
>>>>>> >> This
>>>>>> >> >> >> makes
>>>>>> >> >> >> >> it
>>>>>> >> >> >> >> > >> >> > > >> > more
>>>>>> >> >> >> >> > >> >> > > >> > explicit and TomEE can just specify when
>>>>>> >> >> >> >> > >> >> > > >> > bootstrapping--hopefully,
>>>>>> >> >> >> >> > >> >> > > >> > anyway. We'll see if there are any gotchas and
>>>>>> >> >> >> hopefully
>>>>>> >> >> >> >> we
>>>>>> >> >> >> >> > >> >> > > >> > can
>>>>>> >> >> >> >> > >> >> get
>>>>>> >> >> >> >> > >> >> > it
>>>>>> >> >> >> >> > >> >> > > >> > working in a TomEE branch or fork before we
>>>>>> set
>>>>>> >> it
>>>>>> >> >> in
>>>>>> >> >> >> >> stone.
>>>>>> >> >> >> >> > >> >> > > >> > Okay?
>>>>>> >> >> >> >> > >> >> > > >> >
>>>>>> >> >> >> >> > >> >> > > >> > Matt
>>>>>> >> >> >> >> > >> >> > > >> >
>>>>>> >> >> >> >> > >> >> > > >> > On Wed, Mar 19, 2014 at 11:06 AM, Matt Benson
>>>>>> <
>>>>>> >> >> >> >> > >> >> gudnabrsam@gmail.com
>>>>>> >> >> >> >> > >> >> > >
>>>>>> >> >> >> >> > >> >> > > >> > wrote:
>>>>>> >> >> >> >> > >> >> > > >> >> Well, in that case I don't see how we can
>>>>>> >> really go
>>>>>> >> >> >> wrong
>>>>>> >> >> >> >> > >> >> > > >> >> there.
>>>>>> >> >> >> >> > >> >> > I'll
>>>>>> >> >> >> >> > >> >> > > >> >> try to remember to do this as I'm hacking
>>>>>> BVal
>>>>>> >> in
>>>>>> >> >> the
>>>>>> >> >> >> >> > coming
>>>>>> >> >> >> >> > >> >> weeks
>>>>>> >> >> >> >> > >> >> > > and
>>>>>> >> >> >> >> > >> >> > > >> >> maybe we can then see how it looks in TomEE.
>>>>>> >> >> >> >> > >> >> > > >> >>
>>>>>> >> >> >> >> > >> >> > > >> >> Matt
>>>>>> >> >> >> >> > >> >> > > >> >>
>>>>>> >> >> >> >> > >> >> > > >> >> On Wed, Mar 19, 2014 at 11:00 AM, Romain
>>>>>> >> >> Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >> <rmannibucau@gmail.com> wrote:
>>>>>> >> >> >> >> > >> >> > > >> >>> that's what I was thinking about but when I
>>>>>> >> hacked
>>>>>> >> >> >> 1.1
>>>>>> >> >> >> >> > >> >> > > >> >>> branch I
>>>>>> >> >> >> >> > >> >> > was
>>>>>> >> >> >> >> > >> >> > > >> >>> really thinking adding it when integrating
>>>>>> >> tomee
>>>>>> >> >> to
>>>>>> >> >> >> >> avoid
>>>>>> >> >> >> >> > a
>>>>>> >> >> >> >> > >> >> > useless
>>>>>> >> >> >> >> > >> >> > > or
>>>>>> >> >> >> >> > >> >> > > >> >>> wrong SPI.
>>>>>> >> >> >> >> > >> >> > > >> >>> Romain Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>> Twitter: @rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>> Blog: http://rmannibucau.wordpress.com/
>>>>>> >> >> >> >> > >> >> > > >> >>> LinkedIn:
>>>>>> >> http://fr.linkedin.com/in/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>> Github: https://github.com/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>
>>>>>> >> >> >> >> > >> >> > > >> >>>
>>>>>> >> >> >> >> > >> >> > > >> >>>
>>>>>> >> >> >> >> > >> >> > > >> >>> 2014-03-19 16:59 GMT+01:00 Matt Benson
>>>>>> >> >> >> >> > >> >> > > >> >>> <gudnabrsam@gmail.com>:
>>>>>> >> >> >> >> > >> >> > > >> >>>> So are you proposing the SPI look more
>>>>>> like:
>>>>>> >> >> >> >> > >> >> > > >> >>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>> public interface
>>>>>> >> DefaultValidationConfigProvider
>>>>>> >> >> {
>>>>>> >> >> >> >> > >> >> > > >> >>>>
>>>>>> org.apache.bval.jsr.xml.ValidationConfigType
>>>>>> >> >> >> >> > >> >> > > >> >>>> getDefaultValidationConfig();
>>>>>> >> >> >> >> > >> >> > > >> >>>> }
>>>>>> >> >> >> >> > >> >> > > >> >>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>> ?
>>>>>> >> >> >> >> > >> >> > > >> >>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>> Matt
>>>>>> >> >> >> >> > >> >> > > >> >>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>> On Wed, Mar 19, 2014 at 10:57 AM, Romain
>>>>>> >> >> Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>> <rmannibucau@gmail.com> wrote:
>>>>>> >> >> >> >> > >> >> > > >> >>>>> Cause:
>>>>>> >> >> >> >> > >> >> > > >> >>>>> 1) TomEE added some features relying on
>>>>>> >> internal
>>>>>> >> >> >> >> config
>>>>>> >> >> >> >> > >> >> > > >> >>>>> (placeholders etc)
>>>>>> >> >> >> >> > >> >> > > >> >>>>> 2) TomEE uses its own model for all EE
>>>>>> >> >> descriptors
>>>>>> >> >> >> >> > >> >> > > >> >>>>> whatever
>>>>>> >> >> >> >> > >> >> the
>>>>>> >> >> >> >> > >> >> > > spec
>>>>>> >> >> >> >> > >> >> > > >> >>>>> is
>>>>>> >> >> >> >> > >> >> > > >> >>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>> That's not an issue on BVal side but it
>>>>>> will
>>>>>> >> >> need
>>>>>> >> >> >> to
>>>>>> >> >> >> >> be
>>>>>> >> >> >> >> > >> >> > integrated
>>>>>> >> >> >> >> > >> >> > > >> >>>>> without forking as much as possible
>>>>>> >> >> >> >> > >> >> > > >> >>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>> Romain Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>> Twitter: @rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>> Blog: http://rmannibucau.wordpress.com/
>>>>>> >> >> >> >> > >> >> > > >> >>>>> LinkedIn:
>>>>>> >> http://fr.linkedin.com/in/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>> Github: https://github.com/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>> 2014-03-19 16:52 GMT+01:00 Matt Benson
>>>>>> >> >> >> >> > >> >> > > >> >>>>> <gudnabrsam@gmail.com
>>>>>> >> >> >> >> > >> >> >:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>> Why can't TomEE rely on BVal for
>>>>>> parsing? We
>>>>>> >> >> >> should
>>>>>> >> >> >> >> > >> >> > > >> >>>>>> devise
>>>>>> >> >> >> >> > >> >> > > >> >>>>>> something
>>>>>> >> >> >> >> > >> >> > > >> >>>>>> as simple as possible, whatever the case.
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>> Matt
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>> On Wed, Mar 19, 2014 at 10:45 AM, Romain
>>>>>> >> >> >> Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>> <rmannibucau@gmail.com> wrote:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> well this way we'll need another spi for
>>>>>> >> TomEE
>>>>>> >> >> >> which
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> can't
>>>>>> >> >> >> >> > >> >> > rely
>>>>>> >> >> >> >> > >> >> > > on
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> BVal for parsing. That's why I thought
>>>>>> >> sending
>>>>>> >> >> >> the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> parsing
>>>>>> >> >> >> >> > >> >> > > result
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> BTW any urgence on it?
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> Romain Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> Twitter: @rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> Blog: http://rmannibucau.wordpress.com/
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> LinkedIn:
>>>>>> >> >> http://fr.linkedin.com/in/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> Github: https://github.com/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> 2014-03-19 16:43 GMT+01:00 Matt Benson
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>> <mbenson@apache.org
>>>>>> >> >> >> >> > >> >> >:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> I was thinking along the lines Michael
>>>>>> >> says.
>>>>>> >> >> >> e.g.:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> public interface
>>>>>> >> >> >> >> > DefaultValidationConfigurationProvider
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> {
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>   InputStream
>>>>>> >> >> >> getDefaultValidationConfiguration();
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> }
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> Then we use ServiceLoader (functional
>>>>>> >> >> equivalent
>>>>>> >> >> >> >> for
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> BVal
>>>>>> >> >> >> >> > >> >> > 1.0,
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> Java 5)
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> to find any available implementations.
>>>>>> If
>>>>>> >> >> none
>>>>>> >> >> >> >> found,
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> we
>>>>>> >> >> >> >> > >> >> fall
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> back to:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> class
>>>>>> >> >> >> >> StandardDefaultValidationConfigurationProvider
>>>>>> >> >> >> >> > >> >> > implements
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> DefaultValidationConfigurationProvider
>>>>>> {
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>   final Properties properties;
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > StandardDefaultValidationConfigurationProvider(Properties
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> properties) {
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>     this.properties = properties;
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>   }
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>   public InputStream
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> getDefaultValidationConfiguration() {
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>     // look for property pointing to
>>>>>> >> custom
>>>>>> >> >> >> >> resource,
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> else
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> META-INF/validation.xml
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>     // ensure only one such resource
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>     // return
>>>>>> >> >> getResourceAsStream(resourceName)
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>   }
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> }
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> This way TomEE would simply have to
>>>>>> >> provide:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> WebApplicationDefaultValidationConfigurationProvider
>>>>>> >> >> >> >> > >> >> > implements
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> DefaultValidationConfigurationProvider
>>>>>> {
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>   public InputStream
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> getDefaultValidationConfiguration() {
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>     return
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > >
>>>>>> >> >> >> >> >
>>>>>> >> getServletContext().getResourceAsStream("WEB-INF/validation.xml");
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>   }
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>   private static ServletContext
>>>>>> >> >> >> >> getServletContext() {
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>     // TBD
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>   }
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> }
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> Matt
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> On Wed, Mar 19, 2014 at 10:28 AM,
>>>>>> Romain
>>>>>> >> >> >> >> Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> <rmannibucau@gmail.com> wrote:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> Actually I'd expect the SPI to give
>>>>>> the
>>>>>> >> >> >> processed
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> instance
>>>>>> >> >> >> >> > >> >> > and
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> not the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> location. That's why i sugegsted to
>>>>>> wait
>>>>>> >> a
>>>>>> >> >> bit
>>>>>> >> >> >> for
>>>>>> >> >> >> >> > it
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> to
>>>>>> >> >> >> >> > >> >> see
>>>>>> >> >> >> >> > >> >> > > the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> real
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> need.
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> Romain Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> Twitter: @rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> Blog:
>>>>>> http://rmannibucau.wordpress.com/
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> LinkedIn:
>>>>>> >> >> >> http://fr.linkedin.com/in/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> Github:
>>>>>> https://github.com/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> 2014-03-19 16:10 GMT+01:00 Michael
>>>>>> >> Blyakher
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>> <michael.blyakher@gmail.com>:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>> How would an SPI like this work?
>>>>>> Would
>>>>>> >> it
>>>>>> >> >> >> allow
>>>>>> >> >> >> >> the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>> EE
>>>>>> >> >> >> >> > >> >> > server
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>> to specify
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>> the location of the validation.xml
>>>>>> >> (maybe
>>>>>> >> >> in
>>>>>> >> >> >> the
>>>>>> >> >> >> >> > form
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>> of
>>>>>> >> >> >> >> > >> >> an
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>> InputStream)?
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>> On Tue, Mar 18, 2014 at 1:59 PM,
>>>>>> Romain
>>>>>> >> >> >> >> Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>> <rmannibucau@gmail.com>wrote:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> tomee parses it itself and then
>>>>>> create
>>>>>> >> the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> configuration
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> itself. I
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> think we can wait tomee starts
>>>>>> javaee7
>>>>>> >> to
>>>>>> >> >> >> write
>>>>>> >> >> >> >> it
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> since
>>>>>> >> >> >> >> > >> >> > it
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> should be
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> very soon (when next release is
>>>>>> done)
>>>>>> >> and
>>>>>> >> >> it
>>>>>> >> >> >> >> would
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> be
>>>>>> >> >> >> >> > >> >> the
>>>>>> >> >> >> >> > >> >> > > main
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> and
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> more demanding user.
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> Romain Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> Twitter: @rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> Blog:
>>>>>> >> http://rmannibucau.wordpress.com/
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> LinkedIn:
>>>>>> >> >> >> http://fr.linkedin.com/in/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> Github:
>>>>>> https://github.com/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> 2014-03-18 19:42 GMT+01:00 Matt
>>>>>> Benson
>>>>>> >> <
>>>>>> >> >> >> >> > >> >> > mbenson@apache.org
>>>>>> >> >> >> >> > >> >> > > >:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > On Tue, Mar 18, 2014 at 1:01 PM,
>>>>>> >> Michael
>>>>>> >> >> >> >> > Blyakher
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > <michael.blyakher@gmail.com>
>>>>>> wrote:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> Hi All,
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> Thanks for the quick replies, and
>>>>>> >> >> >> apologies
>>>>>> >> >> >> >> for
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> not
>>>>>> >> >> >> >> > >> >> > being
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> more specific
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> - I
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> was quoting the EE 7 Platform
>>>>>> spec
>>>>>> >> as
>>>>>> >> >> I am
>>>>>> >> >> >> >> > >> >> particularly
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> interested in
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> using
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> the bval 1.1 implementation that
>>>>>> >> hasn't
>>>>>> >> >> >> been
>>>>>> >> >> >> >> > >> >> officially
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> released yet.
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> But from what I am hearing, it is
>>>>>> >> the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> responsibility
>>>>>> >> >> >> >> > >> >> of
>>>>>> >> >> >> >> > >> >> > > an
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> EE server to
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> handle the WEB-INF case. I can
>>>>>> see
>>>>>> >> how
>>>>>> >> >> >> this
>>>>>> >> >> >> >> is
>>>>>> >> >> >> >> > >> >> possible
>>>>>> >> >> >> >> > >> >> > > for
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> the 1.0
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> implementation, as the server can
>>>>>> >> parse
>>>>>> >> >> >> the
>>>>>> >> >> >> >> > >> >> > > validation.xml
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> itself and
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> bootstrap the configuration
>>>>>> through
>>>>>> >> the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> validation
>>>>>> >> >> >> >> > >> >> spec
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> API's. How would
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> this be done for the current 1.1
>>>>>> >> >> >> >> implementation
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> in
>>>>>> >> >> >> >> > >> >> the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> bval-1.1 branch
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> in
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> the repository? I don't see how
>>>>>> the
>>>>>> >> >> values
>>>>>> >> >> >> >> for
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> "executable-validation"
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> element could be provided to the
>>>>>> >> impl
>>>>>> >> >> >> through
>>>>>> >> >> >> >> > the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> validation spec API's.
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > Well, the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>>
>>>>>> >> >> >> >> > >> >> > >
>>>>>> >> >> >> >> > >> >> >
>>>>>> >> >> >> >> > >> >>
>>>>>> >> >> >> >> > >> >>
>>>>>> >> >> >> >> >
>>>>>> >> >> >> >>
>>>>>> >> >> >>
>>>>>> >> >>
>>>>>> >>
>>>>>> http://bval.apache.org/mvnsite/bval-jsr303/apidocs/org/apache/bval/jsr303/ApacheValidatorConfiguration.Properties.html#VALIDATION_XML_PATH
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > property can be used to point to a
>>>>>> >> >> >> different
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > resource
>>>>>> >> >> >> >> > >> >> on
>>>>>> >> >> >> >> > >> >> > > the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > classpath, but I can't find any
>>>>>> >> >> mechanism
>>>>>> >> >> >> that
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > could
>>>>>> >> >> >> >> > >> >> be
>>>>>> >> >> >> >> > >> >> > > used
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > to hook
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > up WEB-INF/validation.xml, and I
>>>>>> >> can't
>>>>>> >> >> find
>>>>>> >> >> >> >> how
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > TomEE
>>>>>> >> >> >> >> > >> >> > does
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > it, so
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > AFAICT you have indeed found what
>>>>>> I
>>>>>> >> >> >> consider a
>>>>>> >> >> >> >> > >> >> problem.
>>>>>> >> >> >> >> > >> >> > > Off
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > the top of
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > my head I think we could solve it
>>>>>> by
>>>>>> >> >> >> adding a
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > simple
>>>>>> >> >> >> >> > >> >> SPI
>>>>>> >> >> >> >> > >> >> > > to
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > discover
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > the default validation
>>>>>> configuration
>>>>>> >> >> >> resource.
>>>>>> >> >> >> >> > >> >> Thoughts?
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > Matt
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> Thanks,
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> Michael
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> On Tue, Mar 18, 2014 at 12:13 PM,
>>>>>> >> >> Romain
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> <rmannibucau@gmail.com>wrote:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> Hi
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> Bval only looks in META-INF but
>>>>>> >> TomEE
>>>>>> >> >> for
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> instance
>>>>>> >> >> >> >> > >> >> > (more
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> generally EE
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> servers) handles WEB-INF case.
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> Romain Manni-Bucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> Twitter: @rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> Blog:
>>>>>> >> >> http://rmannibucau.wordpress.com/
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> LinkedIn:
>>>>>> >> >> >> >> > http://fr.linkedin.com/in/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> Github:
>>>>>> >> >> https://github.com/rmannibucau
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> 2014-03-18 17:50 GMT+01:00
>>>>>> Michael
>>>>>> >> >> >> Blyakher
>>>>>> >> >> >> >> <
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> michael.blyakher@gmail.com>:
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > Hi,
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> >
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > Where is the validation.xml
>>>>>> >> supposed
>>>>>> >> >> >> to be
>>>>>> >> >> >> >> > for
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > a
>>>>>> >> >> >> >> > >> >> web
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > archive? The
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> bval
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > spec's only indicate the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > "META-INF/validation.xml"
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > location, but the
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> EE
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > platform spec indicates that
>>>>>> for
>>>>>> >> a
>>>>>> >> >> web
>>>>>> >> >> >> >> > archive
>>>>>> >> >> >> >> > >> >> this
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > location must be
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > "WEB-INF/validation.xml".
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> >
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > EE.5.17 - "The name of the
>>>>>> >> >> descriptor
>>>>>> >> >> >> is
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > WEB-INF/validation.xml for
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> web
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > modules and
>>>>>> >> META-INF/validation.xml
>>>>>> >> >> for
>>>>>> >> >> >> >> all
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > other
>>>>>> >> >> >> >> > >> >> > > types
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > of modules."
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> >
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > Given this, I don't see
>>>>>> anywhere
>>>>>> >> in
>>>>>> >> >> the
>>>>>> >> >> >> >> bval
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > 1.0
>>>>>> >> >> >> >> > >> >> or
>>>>>> >> >> >> >> > >> >> > > 1.1
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > code that
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> handles
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > this. Am I missing something
>>>>>> or
>>>>>> >> does
>>>>>> >> >> >> this
>>>>>> >> >> >> >> > >> >> > > implementation
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > not handle
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> this
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > case for web archives?
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> >
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > Thanks,
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> > Michael
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>>
>>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>>
>>>>>> >> >> >> >> > >> >> > > >
>>>>>> >> >> >> >> > >> >> > > >
>>>>>> >> >> >> >> > >> >> > >
>>>>>> >> >> >> >> > >> >> >
>>>>>> >> >> >> >> > >> >>
>>>>>> >> >> >> >> > >
>>>>>> >> >> >> >> > >
>>>>>> >> >> >> >> >
>>>>>> >> >> >> >>
>>>>>> >> >> >>
>>>>>> >> >>
>>>>>> >>
>>>>>>

Mime
View raw message