a few Woden problems

Hi Arthur, 
I uncovered a few more Woden problems. If I'm emailing you improperly,
please let me know who to address instead.*

1) (design) the SOAP binding reuses HTTP properties. In Woden, the
reused properties are returned when looking at the SOAP extensions 
(for instance SOAPBindingExtensions.isHttpCookies(), and all similar
occurrences). I believe this is counterintuitive - when I'm looking for
the value of the {http cookies} property on a binding, it's defined by a
WHTTP extension attribute and it should be available under that
namespace.

Why do I care? The RDF binding maps {http cookies} into the same thing
whether it is on an HTTP binding or on a SOAP binding, and I must check
two different extensions to get the value of this property.

SOAPBindingExtensions.isHttpCookies(), if it's there at all, should IMHO
be syntactic sugar for HTTPBindingExtensions.isHttpCookies() on the same
binding, but as it is, I don't even get HTTPBindingExtensions on a SOAP
binding. The type of a binding should not dictate the namespaces of
allowed extensions, or under what namespaces one can find some
properties. I don't think the spec intends that.


2) (may get obsoleted if you agree on the point above)
SOAPBindingOperationExtensions does not have isHttpLocationIgnoreUncited
even though the SOAP binding seems to import this property (cf. first
bullet in section 5) Currently, Woden does not give me the value of this
property on SOAP bindings.


3) 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.


For the purpose of finishing the RDF mapping, I have a work-around for
1), I fixed 3) in my copy of Woden, but I can't easily fix 2).

Best regards,
Jacek

*P.S: I don't want to have to subscribe for a mailing list or register
in a bug reporting system, though, to be able to submit these questions.

Received on Wednesday, 2 May 2007 18:42:31 UTC