Benson, this is what tcpmon shows: HTTP/1.1 200 OK Date: Sun, 13 Jul 2008 13:21:51 GMT Server: Jetty(6.1.9) Content-Type: text/xml; charset=utf-8 SOAPAction: "" Content-Length: 211 Via: 1.1 wendy:8100 Keep-Alive: timeout=15, max=99 Connection: Keep-Alive
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:sayResponse xmlns:ns2="http://soap/"> <return>What country are you from</return> </ns2:sayResponse> </soap:Body> </soap:Envelope> while the javascript in the debugger says that req.XMLResponse is null. I'll keep searching. dagdag Christine On Sat, 2008-07-12 at 18:54 -0400, Benson Margulies wrote: > That message indicates that the browser did not receive any XML it could > use. > > What browser do you use? What debugging tools have you got turned on? > > I would be tempted to use tcpmon in between the server and the browser, or > step through things with Venkman (if you are using FF). > > > On Fri, Jul 11, 2008 at 4:57 PM, Christine Karman <[EMAIL PROTECTED]> > wrote: > > > On Fri, 2008-07-11 at 12:54 -0400, Benson Margulies wrote: > > > Now we are moving in the right direction. > > > > > > I'd recommend turning on CXF logging, as explained in confluence. It will > > > log messages in both directions. Some message logs and the WSDL should > > give > > > us a clue. > > > > Ok. I thought cxf was logging, from the number of logg messages I got > > from spring, but now I have cxf log messages. It says this is going out: > > Payload: > > <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> > > <soap:Body> > > <ns2:sayResponse xmlns:ns2="http://soap/"> > > <return>invalid user id.</return> > > </ns2:sayResponse> > > </soap:Body> > > </soap:Envelope> > > > > The "invalid user id." is the message my app sends back, so this looks > > all right. CXF is sending this message and the javascript trace is > > giving this (I have modified and added messages for convenience): > > > > onreadystatechange 1 > > onreadystatechange 2 > > onreadystatechange 4 > > 855 httpStatus = 0 > > onreadystatechange DONE :-) > > httpstatus 0 > > 864 this.onsuccess > > 868 responseXML > > 875 Could not handle content of response. > > 876 response xml null > > > > I'll keep searching, we'll get there eventually :-) > > I'll check on the proxy again but I do assume that if a message goes one > > way through a web server, the response should be able to go back the > > same way. > > > > the wsdl is at http://www.christine.nl/soap/wendyBot?wsdl > > > > dagdag > > Christine > > > > > > > > > > I'm leaving on vacation on Sunday morning. > > > > > > On Fri, Jul 11, 2008 at 12:20 PM, Christine Karman < > > [EMAIL PROTECTED]> > > > wrote: > > > > > > > Benson, > > > > you were right about rewrite rules not being the same as a proxy. > > > > > > > > I have added two lines to my apache config > > > > > > > > ProxyPass /soap http://localhost:9000 > > > > ProxyPassReverse /soap http://localhost:9000 > > > > > > > > which causes the js request to be passed to the server. I can see the > > > > reply being created, but the js says > > > > "Could not handle content of response." > > > > > > > > The xml response is null. Jetty seems to write its logging output to my > > > > console, but I don't see a lot of it. > > > > > > > > dagdag > > > > Christine > > > > > > > > On Thu, 2008-07-10 at 15:09 -0400, Benson Margulies wrote: > > > > > 2. Edit httpd.conf to contain the following: > > > > > > > > > > LoadModule proxy_module modules/mod_proxy.so > > > > > > > > > > LoadModule proxy_http_module modules/mod_proxy_http.so > > > > > > > > > > 3. Edit proxy.conf to contain the following: > > > > > > > > > > ProxyPass /ws/rta http://localhost:6099/rta > > > > > > > > > > ProxyPass /ws/rta/ http://localhost:6099/rta/ > > > > > > > > > > ProxyPassReverse /ws/rta http://localhost:6099/rta > > > > > > > > > > ProxyPassReverse /ws/rta/ http://localhost:6099/rta/ > > > > > > > > > > ProxyPass /ws/askt http://localhost:6099/askt > > > > > > > > > > ProxyPass /ws/askt/ http://localhost:6099/askt/ > > > > > > > > > > ProxyPassReverse /ws/askt http://localhost:6099/askt > > > > > > > > > > ProxyPassReverse /ws/askt/ http://localhost:6099/askt/ > > > > > > > > > > > > > > > > > > > > On Thu, Jul 10, 2008 at 2:38 PM, Benson Margulies < > > [EMAIL PROTECTED] > > > > > > > > > > wrote: > > > > > > > > > > > I'm not the expert on jetty logging. However, I now realize, after > > > > trying > > > > > > it, that I've been telling you the wrong thing about the browser > > > > > > cross-scripting rules. > > > > > > > > > > > > I thought that it was true that, so long as one of the javascript > > files > > > > > > came from a particular host:port combination, that you would be > > able to > > > > > > connect back to it. > > > > > > > > > > > > I was wrong. The web service must be on the same host:port as the > > main > > > > HTML > > > > > > page. > > > > > > > > > > > > So we're back to using rewrite rules. I have set up reverse proxies > > for > > > > > > this purposes on Apache, but it was a very long time ago. I don't > > have > > > > any > > > > > > clue how to do it on plain-old-jetty. > > > > > > > > > > > > You could also presumably use an invisible iframe to host a page > > that > > > > is > > > > > > really on the same host as the web service, and get the data in and > > out > > > > of > > > > > > there. > > > > > > > > > > > > I think I'll be able to post a rewrite recipe later today. > > > > > > > > > > > > > > > > > > > > > > > > On Thu, Jul 10, 2008 at 12:03 PM, Christine Karman < > > > > [EMAIL PROTECTED]> > > > > > > wrote: > > > > > > > > > > > >> On Thu, 2008-07-10 at 07:38 -0400, Benson Margulies wrote: > > > > > >> > Christine, > > > > > >> > > > > > > >> > I'm trying to find some time to build up an example. Until then, > > I > > > > > >> > want to try to clarify something. > > > > > >> > > > > > > >> > The cxfjsutils.js file and the server itself have to be on the > > same > > > > > >> > host:port. The rest of the html need not. > > > > > >> > > > > > >> The web service works ok and the javascript download from the web > > > > > >> service works ok. But somewhere inside the javascript the call to > > the > > > > > >> webservice doesn't work. Not on port 9000 and not on a rewritten > > /soap > > > > > >> url. The error it gives suggests that the call is ok. > > > > > >> Is there a way of activating the log in Jetty so I can see if > > Jetty > > > > > >> receives the call? > > > > > >> > > > > > >> dagdag > > > > > >> Christine > > > > > >> > > > > > >> > > > > > >> On Wed, Jul 9, 2008 at 12:34 PM, Christine < > > [EMAIL PROTECTED]> > > > > > >> wrote: > > > > > >> Benson, > > > > > >> this is what the js trace gives me: > > > > > >> emptyClient constructorrequest > > > > > >> http://www.christine.nl/soap/wendyBotabout to open POST > > > > > >> http://www.christine.nl/soap/wendyBotabout to send > > dataPOST > > > > > >> http://www.christine.nl/soap/wendyBotonreadystatechange > > > > > >> 1onreadystatechange 2onreadystatechange 4onreadystatechange > > > > DONE > > > > > >> 0 > > > > > >> > > > > > >> then it calls the error function with code -1. > > > > > >> > > > > > >> -- > > > > > >> dagdag is just a two character rotation of byebye > > > > > >> www.christine.nl > > > > > >> > > > > > >> > > > > > > > > > > -- > > > > dagdag is just a two character rotation of byebye > > > > www.christine.nl > > > > > > > > > > -- > > dagdag is just a two character rotation of byebye > > www.christine.nl > > > > -- dagdag is just a two character rotation of byebye www.christine.nl
