[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [wtp-dev] Some (hopefully) quick validator v2 questions
|
Hi Paul, I tried to answer your question
in a more robust way, by enhancing the Javadoc. Let me know if you still
have questions.
How do I create Problem Markers?
There are three different ways to create problem markers.
1. Use
the native support in the validation framework.
2. Manage
your own markers.
3. Use
the support in the previous version of the validation framework.
The first approach, is the recommended approach.
1. Use the native support in the validation framework
After you have finished performing your validation, and
are returning control back to the validation framework, add your messages
into the ValidationResult
by using the add(ValidatorMessage
message) method.
2. Manage your own markers
Create and remove your own markers. So that summary information
can still be displayed, the counts of any newly created markers in the
ValidationResult
by using the setSeverityXXX() methods.
3. Use the support in the previous version of the validation
framework
If you are porting a validator that used the previous version
of the validation framework, and you wish to continue to use an IReporter
to report your markers, you can continue to do so.
For this approach, use the getReporter(IProgressMonitor monitor)
method, and return your messages through the IReporter. If this method
is called it is assumed by the framework, that this IReporter will be used
as the only way of passing messages back to the framework.
Gary Karasiuk, RAD Performance Analyst
karasiuk@xxxxxxxxxx
TL-969-3985, external: (905)-413-3985
From:
| Paul Fullbright <paul.fullbright@xxxxxxxxxx>
|
To:
| "General discussion of project-wide
or architectural issues." <wtp-dev@xxxxxxxxxxx>
|
Date:
| 11/24/2008 04:08 PM
|
Subject:
| Re: [wtp-dev] Some (hopefully) quick
validator v2 questions |
I was able to implement something which looks like it
works, at least in debugging mode. The V2 framework solved my problem
about triggering validation on resource content types which extend another
resource content type, so I'm sure I've got the basic setup correct. And
I can follow that problem markers are indeed added to the resources where
they should be added. And it doesn't *seem* as though the problem
markers get deleted after they've been added. And the validation
dialog comes back with something like "8 errors in 19 resources"
every time, so everything seems good up to that point. But after
validation is done, the problems view shows *nothing*. I've messed
with the problems view filters and scoured the debugger for places where
my added markers get deleted, but so far it's a mystery. Is there
anyone who can shed any light on this? Where did my markers go?
Here's our implementation (check out the patch) if anyone has any ideas
on this: https://bugs.eclipse.org/bugs/show_bug.cgi?id=252891
Thanks,
- Paul
Paul Fullbright wrote:
Thanks, especially the last point.
One other point of confusion I had was how to tie our existing helper class
into the new/old implementation. Can that be done? I see the
HTMLValidationWorkbenchHelper still around, but I don't see it used anywhere.
- Paul
Gary Karasiuk wrote:
Currently the best place for documentation is the Javadoc.
Most of the validators that are currently enabled to the new framework,
simply made a few changes to their earlier validators to convert them into
v2 validators. You could look at the HTML or XML ones as examples.
You don't want to use the delegates extension point, it is for something
else entirely.
There are other validators, that want to be triggered on may different
types of changes, but then only want to run once. The method you want to
use is org.eclipse.wst.validation.ValidationResult#setSuspendValidation(IProject
project)
setSuspendValidation
public void setSuspendValidation(IProject project)
Calling this method will inform the framework, that this validator does
not wish to be called again for any resources in this project, for the
duration of this validation operation.
Some validators may have a rich set of triggers, but once
they have been invoked once, do not need to be invoked again during the
course of the current validation.
Parameters:
project - The project that this validator no longer
wants to be notified on.
I hopes this helps.
Gary Karasiuk, RAD Performance Analyst
karasiuk@xxxxxxxxxx
TL-969-3985, external: (905)-413-3985
Hello all,
As a result of adding a new resource type in our extension of our own
JPA tools framework, it seems we need to advance quickly to the v2
validator framework. Very quickly. I wonder if I could pose
a few
questions:
- In the presentation (here:
http://www.eclipse.org./webtools/common/validation/New-VF-2007-12-11.pdf)
it was hinted that one could provide a v2 implementation by wrapping an
existing v1 implementation. Obviously, if we need to do this quickly,
this sounds very good. Looking at the existing v2 validators, I don't
see anyone who has done what I understand as wrapping.Can someone give
me a thumbnail sketch of how that might be done? I tried finding
a
post-implementation overview, but only found one from 2005
(http://www.eclipse.org/webtools/wst/components/validation/ValidationOverview.html).
Do I want the delegating validator? And if so, do I need to use the
validatorDelegates extension point?
- Relatedly, there was a hint in the bug
(https://bugs.eclipse.org/bugs/show_bug.cgi?id=212196)
that there might
be a getting started guide. *Is* there a getting started guide?
- Most of the validator framework surrounds validation of a *file*. Are
there any thoughts about *project-wide* validation? The nature of
the
beast that is JPA is that everything depends on everything else.
Changing a java file can change validation for a persistence.xml file.
Changing the persistence.xml file can change validation for an orm.xml
file. Changing the orm.xml file can change validation for the original
java file. So each validation run for us, due to the nature of JPA,
implies a validation of the entire project. But each validation run
is
centered on a single file. This means that if several files change
(or
if a project wide validation is run), then the project gets validated
once for each resource, which is a huge waste of cycles. Any thoughts
on how we can register validation to be run on changes to all these
files, but done only once per project, per validation run? (OK, this
one isn't as quick, but it also isn't as pressing, either.)
Thanks in advance,
--
Paul Fullbright
Oracle Corp.
Eclipse Dali/Java Persistence Tools Development
paul.fullbright@xxxxxxxxxx
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev