[ http://issues.apache.org/jira/browse/AXIS2-1121?page=all ]
Davanum Srinivas reopened AXIS2-1121: ------------------------------------- > binary and enumFacet are incompatible with unordered in ADBBeanTemplate > ----------------------------------------------------------------------- > > Key: AXIS2-1121 > URL: http://issues.apache.org/jira/browse/AXIS2-1121 > Project: Apache Axis 2.0 (Axis2) > Issue Type: Bug > Reporter: Davanum Srinivas > > Hi Dims and Ajith, > I believe you guys added revisions 434331 and 436663 as part of a fix > for Axis2-1065. Unfortunately these changes break the build and the > template. E.g., the sforce enterprise wsdl generates bogus code and > kills a clean build. > Simply backing out the changes in these two revisions causes the build > to succeed and all tests to pass. However, I suspect this will regress > Axis2-1065 and the same type of problem exists for enumFacet. > The issue is this. For ordered property sets, the main property parsing > loop generates code like this (in pseudo-code notation): > if (elementName=="name1") { > ... > } else throw "Unexpected subelement" > if (elementName=="name2") { > ... > } else throw "Unexpected subelement" > ... > While in the unordered case the same code looks like this: > while (!endElement) { > if (elementName=="name1") { > ... > } > else if (elementName=="name2") { > ... > } > ... > } > The binary MTOM code that was added fills the role of one the embedded > if's but is not of the same form, not an if at all. This code works in > the first ordered case, but in the second unordered case it doesn't work > at all to have fixed code expecting to just read a binary value where > one of the if's is supposed to be. Also in the binary case in the > current template the else is still generated after the MTOM code that is > not an if, whence the syntax violation in the code generated for the > sforce wsdl, which evidently has a binary property in an unordered > property set. > I'm no expert on MTOM. Can't you still test that you've got the right > property (the binary property) by using the start-element name? For the > template to work in the unordered case, some test that you've got the > binary propery is essential. The existing template does not do this, > which can only work in the ordered case where you know you are at the > right position, and even in this case does not do the proper error > checking to verify this. > I would commit the attached template as axis2 passes all tests, but the > logs indicate you made the revisions that created this problem to fix > another problem and so I don't want to just back that out without > bringing this to your attention first. > Chuck -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]