Re: WebServiceProxyFactory bug??
John Bandhauer <[email protected]> Tue, 16 Jan 2007 17:34:13 -0800
| Newsgroups | gmane.comp.mozilla.devel.xml |
|---|---|
| Message-ID | <[email protected]> |
Ah, I see that this issue is already noted as a bug in bugzilla. But, no one had figured out your 'work-around'. I added the info in the thread above as a comment to the bug. The bug is: https://bugzilla.mozilla.org/show_bug.cgi?id=302985 John. John Bandhauer wrote: > FWIW, This is working as designed. The issue is that arbitrary XML > 'names' need to be mapped to legal JS 'identifiers' in and easily > reversible way. I remember discussing this with Vidur at the time (he > did most of this work). We agreed to do something *very* simple and just > use a single underscore as an escape character. We were aware of the > downside, but decided to do it this way anyway. This was 5+ years ago > and this Soap support for mozilla was a very experimental project. > > The code is in the two static methods: > > WSPFactory::C2XML and WSPFactory::XML2C at > http://lxr.mozilla.org/seamonkey/source/extensions/webservices/proxy/src/wspfactory.cpp#209 > > > I can imagine other escaping strategies (e.g. a multi-character escape > indicator). Of course, changing this now would break any code that > *expects* the current behavior. > > As to bug filing... If you go to the main bugzilla page > (https://bugzilla.mozilla.org) and search for bugs with "wsdl" in the > subject line you'll get a list of some of the bugs and feature requests > related to this module. It appears that bugs are filed as: Product: > Core, Component: Web Services. > > John. > > cbare wrote: >> I'm trying to use the WebServiceProxyFactory to access a public web >> service at: >> >> http://soap.genome.jp/KEGG.wsdl. >> >> I'm seeing some weird behavior, which is either a bug or I don't >> understand what's going on. The WSDL for this service defines a bunch >> of methods, among them: get_genes_by_organism. >> >> <operation name="get_genes_by_organism"> >> <input message="typens:get_genes_by_organismRequest"/> >> <output message="typens:get_genes_by_organismResponse"/> >> </operation> >> >> >> The trouble is, the proxy generated by the factory ends up with names >> like this: get_005fgenes_005fby_005forganism. >> >> Suspiciously, 0x005f is unicode for the underscore character. Maybe the >> underscores are messing things up? Or maybe the WSDL is in an >> unexpected character encoding? >> >> It works if I call the methods with the munged up names, but it's not >> pretty. Anyone seen similar problems? Is there a good place to file a >> bug report? >> >> Thanks, >> >> -Chris >>