I've checked your code but I never did JavaScript before so can't really
tell what's going wrong. Did you try to put a TcpTunnel between your
browser and the soap service? Maybe if you see the soap request that they
are exchanging that could give you some clue.
Good luck!
Steeve...
"Liaw, Wan-Bih" <[EMAIL PROTECTED]> on 02/08/2001 11:52:47 AM
Please respond to [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
cc: (bcc: Steeve Gilbert/G_STGEORGES/CANAM_MANAC)
Subject: RE: SOAP 2.2. doesn't return the float and double values correctl
y
Steve, Hi, haven't heard back about your comments/solutions about my codes
in the following in my *previous* mail, hence I re-post it.
Also, one more question for everyone.��What do we need to�do, in order to
access to�an Apache web service accessible from outside the firewalls?
-----Original Message-----
From: Liaw, Wan-Bih [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 30, 2001 1:34 PM
To: [EMAIL PROTECTED]
Subject: RE: SOAP 2.2. doesn't return the float and double values correctl
Sure. They are basically as the followings.� The method 'theMethod' of the
class 'WhateverService' was deployed. They are done in typical ways.
Please let me know if you see something missing?� Thanks.
server�code:
package ...
import ...
...
public class WhateverService implements iCCWhatever
...
public float theMethod(float c1, float c2, float from_amount)
{
�� return c3*c1/c2;
}
...
}
Client Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>test ...� <TITLE>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 5.50.4522.1800" name=GENERATOR>
<SCRIPT language=JScript>
<!-- Begin
//...
function WebService_SendRequest(SOAPRequest)
{
� try
��� {
� this._xmlHttp = new ActiveXObject("microsoft.xmlhttp");
���� this._serviceUrl = "http://localhost:80/soap/servlet/rpcrouter";
� this._xmlHttp.Open("POST",this._serviceUrl , false);
�� this._xmlHttp.setRequestHeader("Content-Type", "text/xml;� charset
=\"utf-8\"� ");
�� this._xmlHttp.Send(SOAPRequest);
� if(this._xmlHttp.status != 200 && this._xmlHttp.status != 500)
� {
� response = "<HttpError><name>ERROR Generated!!! Failed to send request
to web service at " + this._serviceUrl + ")</name><desc>" + this.
_xmlHttp.statusText + "</desc><number>" + this._xmlHttp.status +
"</number></HttpError>";
� return response;
�response = this._xmlHttp.responseXML.xml;
� //response = xmlHttp.responseText;
��� }
� catch(e)
��� {
��� this._generateError("Failed to send request to web service at " +
this._serviceUrl, e.description, e.number);
��� }
� return response;
}
function main(form) {
��� var r1= form.input1.value;
��� var r2= form.input2.value;
��� var r3= form.input3.value;
���� var ParamNames = new Array();
���� var ParamValues = new Array();
��� //
��� if (r2 != 0)
��� {
��� �ParamNames[0] = "input1";�� ParamValues[0] = r1;
��� �ParamNames[1] = "input2";�� ParamValues[1] = r2
��� �ParamNames[2] = "input3";�� ParamValues[2] = r3;
���� �// build and send the soap request
���� �var soapRequest = BuildSoapRequest("WhateverService","theMethod",
ParamNames, ParamValues);
��// ...
������� alert("To start the soapRequest ..."+soapRequest);
���� �response = WebService_SendRequest(soapRequest) ;
��� �alert(unescape(response));
��} else {
���� �alert("Please make sure r2 is not 0");
� }
}
//� End -->
</SCRIPT>
</HEAD>
<body>
<TABLE cellpading="10">
<TR>
<td>
<P><h3>��� Test Whatever ...</h3><BR>
<BR>
</P>
</td>
</tr>
��� </tr>
� <tr>
�<td ALIGN="center">
�r1�� <INPUT size="20" type="text" name="r1" value="20">
�</td>
� </tr>
��� </tr>
� <tr>
�<td ALIGN="center">
�r2�� <INPUT size="20" type="text" name="r2" value="30">
�</td>
� </tr>
��� </tr>
� <tr>
�<td ALIGN="center">
�r3�� <INPUT size="20" type="text" name="r3" value="1000">
�</td>
� </tr>
�� <tr>
��� <td width="100%" colspan="2" align="center">
������� <p align="center">
������� <input onclick=main(this.form) type=button value="Submit" name
="Submit">
��� </td>
�� </tr>
</table>
</form>
</body>
</html>
-----Original Message-----
From: Steeve Gilbert [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 30, 2001 12:53 PM
To: [EMAIL PROTECTED]
Subject: RE: SOAP 2.2. doesn't return the float and double values
correctl
Can you post the code of your service and client here.
Steeve...
"Liaw, Wan-Bih" <[EMAIL PROTECTED]> on 30/07/2001 02:45:07 PM
Please respond to [EMAIL PROTECTED]
To:�� [EMAIL PROTECTED]
cc:��� (bcc: Steeve Gilbert/G_STGEORGES/CANAM_MANAC)
Subject:� RE: SOAP 2.2. doesn't return the float and double values
correctl
Well, I displayed the returned value of computation in a soap request, and
it was always 0.0, no matter what.
The same program works correctly in a Java application. Please let me know
how you think it working?
Thanks!
-----Original Message-----
From: Steeve Gilbert mailto:[EMAIL PROTECTED]]
Sent: Monday, July 30, 2001 12:37 PM
To: [EMAIL PROTECTED]
Subject: Re: SOAP 2.2. doesn't return the float and double values
correctly
Hello!
It's ain't supposed to work that way and this ain't a bug.� I've already
made a dump method that add 2 double value and return a double.
If you post more info we'll maybe be able to help you. ;-)
Steeve...
"Liaw, Wan-Bih" <[EMAIL PROTECTED]> on 30/07/2001 02:26:40 PM
Please respond to [EMAIL PROTECTED]
To:�� [EMAIL PROTECTED]
cc:��� (bcc: Steeve Gilbert/G_STGEORGES/CANAM_MANAC)
Subject:� SOAP 2.2. doesn't return the� float and double values correctly
It's� always 0.0 in the response�of a computation that involves float or
double� types.
Is� that the way SOAP 2.2 supposed to work? Or is it a� bug???