因公司新项目决定使用webservice与其它项目做交互,于是开始了webservice之旅。
初入webservice的时候第一个接触的工具叫axis2,网上有着大量的简单案例。功能很强大,代码自动生成,能传递各种类型的数据。但是考虑到整合入公司项目的问题,决定去找一个不是自动生成手写的webservice。于是看到了关于JWS相关的文章,但是在使用JWS(java jdk自带)的时候难以实现对复杂参数的传递。于是想将文件读入后将其byte数组转换成String。以String的方式来传递文件,但是后来在测试的时候发现new String(byte[])的方式转换成的zip文件的String与webservice生成的xml相冲突。于是想到了将文件转换成base64字符串试试,于是有了如下代码:
server端:
package com.forms.tool.webservice;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import javax.jws.WebService;
import Decoder.BASE64Decoder;
import Decoder.BASE64Encoder;
@WebService
public class WebServiceImp
{
public String sendFile(String name,String file)