Maybe we should have the ExtensibleURLArtifactProcessor to set the artifact 
name before it delegates the real processor.
________________________________________________________________ 
Raymond Feng
[email protected]
Apache Tuscany PMC member and committer: tuscany.apache.org
Co-author of Tuscany SCA In Action book: www.tuscanyinaction.com
Personal Web Site: www.enjoyjava.com
________________________________________________________________

On Oct 1, 2010, at 6:27 AM, Yang Lei wrote:

> I was running oasis compliance test in another hosting environment, I noticed 
> some test result validation differences from what Tuscany defined in the 
> error message files. I think these differences may expose an issue on how we 
> maintain the artifact name in the MonitorImpl.
>  
> I noticed that not all processors set artifact names when reporting problems 
> , which is understandable as they may not be document based.  I see 
> CompositeDocumentProcessor set the artifact name, while 
> ContributionMetadataProcessor, DefinitionsProcessor do not. In 
> ValidatingXMLStreamReader the logic of getArtifact name from the ErrorHandler 
> is such when monitor has the artifact name, it is used otherwise it is using 
> the input as the artifact name.
>  
> The logic caused me sometimes not getting the right artifact names in the 
> problem, as it still kept the one that was processed before...
>  
> One way of fixing the issue will be for processors whoever set the artifact 
> name (e.g. CompositeDocumentProcessor)  to reset the artifact name back to 
> null after processing to make the Monitor's artifact name always in-synch 
> with the current artifact that is under processing...  Otherwise, we need all 
> the other processors when first read a document to reset the artifact name so 
> the monitor will not have the previous artifact names...
>  
> Appreciate comments on it. I will open a JIRA .
>  
> -- 
> Thanks. Yang.

Reply via email to