Return-Path: Delivered-To: apmail-ws-axis-user-archive@www.apache.org Received: (qmail 88021 invoked from network); 21 Nov 2007 22:29:44 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 21 Nov 2007 22:29:44 -0000 Received: (qmail 89757 invoked by uid 500); 21 Nov 2007 22:29:25 -0000 Delivered-To: apmail-ws-axis-user-archive@ws.apache.org Received: (qmail 88842 invoked by uid 500); 21 Nov 2007 22:29:22 -0000 Mailing-List: contact axis-user-help@ws.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-user@ws.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list axis-user@ws.apache.org Received: (qmail 88831 invoked by uid 99); 21 Nov 2007 22:29:22 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 21 Nov 2007 14:29:22 -0800 X-ASF-Spam-Status: No, hits=2.0 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [217.146.183.159] (HELO n5b.bullet.ukl.yahoo.com) (217.146.183.159) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 21 Nov 2007 22:29:09 +0000 Received: from [217.12.4.214] by n5.bullet.ukl.yahoo.com with NNFMP; 21 Nov 2007 22:29:01 -0000 Received: from [216.252.122.218] by t1.bullet.ukl.yahoo.com with NNFMP; 21 Nov 2007 22:29:00 -0000 Received: from [69.147.84.116] by t3.bullet.sp1.yahoo.com with NNFMP; 21 Nov 2007 22:29:00 -0000 Received: from [127.0.0.1] by omp208.mail.sp1.yahoo.com with NNFMP; 21 Nov 2007 22:29:00 -0000 X-Yahoo-Newman-Property: ymail-5 X-Yahoo-Newman-Id: 309143.79660.bm@omp208.mail.sp1.yahoo.com Received: (qmail 59436 invoked by uid 60001); 21 Nov 2007 21:29:00 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=X-YMail-OSG:Received:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-ID; b=KEhzD0b4GH3xewAn1EpofMj163BYoGCO6rcwJC42HBVcJcqlg/SlvVzzmpnB8WveDHSv8Asi+ZdalD2VrAlHsNNgirRbIGGubovcRCns1VxJOoLYmiAJdB7w5uHn4/kBcftdLLUXmFPpZ1bVxoSJbVxFhEDuj/2vXedRCfmpDhA=; X-YMail-OSG: lF7_SRsVM1mkA6yQ7SvuvudpxxUPSNtwdxWJq4HE Received: from [41.234.55.67] by web44802.mail.sp1.yahoo.com via HTTP; Wed, 21 Nov 2007 13:29:00 PST Date: Wed, 21 Nov 2007 13:29:00 -0800 (PST) From: "M.Khaled" Subject: RE: Urgent To: axis-user@ws.apache.org In-Reply-To: <3FB82BBA8B4A1A4AA56DE3E538FC63CE0359D6B8@E03MVY2-UKDY.domain1.systemhost.net> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="0-1440902096-1195680540=:59110" Content-Transfer-Encoding: 8bit Message-ID: <457107.59110.qm@web44802.mail.sp1.yahoo.com> X-Virus-Checked: Checked by ClamAV on apache.org --0-1440902096-1195680540=:59110 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Hi Sietse, I red the article of the first link and I noticed he is using a class called IBMSOAPFactory to create element from XML string.I tried to try this example but failed to find the jar file for this class.Do you know where I can find it or if there is any equivalent open source class? Best Regards, Mohamed. sietsenicolaas.tenhoeve@bt.com wrote: Hi Mohamed, I advice to use strong typed wsdl files. I hope you are familiar with strong vs. loose type languages? (i.e. java (strong) vs. php (loose)) I think the following links will provide enough information: http://www.ibm.com/developerworks/xml/library/ws-tip-xsdcaution.html http://www.ibm.com/developerworks/webservices/library/ws-loosevstrong.ht ml I agree almost complete with both articles that strong typed definitions are the way to go. This because it minimizes the interpretation and maximizes the intend of the service. The articles are pointing that out with good examples imho! Sietse ________________________________ From: M.Khaled [mailto:mohamed_mohamed_186@yahoo.com] Sent: 21 November 2007 13:28 To: axis-user@ws.apache.org Subject: RE: Urgent Hi Sietse, I am new to web service.So I am asking how can I adjust the wsdl file as you adviced me? Thanks, Mohamed sietsenicolaas.tenhoeve@bt.com wrote: Hi Mohamed, In my opinion the wsdl definition is not really a definition. It specifies that it will receive a string. But it doesn't specify the meaning of it (i.e. xml, xml encoded as string). Therefore your wsdl is loosely defined and this gives freedom to the implementer to interpret it the way he wants. This results in unexpected behaviour. My advice is to adjust the wsdl and make a strict definition of the messages. This enforces the client to use the well specified description and gives less possibility for an own interpretation. Just my 2 cents. Regards, Sietse ________________________________ From: M.Khaled [mailto:mohamed_mohamed_186@yahoo.com] Sent: 21 November 2007 12:52 To: axis-user@ws.apache.org Subject: Re: Urgent Paul You think the server should decode the received string before parsing it, to reconvert the special charcters like '< and > to '<' and '>' ? Mohamed Paul Fremantle wrote: Mohamed Now I'm confused. The WSDL defines a string. That says that the server is expecting a string. So if that string is going to an XML, then it *should* be encoded, because the datatype of the element is string not xml. If the server was expecting un-encoded XML then the WSDL should say: The client is doing the right thing (at least as far as the WSDL says) in encoding the XML with < etc. Paul On Nov 21, 2007 11:27 AM, M.Khaled wrote: Hi Paul, -This mail contains attached WSDL file which I used to create the client by axis. -And About the way I am creating the XML that I am sending it's similar to the foolowing: class Main{ String xml="text"; Request req=new Request(); req.setAttr(xml); Sender sender=new Sender(); sender.send(req); } class Request{ String attr=null; getAttr(){ return attr; } setAttr(String s){ attr=s; } class Sender{ public Response send(Request req) { Response res=(Response) call.invoke(req); return res; } } Paul Fremantle wrote: Mohamed The server is expecting it in XML form not string form. Can you please post the WSDL. Also please explain how you are creating the XML that you are sending. Paul On Nov 21, 2007 10:41 AM, M.Khaled wrote: First of all Thanks a lot for your quick response.Second I just want to tell you how the scenario going in here: (1)I am just working in the client side (meaning I just created the client by axis WSDL2JAVA command by passing the WSDL file to it). (2)And I have to set ant attribute value which is of type String to a specific object and this value is xml elements but in a string representation. (3)This specific object will be passed to the invoke method of the Call object. (4)In the server side (which is out of my work scope, I am just using the URL for it and know nothing else about it) it is expecting that this value I passed is xml in a string representation. (5)So I tried your solution for base 64 encoding but the output was something like this: HJvc3BlY3Q+ICBpZClJzs and the server can't parse this form cause it is expecting that form: text (6)And axis is generating this output: text and the server can't parse this form. That's the point I am still sticking in. If you have any other solution please advice. Thanks, Mohamed. "Hoda, Nadeem [USA]" < hoda_nadeem@bah.com > wrote: If it is something very urgent, the easiest way is to base 64 encode the XML and pass the encoded string which is guaranteed to have no special characters. For example (server-side): import org.apache.xerces.impl.dv.util.Base64; .... //send this string String encodedXML = Base64.encode(rawXMLString); .... Otherwise you can use attachments, but that is not an "urgent" scenario solution. Thanks, Nadeem ________________________________ From: M.Khaled [mailto: mohamed_mohamed_186@yahoo.com ] Sent: Wednesday, November 21, 2007 1:41 PM To: axis-user@ws.apache.org Subject: Urgent Hi, I sent a question to the mailing list and got no answer till now.Could anyone help me? My question was about how to send xml as a string by axis client avoiding special character problem. Thanks, Mohamed. ________________________________ Be a better sports nut! Let your teams follow you with Yahoo Mobile. Try it now. t9_qDKvtAbMuh1G1SQtBI7ntAcJ> ________________________________ Never miss a thing. Make Yahoo your homepage. -- Paul Fremantle Co-Founder and VP of Technical Sales, WSO2 OASIS WS-RX TC Co-chair blog: http://pzf.fremantle.org paul@wso2.com "Oxygenating the Web Service Platform", www.wso2.com ________________________________ Be a better sports nut! Let your teams follow you with Yahoo Mobile. Try it now. t9_qDKvtAbMuh1G1SQtBI7ntAcJ%0A> --------------------------------------------------------------------- To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org For additional commands, e-mail: axis-user-help@ws.apache.org -- Paul Fremantle Co-Founder and VP of Technical Sales, WSO2 OASIS WS-RX TC Co-chair blog: http://pzf.fremantle.org paul@wso2.com "Oxygenating the Web Service Platform", www.wso2.com ________________________________ Get easy, one-click access to your favorites. Make Yahoo! your homepage. --------------------------------------------------------------------- To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org For additional commands, e-mail: axis-user-help@ws.apache.org ________________________________ Never miss a thing. Make Yahoo your homepage. --------------------------------------------------------------------- To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org For additional commands, e-mail: axis-user-help@ws.apache.org --------------------------------- Never miss a thing. Make Yahoo your homepage. --0-1440902096-1195680540=:59110 Content-Type: text/html; charset=iso-8859-1 Content-Transfer-Encoding: 8bit
Hi Sietse,
 
