|
Re: "element" attribute for OnEvent elements [message #651838 is a reply to message #651759] |
Tue, 01 February 2011 18:46 |
|
Hi Christoph,
I wish I could offer prizes to people that find bugs like these. Maybe a hearty "congratulations" will do?
Yes, it looks like there is a glaring omission in the way OnEvent is deserialized - the XSDElement is never set ... anywhere. Have a look at ReconciliationBPELReader#setOperationParmsOnEvent(). This creates a Variable (where MessageType and XSDElement are meant to be stored) and attaches it to the OnEvent, but it only handles the "messageType" attribute; the "element" attribute handling is missing.
I have opened https://bugs.eclipse.org/bugs/show_bug.cgi?id=336003 to track this - expect a fix before the end of the week.
Thanks again for your hard work - it makes my job that much easier
Bob
|
|
|
|
Re: "element" attribute for OnEvent elements [message #652610 is a reply to message #652591] |
Fri, 04 February 2011 17:20 |
|
Oops! I forgot that there was another BPELReader that had the same problem.
ReconciliationBPELReader is used by the editor during XML->model translation and BPELReader is used by the validator - this is probably where you were seeing "null" for the XSDElement.
HTH
Bob
|
|
|
|
|
Re: "element" attribute for OnEvent elements [message #654651 is a reply to message #651759] |
Wed, 16 February 2011 15:14 |
Christoph Messages: 21 Registered: September 2010 |
Junior Member |
|
|
Maybe I found it.
Indeed, there's been an XSDElementProxy created. But it won't be set as the Variable's xsdElement. Why? When one wants to replace an attribute, ReconciliationHelper.replaceAttribute(WSDLElement, String, QName) is called. That method calls getElement() on the element whose attribute needs to be replaced. But in case of a Variable, that element is in fact NULL. Thus, I assume one need's to check whether the current element is an instance of Variable and rather operate on the XSDElement methods.
[Updated on: Wed, 16 February 2011 15:15] Report message to a moderator
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03653 seconds