----- Original Message -----
BTW we also have a special validation that checks the order of the
builders
and create a warning with a quickfix if there is a problem.
For example in CDI:
https://github.com/jbosstools/jbosstools-javaee/blob/master/cdi/plugins/o...
I think it's better to use such validation for your validator anyway. You can
reuse it ( KBValidator.validateBuilderOrder()).
Let see what can happen if m2e enables CDI and JAX-RS when the project is
importing as an existing maven project.
1. m2e enables CDI.
2. CDI tools add CDI builder and WST validation builder.
3. m2e, I guess, enables JAX-RS
So if JAX-RS tools just add its builder to the .project when CDI has
been
enabled then you will get a problem. You wil get something like this in the
.project:
java builder
cdi builder
wst validation builder
jax-rs builder
So validation will be invoked before you JAX-RS builder.
It's not a problem for CDI validation since CDI tools take care of builder
order when enabling CDI support.
If m2e is the last one in .project then I don't see problems
here. If m2e
builder changes any resources in the project then eclipse will run all the
builders again.
This may be part of the problem. If you have m2e-wtp and you're using facets,
validation may get disabled for target/ (part of the problem I had: I was waiting for the
output file to update before validating). I'm not sure of all the facets, but the
utility module facet does add ignore target/ to the validator preferences for the project.
https://github.com/eclipse/m2e.wtp/blob/master/org.eclipse.m2e.wtp/src/or...
On 10/11/2013 08:32 AM, Xavier Coulon wrote:
> Rob,
> That's what Fred showed me, too. But in my case, it's an
import of an
> existing project, thus the builders (JAX-RS, m2e and Validation, amongst
> others) are already configured.
> Thanks for your help !
> Best regards,
> /Xavier
> On Oct 11, 2013, at 3:00 PM, Rob Cernich wrote:
> > > Xavier,
> >
>
> > > Worth checking out if your two different flows might
be caused by your
> >
>
> > > validator/builder being added in different sequence.
Causing you to
> > > miss
> >
>
> > > java changes ?
> >
>
> > > /max (sent from my phone)
> >
>
> > > > On 10/10/2013, at 20.06, Alexey Kazakov <
akazakov(a)exadel.com >
> > > > wrote:
> > >
> >
>
> > > > I didn't notice any problems with CDI
validation for m2e projects.
> > >
> >
>
> > > > But when we enable CDI support on the project
(there is the only
> > > > method
> > >
> >
>
> > > > for that which is used by m2e, preference pages,
new project wizard,
> > >
> >
>
> > > > install facet delegates, etc)
> > >
> >
>
> > > > we make sure we have builders in .project in a
proper order.
> > >
> >
>
> > > > So we don't just add cdi and validation
builders. We re-order the
> > > > list
> > >
> >
>
> > > > of builders in .project. See
> > >
> >
>
> > > >
WebModelPlugin.addNatureToProjectWithValidationSupport();
> > >
> >
>
> > > > In our case four builders are critical: Java, KB,
CDI, WST
> > > > validation.
> > >
> >
>
> > > > And the order of these builders is critical for
us.
> > >
> >
>
> > > > Every time m2e changes something in the project,
the whole stack of
> > >
> >
>
> > > > builders is invoked and even if it does change
the project
> > > > step-by-step
> > >
> >
>
> > > > the final changing/building will fix false
validation problems caused
> > > > by
> > >
> >
>
> > > > previous changes.
> > >
> >
>
> > > > On 10/10/2013 09:50 AM, Rob Cernich wrote:
> > >
> >
>
> > > > > > There is something badly wrong if we
need to start making that
> > > > > > the
> > > > > > habit
> > > > >
> > > >
> > >
> >
>
> > > > > > (if
> > > > >
> > > >
> > >
> >
>
> > > > > > your project is m2e then disable the
validation and do it in a
> > > > > > maven
> > > > >
> > > >
> > >
> >
>
> > > > > > plugin/extension instead) :)
> > > > >
> > > >
> > >
> >
>
> > > > > Yes. That is the plan moving forward, but it
was easier to get
> > > > > validation
> > > >
> > >
> >
>
> > > > > into the tooling than it was to get it into
the mojo, so...
> > > >
> > >
> >
>
> > > > > > ...but that said - I know we've
seen more than a few issues with
> > > > > > m2e
> > > > > > vs
> > > > >
> > > >
> > >
> >
>
> > > > > > eclipse causing "havoc" on
builds.
> > > > >
> > > >
> > >
> >
>
> > > > > > /max
> > > > >
> > > >
> > >
> >
>
> > > > > > > On Thu, Oct 10, 2013 at 11:49:10AM
-0400, Rob Cernich wrote:
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > Hey Xavier,
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > I had a similar problem with the
SwitchYard validator. Upon
> > > > > > > further
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > investigation, it appears m2e
wants the Maven builder to be
> > > > > > > last
> > > > > > > in
> > > > > > > the
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > list. Based on that, I eventually
gave up, disabled the
> > > > > > > SwitchYard
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > validator from the build and
invoked it directly from the
> > > > > > > SwitchYard
> > > > > > > m2e
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > build participant. I suspect
something similar will probably
> > > > > > > need
> > > > > > > to
> > > > > > > be
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > done in your case, assuming there
is a JAX-RS participant for
> > > > > > > m2e.
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > Hope that helps,
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > Rob
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > ----- Original Message -----
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > hello,
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > I'm banging my head
against the wall trying to fix this
> > > > > > > > issue:
> > > > > > > > On
> > > > > > > > a
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > Full
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > Publish LiveReload refreshes
the browser before the
> > > > > > > > application
> > > > > > > > is
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > fully
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > restarted
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > Here's the context: I
have a kitchensink project in which
> > > > > > > > there
> > > > > > > > are
> > > > > > > > are
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > JAX-RS errors (a custom
JAX-RS HTTP Method is missing some
> > > > > > > > annotations)
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > Now, here's the problem I
have:
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > - in some cases, the
metamodel exists and is complete (i.e.:
> > > > > > > > the
> > > > > > > > m2e
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > dependencies were properly
set *before* the metamodel was
> > > > > > > > built),
> > > > > > > > and
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > then,
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > the validation occurs on the
whole project, and I have the
> > > > > > > > expect
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > errors
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > reported.
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > - in other cases, the
validation on the whole project is
> > > > > > > > executed
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > *before*
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > m2e did set the dependencies
on the project's classpath. At
> > > > > > > > this
> > > > > > > > stage,
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > the
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > metamodel exists but it is
empty (the java classes have
> > > > > > > > compilation
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > errors
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > because of missing libs, so
no JAX-RS element was created).
> > > > > > > > The
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > metamodel
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > is
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > completed after m2e updated
the project's classpath, but then
> > > > > > > > a
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > validation
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > > job is triggered because of bunch of xml
files (not related
> > > > > > > > > to
> > > > > > > > the
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > JAX-RS
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > classes) were processed by
m2e and copied into the
> > > > > > > > /target/classes
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > output
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > folder. This means that the
full validation was not executed.
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > Basically, it looks as if
some operations (m2e / JAX-RS /
> > > > > > > > validation)
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > don't
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > always occur in the same
order, which sometimes result in
> > > > > > > > incomplete
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > validation and missing
markers as expected. (not to mention
> > > > > > > > that
> > > > > > > > I
> > > > > > > > have
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > no
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > clue how to force the order
of execution, which makes the
> > > > > > > > debugging
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > *not
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > fun*...)
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > Any idea how I could make
sure the validation (based on
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > > org.jboss.tools.common.validation) could be
always called on
> > > > > > > > the
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > project
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > after m2e sets the
dependencies in the classpath ?
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > Thanks for your help ;-)
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > Best regards,
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > /Xavier
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > >
_______________________________________________
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > > jbosstools-dev mailing list
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > >
jbosstools-dev(a)lists.jboss.org
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > >
https://lists.jboss.org/mailman/listinfo/jbosstools-dev
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > >
_______________________________________________
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > jbosstools-dev mailing list
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > > jbosstools-dev(a)lists.jboss.org
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > > > >
https://lists.jboss.org/mailman/listinfo/jbosstools-dev
> > > > > >
> > > > >
> > > >
> > >
> >
>
> > > > >
_______________________________________________
> > > >
> > >
> >
>
> > > > > jbosstools-dev mailing list
> > > >
> > >
> >
>
> > > > > jbosstools-dev(a)lists.jboss.org
> > > >
> > >
> >
>
> > > > _______________________________________________
> > >
> >
>
> > > > jbosstools-dev mailing list
> > >
> >
>
> > > > jbosstools-dev(a)lists.jboss.org
> > >
> >
>
> > > _______________________________________________
> >
>
> > > jbosstools-dev mailing list
> >
>
> > > jbosstools-dev(a)lists.jboss.org
> >
>
> > _______________________________________________
>
> > jbosstools-dev mailing list
>
> > jbosstools-dev(a)lists.jboss.org
>
> >
https://lists.jboss.org/mailman/listinfo/jbosstools-dev
>
> _______________________________________________
> jbosstools-dev mailing list jbosstools-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/jbosstools-dev
_______________________________________________
jbosstools-dev mailing list
jbosstools-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jbosstools-dev