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_
<file:///C:/ws/eclipse341/vfrh/org.eclipse.wst.validation.doc.isv/reference/api/org/eclipse/wst/validation/ValidationResult.html>
by using the _add(ValidatorMessage message)_
<file:///C:/ws/eclipse341/vfrh/org.eclipse.wst.validation.doc.isv/reference/api/org/eclipse/wst/validation/ValidationResult.html#add%28org.eclipse.wst.validation.ValidatorMessage%29>
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_
<file:///C:/ws/eclipse341/vfrh/org.eclipse.wst.validation.doc.isv/reference/api/org/eclipse/wst/validation/ValidationResult.html>
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_
<file:///C:/ws/eclipse341/vfrh/org.eclipse.wst.validation.doc.isv/reference/api/org/eclipse/wst/validation/internal/provisional/core/IReporter.html>
to report your markers, you can continue to do so.
For this approach, use the _getReporter(IProgressMonitor monitor)_
<file:///C:/ws/eclipse341/vfrh/org.eclipse.wst.validation.doc.isv/reference/api/org/eclipse/wst/validation/ValidationResult.html#getReporter%28IProgressMonitor%29>
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
[EMAIL PROTECTED]
TL-969-3985, external: (905)-413-3985
From: Paul Fullbright <[EMAIL PROTECTED]>
To: "General discussion of project-wide or architectural issues."
<[email protected]>
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_
[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
TL-969-3985, external: (905)-413-3985
From: Paul Fullbright _<[EMAIL PROTECTED]>_
<mailto:[EMAIL PROTECTED]>
To: "General discussion of project-wide or architectural issues."
_<[email protected]>_ <mailto:[email protected]>
Date: 11/19/2008 11:23 AM
Subject: [wtp-dev] Some (hopefully) quick validator v2 questions
------------------------------------------------------------------------
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_
<http://www.eclipse.org/>)
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_
[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
_______________________________________________
wtp-dev mailing list_
[EMAIL PROTECTED] <mailto:[email protected]>_
__https://dev.eclipse.org/mailman/listinfo/wtp-dev_
------------------------------------------------------------------------
_______________________________________________
wtp-dev mailing list
[EMAIL PROTECTED] <mailto:[email protected]>
_https://dev.eclipse.org/mailman/listinfo/wtp-dev_
------------------------------------------------------------------------
_______________________________________________
wtp-dev mailing list
[EMAIL PROTECTED] <mailto:[email protected]>
_https://dev.eclipse.org/mailman/listinfo/wtp-dev_
_______________________________________________
wtp-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/wtp-dev
------------------------------------------------------------------------
_______________________________________________
wtp-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/wtp-dev