Closed Bug 237845 Opened 21 years ago Closed 21 years ago

WSDL bindings fail on Mozilla 1.7 beta

Categories

(Core Graveyard :: Web Services, defect, P1)

x86
Linux
defect

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.7final

People

(Reporter: darin.moz, Assigned: darin.moz)

References

()

Details

(Keywords: regression)

Attachments

(1 file)

My WSDL testcases are all failing using a trunk build (essentially 1.7 beta). I'm getting the error: "Binding not found" I'm using Tomcat 5. All of these testcases worked fine in Mozilla 1.6 and (I think) Mozilla 1.7 alpha. I'll try to setup an external testcase for this bug.
Ok, testcase posted: http://friedfish.homeip.net:8080/axis/test.html This testcase just uses the Version web service that is included with Apache Axis.
Severity: normal → blocker
Flags: blocking1.7?
Priority: -- → P1
Target Milestone: --- → mozilla1.7beta
Darin, with that testcase, I get absolutely no output with builds from Nov 1, 2003 (pre-1.6) to March 6, 2004. On March 6 we checked in code to actually fire the onError event when an error happens, so in builds thereafter I see the error message "Error-Failure loading" (which is not the same error as described in comment 0, btw). But in none of those builds do I get any of the output I should be getting if the request were succeeding...
OK, the test case was bad... i replaced localhost with friedfish.homeip.net i filed this bug against a different set of testcases that were unchanged and worked fine with 1.6. this test case is now corrected, and the problem still exists.
data point: i tested with this UA: "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040107" and it works fine.
Now that testcase succeeds for me with builds up through 2004-03-17-08 (I get "Result from server: Apache Axis version: 1.1 Built on Oct 14, 2003 (05:14:46 PDT)"). I'm not saying there is no problem, just that that testcase is not showing it. :( In any case, we have builds on the ftp server going back to Feb 1, so anyone seeing the problem should be able to narrow the regression range if it happened after that. If not, I have builds from before that that I could make available.
I'm able to repro with: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7b) Gecko/20040316 Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7b) Gecko/20040315 Firefox/0.8.0+ ...using just the testcase given. hmm :(
This looks to me like a regression from bug 218236. The way that we are creating events here is flawed. DOMEvents created using the nsEventListnerManager::CreateEvent() method keep pointers to the nsEvent that is passed in during constrution. Here, the nsEvent is being allocated on the stack in nsXMLHttpRequest::CreateEvent() and thus dies before the DOMEvent is actually dispatched. So, we end up looking at a bogus place in memory when nsIDOMEvent::GetType() is called in WSDL code. The method thus fails and the WSDL code can't figure out what happened. http://lxr.mozilla.org/seamonkey/source/extensions/webservices/wsdl/src/nsWSDLLoader.cpp#460 Before bug 218236, the events were allocated in the same method that dispatched them, so this was not an issue. (nsIEventListnerManager::CreateEvent() really needs some documentation that clarifies the funky ownership here.) Also, the WSDL code should have been looking for errors from GetType(), which would have made this easier to debug I guess.
Comment on attachment 144245 [details] [diff] [review] Hack that restores the life time of the nsEvents to what it was earlier doh. r+sr=bzbarsky. I wonder why it worked in my build... probably a matter of what memory has or hasn't been stomped on...
Attachment #144245 - Flags: superreview+
Attachment #144245 - Flags: review+
Comment on attachment 144245 [details] [diff] [review] Hack that restores the life time of the nsEvents to what it was earlier Duh, yeah. Requesting approval for 1.7.
Attachment #144245 - Flags: approval1.7?
This patch makes things work again.
-> me for check-in
Assignee: web-services → darin
Target Milestone: mozilla1.7beta → mozilla1.7final
Comment on attachment 144245 [details] [diff] [review] Hack that restores the life time of the nsEvents to what it was earlier a=asa (on behalf of drivers) for checkin to 1.7
Attachment #144245 - Flags: approval1.7? → approval1.7+
fixed-on-trunk for 1.7 final
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Flags: blocking1.7?
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: