Description
Jacek Kopecky <jacek.kopecky@deri.org> reported the following Woden bug on the W3C mailing list. See http://lists.w3.org/Archives/Public/www-ws-desc/2007May/0001.html.
InterfaceImpl.getAllInterfaceOperations and getAllInterfaceFaults are
not quite recursive, they only go one level of interface extension deep.
This manifests in the flickr test-suite WSDL file when trying to access
the InterfaceOperation of the BindingOperation for
"flickr.groups.pools.add" - the method getInterfaceOperation() returns
null because the actual operation is too deep in the hierarchy of
extended interfaces.
Fix: in both InterfaceImpl.getDerivedInterface*, change getInterface* to
getAllInterface* - this can get into an infinite loop if a circular
interface extension is not detected as an error first.