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 Bochnak Filip <Fi...@edmb.debis.com> on 2004/08/06 17:09:18 UTC

simple method which uses Datahandler as return value HELP

Hi all 

I try to implement a client in java that can receive attachments.
I thought I could it do by creating an interface -> wsdl file -> java
classes.
My problem is that I can´t get any classes by using the wsdl2java tool.
I get always the following exception. What I´m doing wrong here.
I use the latest version of axis 1-2Beta2.

any help would be appreciated
thanks

my call:
java org.apache.axis.wsdl.WSDL2Java -d Application -s -t -S true
XmlAttach.wsdl

ERROR:
log4j:WARN No appenders could be found for logger
(org.apache.axis.i18n.ProjectR
esourceBundle).
log4j:WARN Please initialize the log4j system properly.
java.lang.NoSuchMethodError:
org.apache.axis.wsdl.symbolTable.SchemaUtils.getArr
ayComponentQName(Lorg/w3c/dom/Node;Ljavax/xml/rpc/holders/IntHolder;Lorg/apa
che/
axis/wsdl/symbolTable/SymbolTable;)Ljavax/xml/namespace/QName;
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.createTypeFromDef(Symbol
Table.java:1148)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.addTypes(SymbolTable.jav
a:954)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.addTypes(SymbolTable.jav
a:1078)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.addTypes(SymbolTable.jav
a:1078)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.addTypes(SymbolTable.jav
a:1078)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.addTypes(SymbolTable.jav
a:1078)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.populateTypes(SymbolTabl
e.java:894)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.jav
a:692)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.add(SymbolTable.java:531
)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.jav
a:506)
        at
org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.jav
a:483)
        at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java:356)
        at java.lang.Thread.run(Thread.java:536)






public interface XmlAttach extends java.rmi.Remote {
	 public javax.activation.DataHandler[] sendgetFiles(java.lang.String
filename) 			throws java.rmi.RemoteException;	 
}

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="service:XmlAttachService"
xmlns:impl="service:XmlAttachService" xmlns:intf="service:XmlAttachService"
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 Jul 12, 2004 (07:08:50 EDT)-->
 <wsdl:types>
  <schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="service:XmlAttachService">
   <import namespace="http://xml.apache.org/xml-soap"/>
   <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
   <complexType name="ArrayOf_apachesoap_DataHandler">
    <complexContent>
     <restriction base="soapenc:Array">
      <attribute ref="soapenc:arrayType"
wsdl:arrayType="apachesoap:DataHandler[]"/>
     </restriction>
    </complexContent>
   </complexType>
  </schema>
 </wsdl:types>

   <wsdl:message name="sendgetFilesRequest">

      <wsdl:part name="in0" type="xsd:string"/>

   </wsdl:message>

   <wsdl:message name="sendgetFilesResponse">

      <wsdl:part name="sendgetFilesReturn"
type="impl:ArrayOf_apachesoap_DataHandler"/>

   </wsdl:message>

   <wsdl:portType name="XmlAttach">

      <wsdl:operation name="sendgetFiles" parameterOrder="in0">

         <wsdl:input name="sendgetFilesRequest"
message="impl:sendgetFilesRequest"/>

         <wsdl:output name="sendgetFilesResponse"
message="impl:sendgetFilesResponse"/>

      </wsdl:operation>

   </wsdl:portType>

   <wsdl:binding name="XmlAttach_ServiceSoapBinding" type="impl:XmlAttach">

      <wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>

      <wsdl:operation name="sendgetFiles">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="sendgetFilesRequest">

            <wsdlsoap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="service:XmlAttachService"/>

         </wsdl:input>

         <wsdl:output name="sendgetFilesResponse">

            <wsdlsoap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="service:XmlAttachService"/>

         </wsdl:output>

      </wsdl:operation>

   </wsdl:binding>

   <wsdl:service name="XmlAttachService">

      <wsdl:port name="XmlAttach_Service"
binding="impl:XmlAttach_ServiceSoapBinding">

         <wsdlsoap:address
location="http://localhost:9090/axis/services/XmlAttach_Service"/>

      </wsdl:port>

   </wsdl:service>

</wsdl:definitions>