axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Akhil Gupta" <agu...@eircom.net>
Subject Re: HELP-ME!!!
Date Thu, 03 Jul 2003 23:07:07 GMT
Hi

I wrote a session bean that was deployed as web service and was sending the
content of file on invocation
of a method.  To do that you don't have to use a DataHandler object. To my
understanding DataHandler
is just a wrapper object which can contain another object and some more
information for that object.

I am adding the code of my session bean I wrote to transmit the file. It is
quite simple and maybe it will
solve your problem:-
public byte[] echo(String fileName)
    {
 System.err.println("In echo");
 byte[] retValue = new byte[0];
 if(fileName==null)
 {
     System.err.println("FileName is null");
 }
 else
 {
     System.err.println("Recieved \""+fileName+"\".");
     File file = new File(fileName);
     int length = (int)(file.length());
     FileInputStream fileiStream = null;
     if(file.exists())
     {
  try
  {
      fileiStream = new FileInputStream(file);
      retValue = new byte[length];
      fileiStream.read(retValue);
  }
  catch(IOException ex)
  { ex.printStackTrace(); }
  finally
  {
      try
      {
   fileiStream.close();
      }
      catch(IOException ex)
      { ex.printStackTrace();}
  }
     }
 }
 return retValue;
    }

I have a public method called echo that just reads the file and transmits as
a byte[] to the client. With this as byte[]
is a XML data type you should be able to write a C# client with the WSDL of
above method.

Akhil


----- Original Message -----
From: <talkabout@mandic.com.br>
To: <axis-user@ws.apache.org>
Sent: Wednesday, July 02, 2003 9:46 PM
Subject: HELP-ME!!!


> I´m tryng to do a Stateless Session Bean as webservice with attachament.
>
> The SessionBean have a method:
> public DataHandler getFile();
>
> My deploy is:
> <deployment xmlns="http://xml.apache.org/axis/wsdd/"
> xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
> <service name="ArquivoTeller" provider="java:EJB">
> <parameter name="allowedMethods" value="*"/>
> <parameter name="beanJndiName"
>
value="java:com/casaevideo/pi/server/informacao/arquivo/ArquivoTellerLocal"/
>
> <parameter name="homeInterfaceName"
>
value="com.casaevideo.pi.server.ejb.informacao.arquivo.ArquivoTellerLocalHom
e"/>
> <parameter name="remoteInterfaceName"
>
value="com.casaevideo.pi.server.ejb.informacao.arquivo.ArquivoTellerLocal"/>
> </service>
> </deployment>
>
> All run fine... But i WSDL the type is
> <wsdl:message name="getFileResponse">
> <wsdl:part name="getFileReturn" type="apachesoap:DataHandler"/>
> </wsdl:message>
>
>
> Why? I want to user Attachaments. What I need to do. I tried to use as it,
but when I
> try to import wsdl to C# this type is not imported.
>
> All other method run fine... The webservice without it is ok.
>
>
> Please! Help-me!
>
>
>


Mime
View raw message