I red the article of the first link and I noticed he is using a class called IBMSOAPFactory to create element from XML string.I tried to try this example but failed to find the jar file for this class.Do you know where I can find it or if there is any equivalent open source class?
 
Best Regards,
Mohamed. 

sietsenicolaas.tenhoeve@bt.com wrote:
Hi Mohamed,

I advice to use strong typed wsdl files. I hope you are familiar with
strong vs. loose type languages? (i.e. java (strong) vs. php (loose))

I think the following links will provide enough information:
http://www.ibm.com/developerworks/xml/library/ws-tip-xsdcaution.html
http://www.ibm.com/developerworks/webservices/library/ws-loosevstrong.ht
ml

I agree almost complete with both articles that strong typed definitions
are the way to go. This because it minimizes the interpretation and
maximizes the intend of the service. The articles are pointing that out
with good examples imho!

Sietse


________________________________

From: M.Khaled [mailto:mohamed_mohamed_186@yahoo.com]
Sent: 21 November 2007 13:28
To: axis-user@ws.apache.org
Subject: RE: Urgent


Hi Sietse,

I am new to web service.So I am asking how can I adjust the wsdl file
as you adviced me?

Thanks,
Mohamed

sietsenicolaas.tenhoeve@bt.com wrote:

Hi Mohamed,

