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 [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] 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/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) 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] _______________________________________________ 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 _______________________________________________ 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
_______________________________________________ wtp-dev mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/wtp-dev
