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 <gudnabr...@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 > <rmannibu...@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 <gudnabr...@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 >>> <rmannibu...@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.blyak...@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 >>>>> <rmannibu...@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.blyak...@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 >>>>>> > <rmannibu...@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.blyak...@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 >>>>>> >> > <rmannibu...@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.blyak...@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 >>>>>> >> >> > <rmannibu...@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.blyak...@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 >>>>>> >> >> >> > <rmannibu...@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" <gudnabr...@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.blyak...@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 < >>>>>> >> >> gudnabr...@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.blyak...@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 >>>>>> >> >> >> >> > >> > <rmannibu...@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.blyak...@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 < >>>>>> >> >> >> >> > gudnabr...@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.blyak...@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 < >>>>>> >> >> >> >> > >> >> > > rmannibu...@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 < >>>>>> >> >> >> >> gudnabr...@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 >>>>>> < >>>>>> >> >> >> >> > >> >> gudnabr...@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 >>>>>> >> >> >> >> > >> >> > > >> >> <rmannibu...@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 >>>>>> >> >> >> >> > >> >> > > >> >>> <gudnabr...@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 >>>>>> >> >> >> >> > >> >> > > >> >>>> <rmannibu...@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 >>>>>> >> >> >> >> > >> >> > > >> >>>>> <gudnabr...@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 >>>>>> >> >> >> >> > >> >> > > >> >>>>>> <rmannibu...@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 >>>>>> >> >> >> >> > >> >> > > >> >>>>>>> <mben...@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 >>>>>> >> >> >> >> > >> >> > > >> >>>>>>>> <rmannibu...@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.blyak...@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 >>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>> <rmannibu...@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 >>>>>> >> < >>>>>> >> >> >> >> > >> >> > mben...@apache.org >>>>>> >> >> >> >> > >> >> > > >: >>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > On Tue, Mar 18, 2014 at 1:01 PM, >>>>>> >> Michael >>>>>> >> >> >> >> > Blyakher >>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> > <michael.blyak...@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 >>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >> <rmannibu...@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.blyak...@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 >>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>> >>>>>> >> >> >> >> > >> >> > > >> >>>>>>>>>>> >>>>>> >> >> >> >> > >> >> > > > >>>>>> >> >> >> >> > >> >> > > > >>>>>> >> >> >> >> > >> >> > > >>>>>> >> >> >> >> > >> >> > >>>>>> >> >> >> >> > >> >> >>>>>> >> >> >> >> > > >>>>>> >> >> >> >> > > >>>>>> >> >> >> >> > >>>>>> >> >> >> >> >>>>>> >> >> >> >>>>>> >> >> >>>>>> >> >>>>>>