I've looked through the 1.1 source code and the feature exists on the server side. Though, when I try to turn streaming on, the parsing fails. So, I suppose the following questions still remain:
1. Is this feature supported for Axix 1.1. Would it be a bug if the feature doesn't work as expected? Is it supported for the client side (i.e. did I miss this in the code)? 2. This attribute seems to turn off the Sax Event Recording. However, I don't know what this means from an overall functionality and performance standpoint. I could use an explanation here. Thanks. Scott -----Original Message----- From: Aleksander Slominski [mailto:[EMAIL PROTECTED] Sent: Wednesday, May 12, 2004 11:03 AM To: '[EMAIL PROTECTED]'; Goldstein, Scott Subject: Re: high fidelity and streaming=on Goldstein, Scott wrote: >Alek, > >Thank you for your reply! > >So, from your message, it appears that this is a feature in Axis 1.2 and >you're not sure whether it's available in 1.1. > i do not have 1.1 source code around to check. >Also, it's still unclear >exactly what the feature is. > you can check out source code and grep -i "streaming". what i am not clear is what tradeoffs were done for this feature and how much of streaming really it supports (or how low is not high fidelity ...) >Do you know who I could contact to find >out more information about it? > > i am not sure who exactly worked on that (Glen, Dims?) but i have CCed axis-dev and let see if we get some more comments (i am especially interested to hear about expected performance/memory gains for streaming="on"). thanks, alek >-----Original Message----- >From: Aleksander Slominski [mailto:[EMAIL PROTECTED] >Sent: Tuesday, May 11, 2004 3:44 PM >To: [EMAIL PROTECTED] >Subject: Re: high fidelity and streaming=on > >Goldstein, Scott wrote: > > > >>Could someone explain to me that advantages/disadvantages of turning >>streaming on (high-fidelity off)? >> >> >> >hi, > >it would be nice if somebody who implemented (Dims? Glen?) this feature >posted some notes about it and expected performance gains/trade offs (if > >streaming no longer support for DOM?) > > > >>It seems like the SAX Event recording is causing some performance >>issues and we're wondering if turning streaming on will fix this. >> >> >> >based on simple performance tests (just few runs and without error >analysis) there is no substantial difference (see results below) when >running test for array sizes of 10 and 1000 ... the difference is >visible for arrays that have 100K elements: > >NOTE: i do not use AXIS as client but XSOAP4 - i only use AXIS server >side. > >i have a simple service that implements methods such as "echoVoid >echoStrings receiveBase64 receiveDoubles sendInts echoBase64 >receiveStrings echoInts receiveInts sendDoubles sendBase64 echoDoubles >sendStrings" (see wsdd and wsdl file below) and i have two versions of >the service deployed: with and without streaming="on". > >for service deployed with streaming="on" > >N=2 avg invocation:50.0 [ms] throughput:20.0 [invocations/second] >arraysSize=100000 direction=r method=b >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveBase64 100000 0.050000000 >20.00 > >N=2 avg invocation:23839.5 [ms] throughput:0.04194718848969148 >[invocations/second] arraysSize=100000 direction=r method=d >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveDoubles 100000 23.839500000 > >0.04 > >N=2 avg invocation:21681.0 [ms] throughput:0.04612333379456667 >[invocations/second] arraysSize=100000 direction=r method=i >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveInts 100000 21.681000000 >0.05 > >N=2 avg invocation:22767.5 [ms] throughput:0.04392225760404085 >[invocations/second] arraysSize=100000 direction=r method=s >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveStrings 100000 22.767500000 > >0.04 > >the same test but for AXIS service deployed without streaming > >N=2 avg invocation:60.0 [ms] throughput:16.666666666666668 >[invocations/second] arraysSize=100000 direction=r method=b >A31P_JDK142 XSOAP4 AXIS_1_2 receiveBase64 100000 0.060000000 16.67 > >N=2 avg invocation:30534.0 [ms] throughput:0.03275037662933124 >[invocations/second] arraysSize=100000 direction=r method=d >A31P_JDK142 XSOAP4 AXIS_1_2 receiveDoubles 100000 30.534000000 0.03 > >N=2 avg invocation:28060.0 [ms] throughput:0.03563791874554526 >[invocations/second] arraysSize=100000 direction=r method=i >A31P_JDK142 XSOAP4 AXIS_1_2 receiveInts 100000 28.060000000 0.04 > >N=2 avg invocation:29217.0 [ms] throughput:0.03422664886880926 >[invocations/second] arraysSize=100000 direction=r method=s >A31P_JDK142 XSOAP4 AXIS_1_2 receiveStrings 100000 29.217000000 0.03 > >so it looks like when using streaming for very large complex payloads >you may gain 20% increase in performance ... > > > >>In addition, is there a way, in Axis 1.1, to turn it on on the the >>client side? >> >> >> >no idea. > > > >>How about in 1.2? >> >> >> >for server side: in deploy.wsdd do something similar <service >name="Benchmark1Streaming" provider="java:RPC" streaming="on"> > >on client side: there is property "axis.streaming" to Boolean.TRUE >and/or you can can cast to o.a..axis.client.Call and use >setStreaming(true). i think both should work? >see also: http://issues.apache.org/jira/browse/AXIS-1323 > >best, > >alek > > >here are results on my Thinkpad A31P 2Ghz 1GB RAM , JDK 1.4.2 for array >of size 10 and 1000 elements: > >--------------------------- >RESULTS WITH STREAMING > >size=10 > >N=200 avg invocation:15.025 [ms] throughput:66.55574043261231 >[invocations/second] arraysSize=10 direction=e method=v >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoVoid 10 0.015025000 66.56 > >N=200 avg invocation:14.97 [ms] throughput:66.8002672010688 >[invocations/second] arraysSize=10 direction=e method=b >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoBase64 10 0.014970000 66.80 > >N=200 avg invocation:17.875 [ms] throughput:55.94405594405594 >[invocations/second] arraysSize=10 direction=e method=d >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoDoubles 10 0.017875000 55.94 > >N=200 avg invocation:18.53 [ms] throughput:53.96654074473826 >[invocations/second] arraysSize=10 direction=e method=i >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoInts 10 0.018530000 53.97 > >N=200 avg invocation:17.975 [ms] throughput:55.63282336578581 >[invocations/second] arraysSize=10 direction=e method=s >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoStrings 10 0.017975000 55.63 > > > >N=200 avg invocation:15.57 [ms] throughput:64.22607578676943 >[invocations/second] arraysSize=10 direction=r method=b >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveBase64 10 0.015570000 64.23 > >N=200 avg invocation:16.825 [ms] throughput:59.43536404160475 >[invocations/second] arraysSize=10 direction=r method=d >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveDoubles 10 0.016825000 >59.44 > >N=200 avg invocation:16.725 [ms] throughput:59.79073243647235 >[invocations/second] arraysSize=10 direction=r method=i >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveInts 10 0.016725000 59.79 > >N=200 avg invocation:18.775 [ms] throughput:53.26231691078562 >[invocations/second] arraysSize=10 direction=r method=s >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveStrings 10 0.018775000 >53.26 > > >N=200 avg invocation:13.62 [ms] throughput:73.42143906020557 >[invocations/second] arraysSize=10 direction=s method=b >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING sendBase64 10 0.013620000 73.42 > >N=200 avg invocation:16.625 [ms] throughput:60.150375939849624 >[invocations/second] arraysSize=10 direction=s method=d >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING sendDoubles 10 0.016625000 60.15 > >N=200 avg invocation:15.975 [ms] throughput:62.59780907668232 >[invocations/second] arraysSize=10 direction=s method=i >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING sendInts 10 0.015975000 62.60 > >N=200 avg invocation:21.13 [ms] throughput:47.326076668244205 >[invocations/second] arraysSize=10 direction=s method=s >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING sendStrings 10 0.021130000 47.33 > > > > >size=1000 > > > >N=2 avg invocation:20.0 [ms] throughput:50.0 [invocations/second] >arraysSize=1000 direction=e method=v >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoVoid 1000 0.020000000 50.00 > >N=2 avg invocation:15.0 [ms] throughput:66.66666666666667 >[invocations/second] arraysSize=1000 direction=e method=b >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoBase64 1000 0.015000000 66.67 > >N=2 avg invocation:515.5 [ms] throughput:1.939864209505335 >[invocations/second] arraysSize=1000 direction=e method=d >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoDoubles 1000 0.515500000 1.94 > >N=2 avg invocation:506.0 [ms] throughput:1.976284584980237 >[invocations/second] arraysSize=1000 direction=e method=i >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoInts 1000 0.506000000 1.98 > >N=2 avg invocation:440.5 [ms] throughput:2.2701475595913734 >[invocations/second] arraysSize=1000 direction=e method=s >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING echoStrings 1000 0.440500000 2.27 > > > >N=2 avg invocation:15.0 [ms] throughput:66.66666666666667 >[invocations/second] arraysSize=1000 direction=r method=b >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveBase64 1000 0.015000000 >66.67 > >N=2 avg invocation:290.5 [ms] throughput:3.442340791738382 >[invocations/second] arraysSize=1000 direction=r method=d >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveDoubles 1000 0.290500000 >3.44 > >N=2 avg invocation:265.5 [ms] throughput:3.766478342749529 >[invocations/second] arraysSize=1000 direction=r method=i >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveInts 1000 0.265500000 3.77 > >N=2 avg invocation:260.0 [ms] throughput:3.846153846153846 >[invocations/second] arraysSize=1000 direction=r method=s >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING receiveStrings 1000 0.260000000 >3.85 > > > >N=2 avg invocation:15.0 [ms] throughput:66.66666666666667 >[invocations/second] arraysSize=1000 direction=s method=b >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING sendBase64 1000 0.015000000 66.67 > >N=2 avg invocation:235.5 [ms] throughput:4.246284501061571 >[invocations/second] arraysSize=1000 direction=s method=d >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING sendDoubles 1000 0.235500000 4.25 > >N=2 avg invocation:185.5 [ms] throughput:5.390835579514825 >[invocations/second] arraysSize=1000 direction=s method=i >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING sendInts 1000 0.185500000 5.39 > >N=2 avg invocation:230.0 [ms] throughput:4.3478260869565215 >[invocations/second] arraysSize=1000 direction=s method=s >A31P_JDK142 XSOAP4 AXIS_1_2_STREAMING sendStrings 1000 0.230000000 4.35 > > >-------------------------------- >RESULTS WITHOUT STREAMING > >array size=10 > >N=200 avg invocation:14.27 [ms] throughput:70.0770847932726 >[invocations/second] arraysSize=10 direction=e method=v >A31P_JDK142 XSOAP4 AXIS_1_2 echoVoid 10 0.014270000 70.08 > >N=200 avg invocation:15.375 [ms] throughput:65.04065040650406 >[invocations/second] arraysSize=10 direction=e method=b >A31P_JDK142 XSOAP4 AXIS_1_2 echoBase64 10 0.015375000 65.04 > >N=200 avg invocation:17.725 [ms] throughput:56.41748942172074 >[invocations/second] arraysSize=10 direction=e method=d >A31P_JDK142 XSOAP4 AXIS_1_2 echoDoubles 10 0.017725000 56.42 > >N=200 avg invocation:17.875 [ms] throughput:55.94405594405594 >[invocations/second] arraysSize=10 direction=e method=i >A31P_JDK142 XSOAP4 AXIS_1_2 echoInts 10 0.017875000 55.94 > >N=200 avg invocation:18.275 [ms] throughput:54.719562243502054 >[invocations/second] arraysSize=10 direction=e method=s >A31P_JDK142 XSOAP4 AXIS_1_2 echoStrings 10 0.018275000 54.72 > > > >N=200 avg invocation:13.22 [ms] throughput:75.642965204236 >[invocations/second] arraysSize=10 direction=r method=b >A31P_JDK142 XSOAP4 AXIS_1_2 receiveBase64 10 0.013220000 75.64 > >N=200 avg invocation:17.925 [ms] throughput:55.78800557880056 >[invocations/second] arraysSize=10 direction=r method=d >A31P_JDK142 XSOAP4 AXIS_1_2 receiveDoubles 10 0.017925000 55.79 > >N=200 avg invocation:18.13 [ms] throughput:55.15719801434087 >[invocations/second] arraysSize=10 direction=r method=i >A31P_JDK142 XSOAP4 AXIS_1_2 receiveInts 10 0.018130000 55.16 > >N=200 avg invocation:17.02 [ms] throughput:58.75440658049354 >[invocations/second] arraysSize=10 direction=r method=s >A31P_JDK142 XSOAP4 AXIS_1_2 receiveStrings 10 0.017020000 58.75 > > > >N=200 avg invocation:13.57 [ms] throughput:73.69196757553426 >[invocations/second] arraysSize=10 direction=s method=b >A31P_JDK142 XSOAP4 AXIS_1_2 sendBase64 10 0.013570000 73.69 > >N=200 avg invocation:13.57 [ms] throughput:73.69196757553426 >[invocations/second] arraysSize=10 direction=s method=d >A31P_JDK142 XSOAP4 AXIS_1_2 sendDoubles 10 0.013570000 73.69 > >N=200 avg invocation:13.37 [ms] throughput:74.79431563201197 >[invocations/second] arraysSize=10 direction=s method=i >A31P_JDK142 XSOAP4 AXIS_1_2 sendInts 10 0.013370000 74.79 > >N=200 avg invocation:16.375 [ms] throughput:61.06870229007634 >[invocations/second] arraysSize=10 direction=s method=s >A31P_JDK142 XSOAP4 AXIS_1_2 sendStrings 10 0.016375000 61.07 > > > > > >size=1000 > >N=2 avg invocation:10.0 [ms] throughput:100.0 [invocations/second] >arraysSize=1000 direction=e method=v >A31P_JDK142 XSOAP4 AXIS_1_2 echoVoid 1000 0.010000000 100.00 > >N=2 avg invocation:15.0 [ms] throughput:66.66666666666667 >[invocations/second] arraysSize=1000 direction=e method=b >A31P_JDK142 XSOAP4 AXIS_1_2 echoBase64 1000 0.015000000 66.67 > >N=2 avg invocation:475.5 [ms] throughput:2.1030494216614093 >[invocations/second] arraysSize=1000 direction=e method=d >A31P_JDK142 XSOAP4 AXIS_1_2 echoDoubles 1000 0.475500000 2.10 > >N=2 avg invocation:436.0 [ms] throughput:2.293577981651376 >[invocations/second] arraysSize=1000 direction=e method=i >A31P_JDK142 XSOAP4 AXIS_1_2 echoInts 1000 0.436000000 2.29 > >N=2 avg invocation:600.5 [ms] throughput:1.665278934221482 >[invocations/second] arraysSize=1000 direction=e method=s >A31P_JDK142 XSOAP4 AXIS_1_2 echoStrings 1000 0.600500000 1.67 > > > >N=2 avg invocation:15.0 [ms] throughput:66.66666666666667 >[invocations/second] arraysSize=1000 direction=r method=b >A31P_JDK142 XSOAP4 AXIS_1_2 receiveBase64 1000 0.015000000 66.67 > >N=2 avg invocation:285.5 [ms] throughput:3.502626970227671 >[invocations/second] arraysSize=1000 direction=r method=d >A31P_JDK142 XSOAP4 AXIS_1_2 receiveDoubles 1000 0.285500000 3.50 > >N=2 avg invocation:280.5 [ms] throughput:3.5650623885918 >[invocations/second] arraysSize=1000 direction=r method=i >A31P_JDK142 XSOAP4 AXIS_1_2 receiveInts 1000 0.280500000 3.57 > >N=2 avg invocation:295.5 [ms] throughput:3.3840947546531304 >[invocations/second] arraysSize=1000 direction=r method=s >A31P_JDK142 XSOAP4 AXIS_1_2 receiveStrings 1000 0.295500000 3.38 > > > >N=2 avg invocation:10.0 [ms] throughput:100.0 [invocations/second] >arraysSize=1000 direction=s method=b >A31P_JDK142 XSOAP4 AXIS_1_2 sendBase64 1000 0.010000000 100.00 > >N=2 avg invocation:185.0 [ms] throughput:5.405405405405405 >[invocations/second] arraysSize=1000 direction=s method=d >A31P_JDK142 XSOAP4 AXIS_1_2 sendDoubles 1000 0.185000000 5.41 > >N=2 avg invocation:170.5 [ms] throughput:5.865102639296187 >[invocations/second] arraysSize=1000 direction=s method=i >A31P_JDK142 XSOAP4 AXIS_1_2 sendInts 1000 0.170500000 5.87 > >N=2 avg invocation:285.5 [ms] throughput:3.502626970227671 >[invocations/second] arraysSize=1000 direction=s method=s >A31P_JDK142 XSOAP4 AXIS_1_2 sendStrings 1000 0.285500000 3.50 > > >------------------------------------------- >server-config.wsdd > ><?xml version="1.0" encoding="UTF-8"?> ><deployment xmlns="http://xml.apache.org/axis/wsdd/" >xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> ><globalConfiguration> ><parameter name="adminPassword" value="admin"/> ><parameter name="attachments.implementation" >value="org.apache.axis.attachments.AttachmentsImpl"/> ><parameter name="sendXsiTypes" value="false"/> ><parameter name="sendMultiRefs" value="false"/> ><parameter name="sendXMLDeclaration" value="true"/> ><requestFlow> ><handler type="java:org.apache.axis.handlers.JWSHandler"> ><parameter name="scope" value="session"/> ></handler> ><handler type="java:org.apache.axis.handlers.JWSHandler"> ><parameter name="scope" value="request"/> ><parameter name="extension" value=".jwr"/> ></handler> ></requestFlow> ></globalConfiguration> ><handler name="LocalResponder" >type="java:org.apache.axis.transport.local.LocalResponder"/> ><handler name="URLMapper" >type="java:org.apache.axis.handlers.http.URLMapper"/> ><handler name="Authenticate" >type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/> ><service name="AdminService" provider="java:MSG"> ><parameter name="allowedMethods" value="AdminService"/> ><parameter name="enableRemoteAdmin" value="false"/> ><parameter name="className" value="org.apache.axis.utils.Admin"/> ><namespace>http://xml.apache.org/axis/wsdd/</namespace> ></service> ><service name="Benchmark1" provider="java:RPC"> ><operation name="echoVoid" qname="ns1:echoVoid" soapAction="" >xmlns:ns1="urn:Benchmark1"/> ><operation returnQName="output" returnType="xsd:base64Binary" >name="echoBase64" qname="ns2:echoBase64" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="urn:Benchmark1"> ><parameter name="input" type="xsd:base64Binary"/> ></operation> ><operation returnQName="output" returnType="ns3:ArrayOfstring" >name="echoStrings" qname="ns3:echoStrings" soapAction="" >xmlns:ns3="urn:Benchmark1"> ><parameter name="input" type="ns3:ArrayOfstring"/> ></operation> ><operation returnQName="output" returnType="ns4:ArrayOfint" >name="echoInts" qname="ns4:echoInts" soapAction="" >xmlns:ns4="urn:Benchmark1"> ><parameter name="input" type="ns4:ArrayOfint"/> ></operation> ><operation returnQName="output" returnType="ns5:ArrayOfdouble" >name="echoDoubles" qname="ns5:echoDoubles" soapAction="" >xmlns:ns5="urn:Benchmark1"> ><parameter name="input" type="ns5:ArrayOfdouble"/> ></operation> ><operation returnQName="size" returnType="xsd:int" name="receiveBase64" >qname="ns6:receiveBase64" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns6="urn:Benchmark1"> ><parameter name="input" type="xsd:base64Binary"/> ></operation> ><operation returnQName="size" returnType="xsd:int" name="receiveStrings" > >qname="ns7:receiveStrings" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns7="urn:Benchmark1"> ><parameter name="input" type="ns7:ArrayOfstring"/> ></operation> ><operation returnQName="size" returnType="xsd:int" name="receiveInts" >qname="ns8:receiveInts" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns8="urn:Benchmark1"> ><parameter name="input" type="ns8:ArrayOfint"/> ></operation> ><operation returnQName="size" returnType="xsd:int" name="receiveDoubles" > >qname="ns9:receiveDoubles" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns9="urn:Benchmark1"> ><parameter name="input" type="ns9:ArrayOfdouble"/> ></operation> ><operation returnQName="output" returnType="xsd:base64Binary" >name="sendBase64" qname="ns10:sendBase64" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" >xmlns:ns10="urn:Benchmark1"> ><parameter name="size" type="xsd:int"/> ></operation> ><operation returnQName="output" returnType="ns11:ArrayOfstring" >name="sendStrings" qname="ns11:sendStrings" soapAction="" >xmlns:ns11="urn:Benchmark1"> ><parameter name="size" type="xsd:int" >xmlns:xsd="http://www.w3.org/2001/XMLSchema"/> ></operation> ><operation returnQName="output" returnType="ns12:ArrayOfint" >name="sendInts" qname="ns12:sendInts" soapAction="" >xmlns:ns12="urn:Benchmark1"> ><parameter name="size" type="xsd:int" >xmlns:xsd="http://www.w3.org/2001/XMLSchema"/> ></operation> ><operation returnQName="output" returnType="ns13:ArrayOfdouble" >name="sendDoubles" qname="ns13:sendDoubles" soapAction="" >xmlns:ns13="urn:Benchmark1"> ><parameter name="size" type="xsd:int" >xmlns:xsd="http://www.w3.org/2001/XMLSchema"/> ></operation> ><parameter name="allowedMethods" value="echoVoid echoStrings >receiveBase64 receiveDoubles sendInts echoBase64 receiveStrings echoInts > >receiveInts sendDoubles sendBase64 echoDoubles sendStrings"/> ><parameter name="wsdlPortType" value="Benchmark1PortType"/> ><parameter name="wsdlServicePort" value="Benchmark1"/> ><parameter name="className" value="benchmark1.Benchmark1Impl"/> ><parameter name="scope" value="Session"/> ><parameter name="wsdlTargetNamespace" >value="http://www.extreme.indiana.edu/wsdl/Benchmark1.wsdl"/> ><parameter name="wsdlServiceElement" value="Benchmark1"/> ><typeMapping encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" >serializer="org.apache.axis.encoding.ser.ArraySerializerFactory" >deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory" >type="java:double[]" qname="ns14:ArrayOfdouble" >xmlns:ns14="urn:Benchmark1"/> ><typeMapping encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" >serializer="org.apache.axis.encoding.ser.ArraySerializerFactory" >deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory" >type="java:int[]" qname="ns15:ArrayOfint" xmlns:ns15="urn:Benchmark1"/> ><typeMapping encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" >serializer="org.apache.axis.encoding.ser.ArraySerializerFactory" >deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory" >type="java:java.lang.String[]" qname="ns16:ArrayOfstring" >xmlns:ns16="urn:Benchmark1"/> ></service> ><service name="Version" provider="java:RPC"> ><parameter name="allowedMethods" value="getVersion"/> ><parameter name="className" value="org.apache.axis.Version"/> ></service> ><service name="Benchmark1Streaming" provider="java:RPC" streaming="on"> ><operation name="echoVoid" qname="ns17:echoVoid" soapAction="" >xmlns:ns17="urn:Benchmark1"/> ><operation returnQName="output" returnType="xsd:base64Binary" >name="echoBase64" qname="ns18:echoBase64" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" >xmlns:ns18="urn:Benchmark1"> ><parameter name="input" type="xsd:base64Binary"/> ></operation> ><operation returnQName="output" returnType="ns19:ArrayOfstring" >name="echoStrings" qname="ns19:echoStrings" soapAction="" >xmlns:ns19="urn:Benchmark1"> ><parameter name="input" type="ns19:ArrayOfstring"/> ></operation> ><operation returnQName="output" returnType="ns20:ArrayOfint" >name="echoInts" qname="ns20:echoInts" soapAction="" >xmlns:ns20="urn:Benchmark1"> ><parameter name="input" type="ns20:ArrayOfint"/> ></operation> ><operation returnQName="output" returnType="ns21:ArrayOfdouble" >name="echoDoubles" qname="ns21:echoDoubles" soapAction="" >xmlns:ns21="urn:Benchmark1"> ><parameter name="input" type="ns21:ArrayOfdouble"/> ></operation> ><operation returnQName="size" returnType="xsd:int" name="receiveBase64" >qname="ns22:receiveBase64" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" >xmlns:ns22="urn:Benchmark1"> ><parameter name="input" type="xsd:base64Binary"/> ></operation> ><operation returnQName="size" returnType="xsd:int" name="receiveStrings" > >qname="ns23:receiveStrings" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" >xmlns:ns23="urn:Benchmark1"> ><parameter name="input" type="ns23:ArrayOfstring"/> ></operation> ><operation returnQName="size" returnType="xsd:int" name="receiveInts" >qname="ns24:receiveInts" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" >xmlns:ns24="urn:Benchmark1"> ><parameter name="input" type="ns24:ArrayOfint"/> ></operation> ><operation returnQName="size" returnType="xsd:int" name="receiveDoubles" > >qname="ns25:receiveDoubles" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" >xmlns:ns25="urn:Benchmark1"> ><parameter name="input" type="ns25:ArrayOfdouble"/> ></operation> ><operation returnQName="output" returnType="xsd:base64Binary" >name="sendBase64" qname="ns26:sendBase64" soapAction="" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" >xmlns:ns26="urn:Benchmark1"> ><parameter name="size" type="xsd:int"/> ></operation> ><operation returnQName="output" returnType="ns27:ArrayOfstring" >name="sendStrings" qname="ns27:sendStrings" soapAction="" >xmlns:ns27="urn:Benchmark1"> ><parameter name="size" type="xsd:int" >xmlns:xsd="http://www.w3.org/2001/XMLSchema"/> ></operation> ><operation returnQName="output" returnType="ns28:ArrayOfint" >name="sendInts" qname="ns28:sendInts" soapAction="" >xmlns:ns28="urn:Benchmark1"> ><parameter name="size" type="xsd:int" >xmlns:xsd="http://www.w3.org/2001/XMLSchema"/> ></operation> ><operation returnQName="output" returnType="ns29:ArrayOfdouble" >name="sendDoubles" qname="ns29:sendDoubles" soapAction="" >xmlns:ns29="urn:Benchmark1"> ><parameter name="size" type="xsd:int" >xmlns:xsd="http://www.w3.org/2001/XMLSchema"/> ></operation> ><parameter name="allowedMethods" value="echoVoid echoStrings >receiveBase64 receiveDoubles sendInts echoBase64 receiveStrings echoInts > >receiveInts sendDoubles sendBase64 echoDoubles sendStrings"/> ><parameter name="wsdlPortType" value="Benchmark1PortType"/> ><parameter name="scope" value="Session"/> ><parameter name="className" value="benchmark1.Benchmark1Impl"/> ><parameter name="wsdlServicePort" value="Benchmark1"/> ><parameter name="wsdlTargetNamespace" >value="http://www.extreme.indiana.edu/wsdl/Benchmark1.wsdl"/> ><parameter name="wsdlServiceElement" value="Benchmark1"/> ><typeMapping encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" >serializer="org.apache.axis.encoding.ser.ArraySerializerFactory" >deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory" >type="java:double[]" qname="ns30:ArrayOfdouble" >xmlns:ns30="urn:Benchmark1"/> ><typeMapping encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" >serializer="org.apache.axis.encoding.ser.ArraySerializerFactory" >deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory" >type="java:int[]" qname="ns31:ArrayOfint" xmlns:ns31="urn:Benchmark1"/> ><typeMapping encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" >serializer="org.apache.axis.encoding.ser.ArraySerializerFactory" >deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory" >type="java:java.lang.String[]" qname="ns32:ArrayOfstring" >xmlns:ns32="urn:Benchmark1"/> ></service> ><transport name="http"> ><requestFlow> ><handler type="URLMapper"/> ><handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/> ></requestFlow> ><parameter name="qs:list" >value="org.apache.axis.transport.http.QSListHandler"/> ><parameter name="qs:wsdl" >value="org.apache.axis.transport.http.QSWSDLHandler"/> ><parameter name="qs:method" >value="org.apache.axis.transport.http.QSMethodHandler"/> ></transport> ><transport name="local"> ><responseFlow> ><handler type="LocalResponder"/> ></responseFlow> ></transport> ></deployment> > > >----- >WSL file > ><?xml version="1.0" encoding="UTF-8"?> ><definitions name="Benchmark1" >targetNamespace="http://www.extreme.indiana.edu/wsdl/Benchmark1.wsdl" >xmlns:tns="http://www.extreme.indiana.edu/wsdl/Benchmark1.wsdl" >xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" >xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" >xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" >xmlns:b1="urn:Benchmark1" >xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap/" >xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/" >xmlns="http://schemas.xmlsoap.org/wsdl/"> > ><types> > ><schema targetNamespace="urn:Benchmark1" >xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" >xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" >xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >xmlns:xsd="http://www.w3.org/2001/XMLSchema" >xmlns:b1="urn:Benchmark1" >xmlns="http://www.w3.org/2001/XMLSchema" >elementFormDefault="unqualified" >attributeFormDefault="unqualified"> ><import namespace="http://schemas.xmlsoap.org/soap/encoding/"/> > ><complexType name="ArrayOfstring"> ><complexContent> ><restriction base="SOAP-ENC:Array"> ><sequence> ><element name="item" type="xsd:string" minOccurs="0" >maxOccurs="unbounded"/> ></sequence> ><attribute ref="SOAP-ENC:arrayType" WSDL:arrayType="xsd:string[]"/> ></restriction> ></complexContent> ></complexType> > ><complexType name="ArrayOfint"> ><complexContent> ><restriction base="SOAP-ENC:Array"> ><sequence> ><element name="item" type="xsd:int" minOccurs="0" >maxOccurs="unbounded"/> ></sequence> ><attribute ref="SOAP-ENC:arrayType" WSDL:arrayType="xsd:int[]"/> ></restriction> ></complexContent> ></complexType> > ><complexType name="ArrayOfdouble"> ><complexContent> ><restriction base="SOAP-ENC:Array"> ><sequence> ><element name="item" type="xsd:double" minOccurs="0" >maxOccurs="unbounded"/> ></sequence> ><attribute ref="SOAP-ENC:arrayType" WSDL:arrayType="xsd:double[]"/> ></restriction> ></complexContent> ></complexType> > ><complexType name="echoVoidResponse"> ><sequence> ></sequence> ></complexType> > ></schema> > ></types> > ><message name="echoVoidRequest"> ></message> > ><message name="echoVoidResponse"> ></message> > ><message name="echoBase64Request"> ><part name="input" type="xsd:base64Binary"/> ></message> > ><message name="echoBase64Response"> ><part name="output" type="xsd:base64Binary"/> ></message> > ><message name="echoStringArrayRequest"> ><part name="input" type="b1:ArrayOfstring"/> ></message> > ><message name="echoStringArrayResponse"> ><part name="output" type="b1:ArrayOfstring"/> ></message> > ><message name="echoIntArrayRequest"> ><part name="input" type="b1:ArrayOfint"/> ></message> > ><message name="echoIntArrayResponse"> ><part name="output" type="b1:ArrayOfint"/> ></message> > ><message name="echoDoubleArrayRequest"> ><part name="input" type="b1:ArrayOfdouble"/> ></message> > ><message name="echoDoubleArrayResponse"> ><part name="output" type="b1:ArrayOfdouble"/> ></message> > > > ><message name="receiveBase64Request"> ><part name="input" type="xsd:base64Binary"/> ></message> > ><message name="receiveBase64Response"> ><part name="size" type="xsd:int"/> ></message> > > > ><message name="receiveStringsRequest"> ><part name="input" type="b1:ArrayOfstring"/> ></message> > ><message name="receiveStringsResponse"> ><part name="size" type="xsd:int"/> ></message> > > > ><message name="receiveIntsRequest"> ><part name="input" type="b1:ArrayOfint"/> ></message> > ><message name="receiveIntsResponse"> ><part name="size" type="xsd:int"/> ></message> > > > ><message name="receiveDoublesRequest"> ><part name="input" type="b1:ArrayOfdouble"/> ></message> > ><message name="receiveDoublesResponse"> ><part name="size" type="xsd:int"/> ></message> > > > > > > ><message name="sendBase64Request"> ><part name="size" type="xsd:int"/> ></message> > ><message name="sendBase64Response"> ><part name="output" type="xsd:base64Binary"/> ></message> > ><message name="sendStringsRequest"> ><part name="size" type="xsd:int"/> ></message> > ><message name="sendStringsResponse"> ><part name="output" type="b1:ArrayOfstring"/> ></message> > ><message name="sendIntsRequest"> ><part name="size" type="xsd:int"/> ></message> > ><message name="sendIntsResponse"> ><part name="output" type="b1:ArrayOfint"/> ></message> > > > ><message name="sendDoublesRequest"> ><part name="size" type="xsd:int"/> ></message> > ><message name="sendDoublesResponse"> ><part name="output" type="b1:ArrayOfdouble"/> ></message> > > > > ><portType name="Benchmark1PortType"> ><operation name="echoVoid"> ><documentation>pings the server</documentation> ><input message="tns:echoVoidRequest"/> ><output message="tns:echoVoidResponse"/> ></operation> ><operation name="echoBase64"> ><documentation>echos base64 content</documentation> ><input message="tns:echoBase64Request"/> ><output message="tns:echoBase64Response"/> ></operation> ><operation name="echoStrings"> ><documentation>echos string arrays</documentation> ><input message="tns:echoStringArrayRequest"/> ><output message="tns:echoStringArrayResponse"/> ></operation> ><operation name="echoInts"> ><documentation>echos int arrays</documentation> ><input message="tns:echoIntArrayRequest"/> ><output message="tns:echoIntArrayResponse"/> ></operation> ><operation name="echoDoubles"> ><documentation>echos double arrays</documentation> ><input message="tns:echoDoubleArrayRequest"/> ><output message="tns:echoDoubleArrayResponse"/> ></operation> > > ><operation name="receiveBase64"> ><documentation>receives base64 content</documentation> ><input message="tns:receiveBase64Request"/> ><output message="tns:receiveBase64Response"/> ></operation> ><operation name="receiveStrings"> ><documentation>receives strings</documentation> ><input message="tns:receiveStringsRequest"/> ><output message="tns:receiveStringsResponse"/> ></operation> ><operation name="receiveInts"> ><documentation>receives ints</documentation> ><input message="tns:receiveIntsRequest"/> ><output message="tns:receiveIntsResponse"/> ></operation> ><operation name="receiveDoubles"> ><documentation>receives doubles</documentation> ><input message="tns:receiveDoublesRequest"/> ><output message="tns:receiveDoublesResponse"/> ></operation> > > ><operation name="sendBase64"> ><documentation>sends base64 content</documentation> ><input message="tns:sendBase64Request"/> ><output message="tns:sendBase64Response"/> ></operation> ><operation name="sendStrings"> ><documentation>sends strings</documentation> ><input message="tns:sendStringsRequest"/> ><output message="tns:sendStringsResponse"/> ></operation> ><operation name="sendInts"> ><documentation>sends ints</documentation> ><input message="tns:sendIntsRequest"/> ><output message="tns:sendIntsResponse"/> ></operation> ><operation name="sendDoubles"> ><documentation>sends doubles</documentation> ><input message="tns:sendDoublesRequest"/> ><output message="tns:sendDoublesResponse"/> ></operation> > ></portType> > ><binding name="Benchmark1" type="tns:Benchmark1PortType"> ><SOAP:binding style="rpc" >transport="http://schemas.xmlsoap.org/soap/http"/> ><operation name="echoVoid"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="echoBase64"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="echoStrings"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="echoInts"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="echoDoubles"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> > ><operation name="receiveBase64"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="receiveStrings"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="receiveInts"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="receiveDoubles"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> > ><operation name="sendBase64"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="sendStrings"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="sendInts"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> ><operation name="sendDoubles"> ><SOAP:operation style="rpc" soapAction=""/> ><input> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></input> ><output> ><SOAP:body use="encoded" namespace="urn:Benchmark1" >encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> ></output> ></operation> > ></binding> > ><service name="Benchmark1"> ><documentation>definitions for performance benchmarking (symmetric >tests)</documentation> ><port name="Benchmark1" binding="tns:Benchmark1"> ><SOAP:address location="http://localhost:80"/> ></port> ></service> > ></definitions> > > > > -- The best way to predict the future is to invent it - Alan Kay