You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Tony Opatha <to...@yahoo.com> on 2003/06/30 22:40:44 UTC

AXIS 1.1 Performance comparisons between Document-Style vs RPC-Style

Hello,
 
I wrote a simple web service client in .NET 1.1 (using Visual Studio .NET 2003)
that consumed a document-style SOAP Web Service in AXIS 1.1. The document
size that was transmitted ranged from 0.1 - 0.5 MB.
 
I also tested a simple web service client in .NET 1.1 that consumed a RPC-sty;e SOAP
Web Serbice in AXIS 1.1. The data size of the argument typ was a bit higher than
document style payload.
 
It seems that invariably document-style SOAP message marshalling and unmarshalling
(and even transfer) was substantially faster than rpc-style SOAP message.
 
Some questions:
 
1) I wonder if any one else has observed similar performance degradation of RPC
    when AXIS interfaces with another web services engine (such as .NET). 
 
2) Why does RPC payload processing take longer on AXIS?
 
3) Wouldn't it make sense for large data sizes to use document-style since
    AXIS does expensive argument processing for medium-to-large payloads?
 
 
Thanks.
 
 
 
 
 
 
 


Mitch Gitman <mg...@usa.net> wrote:
Within a WSDL document, you have the style attribute at:
/wsdl:definitions/wsdl:binding/soapbind:binding[@style]

There are only two possible values:
* document
* rpc

WSDL knows nothing of "message style." By the same token, there's nothing
stopping message style from being done using either document style or RPC
style, as long as Axis has implemented it both ways. 

I have to clarify some of what Nick writes: "So, I presume, to a client an
Axis 'document' or 'message' style service should look the same from the WSDL.
ie: they both contain payload documents rather than RPC structures." 

Document style != message style. Also, RPC calls can be fully expressed using
document style, just the thing being expressed is not NECESSARILY an RPC
structure.

"Nicholas Ardlie" wrote:
> --------------------------------------------- 
> Attachment:? 
> MIME Type:?multipart/alternative 
> --------------------------------------------- 
Hi Bhanu
As far as I understand, at the SOAP level, style=Document is correct for what
axis calls 'message' style services.
Axis document style messaging in fact does Java<->XML binding so they needed
to define 'message' style services as services that really deal with the XML
itself (ie: message style is what the non-axis world understand as document
style). More specifically a client doesn't care whether the Axis server does
Java<->XML binding at its end or not. It only cares about the request and
response SOAP structure. So, I presume, to a client an Axis 'document' or
'message' style service should look the same from the WSDL. ie: they both
contain payload documents rather than RPC structures.

regards,
Nick.

-----Original Message-----
From: Bhanu Pabreja [mailto:pabreja@infigroup.com]
Sent: Wednesday, 25 June 2003 9:03 AM
To: axis-user@ws.apache.org
Subject: RE: Message Style and WSDL


I just had a look at your wsdl file and it says that the style=Document ....
so this makes me wonder is it really message style service.

Have a look at my deploy.wsdd and just try to create a method and install the
service and see how is shows up in your engine ...

BTW: How do we bypass the ?wsdl and insert our own handwritten wsdl file so
that next time the client tries to access the file it shows the newly created
self edtited wsdl file.

Thanx in advance ...

Bhanu

-----Original Message-----
From: remko de knikker [mailto:remko.deknikker@yale.edu]
Sent: Tuesday, June 24, 2003 3:10 PM
To: axis-user@ws.apache.org
Subject: Re: Message Style and WSDL


You can also handwrite your wsdl-file and include it in the wsdd file 

provided of course your webservice is actually working message-style.

This way you bypass the generation of your wsdl by axis.



r









"http://biryani.med.yale.edu:8081/axis/services/GetXSLIM"
xmlns=
"http://schemas.xmlsoap.org/wsdl/" 
xmlns:apachesoap= "http://xml.apache.org/xml-soap"
xmlns:impl=
"http://biryani.med.yale.edu:8081/axis/services/GetXSLIM"
xmlns:intf=
"http://biryani.med.yale.edu:8081/axis/services/GetXSLIM"
xmlns:soapenc=
"http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/" 
xmlns:wsdlsoap= "http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd=
"http://www.w3..org/2001/XMLSchema" 
> xmlns:xsd= "http://www.w3.org/2001/XMLSchema"
>







































































"http://www.w3.org/2001/XMLSchema" >namespace= "http://schemas.xmlsoap.org/soap/encoding/"
/>type="xsd:anyType"/>type="xsd:anyType"/>


























"http://schemas.xmlsoap.org/soap/http" 
/>






"http://biryani.med.yale.edu:8081/axis/services/GetXSLIM"
use="literal"/>