In my opinion the wsdl definition is not really a definition. It
specifies that it will receive a string. But it doesn't specify
the
meaning of it (i.e. xml, xml encoded as string). Therefore your
wsdl is
loosely defined and this gives freedom to the implementer to
interpret
it the way he wants. This results in unexpected behaviour.

My advice is to adjust the wsdl and make a strict definition of
the
messages. This enforces the client to use the well specified
description
and gives less possibility for an own interpretation.

Just my 2 cents.

Regards,
Sietse

________________________________

From: M.Khaled [mailto:mohamed_mohamed_186@yahoo.com]
Sent: 21 November 2007 12:52
To: axis-user@ws.apache.org
Subject: Re: Urgent


Paul

You think the server should decode the received string before
parsing
it, to reconvert the special charcters like '< and > to '<' and
'>' ?


Mohamed

Paul Fremantle wrote:

Mohamed

Now I'm confused. The WSDL defines a string. That says that the
server is expecting a string. So if that string is going to an
XML, then
it *should* be encoded, because the datatype of the element is
string
not xml.

If the server was expecting un-encoded XML then the WSDL should
say:





The client is doing the right thing (at least as far as the WSDL
says) in encoding the XML with < etc.

Paul


On Nov 21, 2007 11:27 AM, M.Khaled
wrote:


