webService客户端参数为DataHandler类型时候的参数组装

一般我们webservice的方法参数或返回值为byte类型的时候,在生成的客户端代码里的参数却是DataHandler,为此我纠结了好久。网上查的全是什么图片上传,其实我就想传递一个简单的字符串的字节码,跟什么文件上传屁兜不打岔。最后我弄出来了。上代码,以便以后使用。

package com.imp;


import java.io.ByteArrayInputStream;

import java.io.InputStream;

import java.io.OutputStream;


import javax.activation.DataHandler;

import javax.activation.DataSource;


public class TestMain {


public static void main(String[] args) throws Exception {

// TODO Auto-generated method stub

HelloDaoImpStub stub =new HelloDaoImpStub();

Say say =new Say();

String s="23323232";

byte[] b= s.getBytes();

say.setB(createDataHandler(b));  

SayResponse response = stub.say(say);

DataHandler result = response.get_return();

System.out.println(result.getName());

}

public static DataHandler createDataHandler(final byte[] b) {

return new DataHandler(new DataSource() {

           public InputStream getInputStream() {  

               return new ByteArrayInputStream(b);  

           }  

           public OutputStream getOutputStream() {  

               return null;  

           }  

           public String getContentType() {  

               return "";  

           }  

           public String getName() {  

               return "";  

           }

});

}


}


本文出自 “重新来学JAVA” 博客,请务必保留此出处http://3131854.blog.51cto.com/3121854/1389300

webService客户端参数为DataHandler类型时候的参数组装,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。