"http://biryani.med.yale.edu:8081/axis/services/GetXSLIM"
use="literal"/>










"http://biryani.med.yale.edu:8081/axis/services/GetXSLIM"
/>








Bhanu Pabreja wrote:


still does not work your server.



Once you run your server and I hope it is visible on the internet I will

have a look at your wsdl.



Can u also post your wsdl file in the thread



Thanx in advance,



Bhanu







-----Original Message-----

From: remko de knikker [ mailto:remko.deknikker@yale.edu]

Sent: Tuesday, June 24, 2003 2:06 PM

To: axis-user@ws.apache.org

Subject: Re: Message Style and WSDL





Bhanu,

the only other thing that I know of, is that I need to restart my

server, to make it work...?

sorry,

r



Bhanu Pabreja wrote:





This what my deployment descriptor looks like :





xmlns:java= "http://xml.apache.org/axis/wsdd/providers/java"


xmlns:xsi= "http://www.w3.org/2000/10/XMLSchema-instance"
>


    

work -->







value="com.dumdum.taxonomy.ws.FirmTaxonomyModelMessageStyleService" />












and my wsdl file looks like this:






targetNamespace=" http://localhost:8080/FTAToolWeb/services/FirmTaxonomyMode



l



Service" xmlns= "http://schemas.xmlsoap.org/wsdl/"


xmlns:apachesoap= "http://xml.apache.org/xml-soap"


xmlns:impl=" http://localhost:8080/FTAToolWeb/services/FirmTaxonomyModelServ



i



ce"

xmlns:intf=" http://localhost:8080/FTAToolWeb/services/FirmTaxonomyModelServ



i



ce" xmlns:soapenc= "http://schemas.xmlsoap.org/soap/encoding/"


xmlns:wsdl= "http://schemas.xmlsoap.org/wsdl/"


xmlns:wsdlsoap= "http://schemas.xmlsoap.org/wsdl/soap/"


xmlns:xsd= "http://www.w3.org/2001/XMLSchema"
>
















name="fetchDocumentRequest"/>


name="fetchDocumentResponse"/>






type="intf:FirmTaxonomyModelMessageStyleService">


transport= "http://schemas.xmlsoap.org/soap/http"
/>








encodingStyle= "http://schemas.xmlsoap.org/soap/encoding/"


namespace=" http://localhost:8080/FTAToolWeb/services/FirmTaxonomyModelServi



c



e" use="encoded"/>






encodingStyle= "http://schemas.xmlsoap.org/soap/encoding/"


namespace=" http://localhost:8080/FTAToolWeb/services/FirmTaxonomyModelServi



c



e" use="encoded"/>










name="FirmTaxonomyModelService">


location=" http://localhost:8080/FTAToolWeb/services/FirmTaxonomyModelServic



e



"/>









Now this thing clearly says that this is RPC style service and everything

looks to be encoded.



BTW I dont think so your server is up since I could not access your

webservice's wsdl file.



Have a look and tell me where I am wrong.



Bhanu.







-----Original Message-----

From: remko de knikker [ mailto:remko.deknikker@yale.edu]

Sent: Tuesday, June 24, 2003 9:01 AM

To: axis-user@ws.apache.org

Subject: Re: Message Style and WSDL







Bhanu,



here's my example for a message-style ws, which works for me.





xmlns:java= "http://xml.apache.org/axis/wsdd/providers/java"


xmlns:xsi= "http://www.w3.org/2000/10/XMLSchema-instance"
>

























value=" http://biryani.med.yale.edu:8081/axis/files/xslim/GetXSLIM_method1Re



q



uest.xsd"/>







Look at the result at

http://biryani.med.yale.edu:8081/axis/services/GetXSLIM?wsdl



remko





Date: Mon, 23 Jun 2003 18:39:30 -0400

From: Bhanu Pabreja 


To: axis-user@ws.apache.org

Reply-to: axis-user@ws.apache.org

Subject: Message Style and WSDL

One step beyond .jws files

I have made a message style service with one method



public Document fetchData(Document doc){

// logic

}yl



Then I deployed the service using the deploy.wsdd. I could not use the

Java2WSDL utitily to generate "Message" style service so I hand edited one

of the provided examples.



But once I deploy it to the /servlet/AxisServlet and try to browse the

generated .wsdl file it is totally a different version of what I have made

.. I mean the wsdl says that it is a RPC style service and the operation is

encoded.



Now the questions I can figure out is :



(a) How to make a message style service and create a wsdl file which says

that it is a Message style service.





thanx in advance





dumdum420












































**********************************************************************
This email and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error please notify
the system manager.

This footnote also confirms that this email message has been swept by
MIMEsweeper for the presence of computer viruses.

www.mimesweeper.com
**********************************************************************







---------------------------------
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!