hello ,
after a long time ,
The WSDL generated for the below program does not
show a base64 encoding .... which I think shoul dbe
there
complexType name="ArrayOfBase64">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType"
wsdl:arrayType="impl:Base64[]"/>
Here the I thought an array of int mapped to base 64
data here , but seemingly it does not . can anyone
please help me , I need to pass multiple files of
base64, with their names. I cant get it done.
mayur
___________________________________________
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="urn:EchoBase64"
xmlns:impl="urn:EchoBase64"
xmlns:intf="urn:EchoBase64"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<!--WSDL created by Apache Axis version: 1.2beta
Built on Mar 31, 2004 (12:47:03 EST)-->
<wsdl:types>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:EchoBase64">
<import
namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<complexType name="ArrayOf_xsd_int">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType"
wsdl:arrayType="xsd:int[]"/>
</restriction>
</complexContent>
</complexType>
<complexType name="Base64">
<sequence>
<element name="data" nillable="true"
type="impl:ArrayOf_xsd_int"/>
<element name="name" nillable="true"
type="xsd:string"/>
</sequence>
</complexType>
<complexType name="ArrayOfBase64">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType"
wsdl:arrayType="impl:Base64[]"/>
</restriction>
</complexContent>
</complexType>
</schema>
</wsdl:types>
<wsdl:message name="echoResponse">
</wsdl:message>
<wsdl:message name="echoRequest">
<wsdl:part name="in0"
type="impl:ArrayOfBase64"/>
</wsdl:message>
<wsdl:portType name="EchoBase64Interface">
<wsdl:operation name="echo"
parameterOrder="in0">
<wsdl:input name="echoRequest"
message="impl:echoRequest"/>
<wsdl:output name="echoResponse"
message="impl:echoResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="EchoBase64SoapBinding"
type="impl:EchoBase64Interface">
<wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="echo">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="echoRequest">
<wsdlsoap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:EchoBase64"/>
</wsdl:input>
<wsdl:output name="echoResponse">
<wsdlsoap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:EchoBase64"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="EchoBase64InterfaceService">
<wsdl:port name="EchoBase64"
binding="impl:EchoBase64SoapBinding">
<wsdlsoap:address
location="http://localhost:8080/axis/services/EchoBase64"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
--- Bill Werth <[EMAIL PROTECTED]> wrote:
> I'm fairly new to this, but if your object that
> contains:
> 1. Name
> 2. base64Encoded data.
>
> can be made into a bean that looks something like:
> package Test;
>
> public class Base64
> {
> String name;
> int[] data;
>
> public Base64()
> {
> }
>
> public String getName()
> {
> return name;
> }
>
> public int[] getData()
> {
> return data;
> }
>
> public void setName(String name)
> {
> this.name = name;
> }
>
> public void setData(int[] data)
> {
> this.data = data;
> }
> }
>
> Then you could use the following for your interface:
> package Test;
>
> public interface EchoBase64
> {
> public void echo(Base64[] data);
> }
>
> I tested this out and using the bean and the
> interface above, you can then
> generate your WSDL and then create the code for the
> Web service with
> WSDL2Java.
>
> You will be able to send one or more of the Base64
> objects to the Web
> service where it can do whatever it wants with them.
>
> I'd be interested to know if this meets your
> requirements and if someone
> knows of a better way to do it.
>
> -----Original Message-----
> From: Mayur Shetye [mailto:[EMAIL PROTECTED]
> Sent: Thursday, July 15, 2004 12:41 PM
> To: [EMAIL PROTECTED]
> Subject: RE: passing structure using WSDL
>
>
> Thank you for helping me.
>
> I am working on performace analysis of DIME and MIME
> Vs Base64. I need to study the relative performances
> of DIME MIME Base64 and raw RMI.
>
> I have the need to send multiple attachments just
> like
> the examples provided by axis (pkg attachments)
> which
> 'echos' them in respective formats. I have come
> across
> some very interesting readings.
>
> I am planning to rewrite services for DIME and MIME
> ,
> basically sending and echoing array of datahandlers.
> I
> would like to do it without touching the call object
> myself. But I dont know how the Datahandler or
> Datahandler[] shall convert in WSDL.
>
> Anyway the point is I do want to send multiple
> attachments in a single call. please let me know if
> you think that there could be a better structure for
> this specific purpose.
>
> Mayur
>
> --- Bill Werth <[EMAIL PROTECTED]> wrote:
> > Why not just create an interface for the Web
> service
> > something like:
> >
> > public interface EchoBase64 {
> > public void echo(String name, int[] data);
> > }
> >
> > Run Java2WSDL to create your WSDL based on this
> > interface. If you want to
> > echo more than one, just make multiple calls. You
> > don't really need a
> > structure for something this simple.
> >
> > -----Original Message-----
> > From: Mayur Shetye [mailto:[EMAIL PROTECTED]
> > Sent: Thursday, July 15, 2004 11:59 AM
> > To: [EMAIL PROTECTED]
> > Subject: RE: passing structure using WSDL
> >
> >
> > hi
> >
> > Consider a structure as an object containing 2
> > different data types. I want to send and get
> (echo)
> > an
> > array (1 or more) of these objects .
> >
> > The 2 elements in the object are
> > 1. Name
> > 2. base64Encoded data.
> >
> > >>>>> 'Actually' I want to write a EchoBase64
> > program
> > which shall echo my base64 encoded attachments
> from
> > the axis server. I think that this is the way to
> go
> > about doing it, I very well might be wrong.
> >
> > Let me know folks.
> >
> > Mayur
> >
> > --- Vikas Phonsa <[EMAIL PROTECTED]> wrote:
> > > Not quite sure what exactly you are trying to
> do.
> > > But if you can code ur
> > > functionality in java then Java2Wsdl should be
> > able
> > > to generate the wsdl for
> > > you.
> > >
> > > -----Original Message-----
> > > From: Mayur Shetye [mailto:[EMAIL PROTECTED]
>
> > > Sent: Thursday, July 15, 2004 11:40 AM
> > > To: [EMAIL PROTECTED]
> > > Subject: passing structure using WSDL
> > >
> > > hello
> > >
> > > I am writing an implementation of a web
> service
> > > where I am passing 'complex type' to the server.
>
> > >
> > > This complex type incudes following elements
> > >
> > > 1. name of the data
> > > 2. base64 encoded data (this shall be an int
> > []array
> > > type in java)
> > >
> > > Now, My problem is that I might have to send in
> > > multiple structures this way. Can you tell me
> how
> > to
> > > write a WSDL for this purpose.
> > >
> > > I am currently not very clear about how this can
> > be
> > > done, any inputs on that shall be greatly
> > > appreciated.
> > >
> > > regards
> > > Mayur Shetye
> > >
> > >
> > >
> > > __________________________________
> > > Do you Yahoo!?
> > > Yahoo! Mail is new and improved - Check it out!
> > > http://promotions.yahoo.com/new_mail
> > >
> >
> >
> >
> >
> > __________________________________
> > Do you Yahoo!?
> > Yahoo! Mail Address AutoComplete - You start. We
> > finish.
>
=== message truncated ===
__________________________________
Do you Yahoo!?
Yahoo! Mail is new and improved - Check it out!
http://promotions.yahoo.com/new_mail