axis下载附件代码

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

说明:

一、因为工程不是使用axis.war搭建,是独自搭建的工程,具体的搭建方式查看《创建个人webservice.docx》,在本人的百度文库中能找到,

二、tomcat使用的是5.5的版本,myecplise用的是7.0,jdk用的是1.6的版本,因为用1.5的版本会报错:ng.NoClassDefFoundError: com/sun/mail/util/LineInputStream;

服务端:

import javax.activation.DataHandler;

import javax.activation.FileDataSource;

public class FileSendServer {

public String filename="d:/upload/server.txt" ;

public DataHandler getFile(){

System.out.println("ssssssssssssssssssssss");

DataHandler dh = new DataHandler(new FileDataSource(filename));

System.out.println("aaaaaaaaaaaaaaaaaaaaaa");

return dh;

}

}

Server-config.wsdd:

value="webservice.axis.wsddfiletranspot.FileSendServer"/>

deserializer="org.apache.axis.encoding.ser.JAFDataHandlerDeserial izerFactory"

type="java:javax.activation.DataHandler"

qname="ns1:DataHandler"

serializer="org.apache.axis.encoding.ser.JAFDataHandlerSerializerFact ory"

encodingStyle="/soap/encoding/"

xmlns:ns1="DataHandler"/>

客户端:

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.rmi.RemoteException;

import javax.activation.DataHandler;

import space.QName;

import javax.xml.rpc.ParameterMode;

import javax.xml.rpc.ServiceException;

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

import org.apache.axis.encoding.XMLType;

import org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory;

import org.apache.axis.encoding.ser.JAFDataHandlerSerializerFactory;

public class FileReceiveClient {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

String url = "http://127.0.0.1:8090/myAxis/services/FileSendServer";

Service service = new Service();

Call call;

DataHandler handler;

InputStream input = null;

FileOutputStream fos = null;

String filepath = "d:/upload/";

String filename = filepath + "tests.txt";

File file = new File(filename);

try {

call = (Call) service.createCall();

QName qn = new QName("ns1:DataHandler", "DataHandler");

call.setTargetEndpointAddress(url);

call.setOperationName(new QName("FileSendServer", "getFile"));

call.registerTypeMapping(DataHandler.class, qn,

JAFDataHandlerSerializerFactory.class,

JAFDataHandlerDeserializerFactory.class);

// call.addParameter("source", XMLType.XSD_STRING ,ParameterMode.IN); //设置服务调用方法的传入参数类型

call.setReturnType(qn,DataHandler.class);//需要返回的QName以及返回的类型是DataHandler.class

相关文档
最新文档