Hi Paul,

-This mail contains attached WSDL file which I used to
create the client by axis.
-And About the way I am creating the XML that I am
sending it's similar to the foolowing:

class Main{
String xml="text";
Request req=new Request();
req.setAttr(xml);
Sender sender=new Sender();
sender.send(req);
}

class Request{
String attr=null;
getAttr(){
return attr;
}
setAttr(String s){
attr=s;
}

class Sender{
public Response send(Request req) {
Response res=(Response) call.invoke(req);
return res;
}
}

Paul Fremantle wrote:

Mohamed

The server is expecting it in XML form not
string form.

Can you please post the WSDL. Also please
explain how you are creating the XML that you are sending.

Paul


On Nov 21, 2007 10:41 AM, M.Khaled
wrote:


First of all Thanks a lot for your quick
response.Second I just want to tell you how the scenario going
in here:
(1)I am just working in the client side
(meaning I just created the client by axis WSDL2JAVA command by
passing
the WSDL file to it).

(2)And I have to set ant attribute value
which is of type String to a specific object and this value is
xml
elements but in a string representation.

(3)This specific object will be passed
to the invoke method of the Call object.

(4)In the server side (which is out of
my work scope, I am just using the URL for it and know nothing
else
about it) it is expecting that this value I passed is xml in a
string
representation.

(5)So I tried your solution for base 64
encoding but the output was something like this:

HJvc3BlY3Q+ICBpZClJzs
and the server can't parse this form
cause it is expecting that form:
text

(6)And axis is generating this output:
text

and the server can't parse this form.

That's the point I am still sticking in.

If you have any other solution please
advice.

Thanks,
Mohamed.

"Hoda, Nadeem [USA]" <
hoda_nadeem@bah.com > wrote:


If it is something very urgent,
the easiest way is to base 64 encode the XML and pass the
encoded string
which is guaranteed to have no special characters.

For example (server-side):


import
org.apache.xerces.impl.dv.util.Base64;

...
//send this string
String encodedXML =
Base64.encode(rawXMLString);
...


Otherwise you can use
attachments, but that is not an "urgent" scenario solution.

Thanks,

Nadeem

________________________________

From: M.Khaled [mailto:
mohamed_mohamed_186@yahoo.com ]
Sent: Wednesday, November 21,
2007 1:41 PM
To: axis-user@ws.apache.org
Subject: Urgent


Hi,

I sent a question to the mailing
list and got no answer till now.Could anyone help me?
My question was about how to
send xml as a string by axis client avoiding special character
problem.

Thanks,
Mohamed.
________________________________

Be a better sports nut! Let your
teams follow you with Yahoo Mobile. Try it now.
t9_qDKvtAbMuh1G1SQtBI7ntAcJ>


________________________________

Never miss a thing. Make Yahoo your
homepage.





--
Paul Fremantle
Co-Founder and VP of Technical Sales, WSO2
OASIS WS-RX TC Co-chair

blog: http://pzf.fremantle.org

paul@wso2.com

"Oxygenating the Web Service Platform",
www.wso2.com


________________________________

Be a better sports nut! Let your teams follow you with
Yahoo Mobile. Try it now.
t9_qDKvtAbMuh1G1SQtBI7ntAcJ%0A>



---------------------------------------------------------------------
To unsubscribe, e-mail:
axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail:
axis-user-help@ws.apache.org





--
Paul Fremantle
Co-Founder and VP of Technical Sales, WSO2
OASIS WS-RX TC Co-chair

blog: http://pzf.fremantle.org
paul@wso2.com

"Oxygenating the Web Service Platform", www.wso2.com



________________________________

Get easy, one-click access to your favorites. Make Yahoo! your
homepage.



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org




________________________________

Never miss a thing. Make Yahoo your homepage.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org



Never miss a thing. Make Yahoo your homepage. --0-1440902096-1195680540=:59110--