急!用weblogic816作server,怎样实现用webservice传递压缩的数据,还要平台和语言无关?

llaabb 2008-09-16 04:35:24
数据量比较大,如果不压缩最大可能有10几兆,但是都是文本格式的,所以压缩率会比较大
我研究了几天,看到有以下几种方法,但是现在都还没有实现,而且这样用不知道能不能做到平台和语言无关
1,java的DataHandler类,可以用这个类把压缩的数据作为soap message的attachmenet进行传输吗?如果可以的话请问怎么做呢?我现在有三个问题,我是这样实现的:(1) 用ejb做webservice,直接在ejb的方法中返回一个DataHandler,里面构造DataHander的语句如下:
DataHandler dh = new DataHandler(sendBytes, "...");
sendBytes是我压缩后返回的一个byte[],可是后面那个mimetype是什么呢?
或者这种方法不对,那么正确的用法是怎样的?
(2) 还有一个问题就是怎么写wsdl,我现在用的是built.xml,在eclipse里面用ant编译的,里面用了servicegen编译server的ear包,clientgen编译client端的jar包,那么怎样把DataHandler 的说明加到servicegen或者clientgen的命令中呢?还是编译好了之后在ear包和jar包的配置文件里面直接改?怎样改呢?
(3) 这种方法如果实现了压缩数据的传递,别的语言比如.net或者c++能调用吗?
2,Soap Message Handler。具体做法我还没实验,大致的流程可以这样,把所有要返回的数据做成一个大的String,用ejb的方法返回,在配置文件里把mimetype设置为text/plain,这样这个大String就作为soap message的attachment了,然后用一个Hander拦截之后把这个String压缩,再把压缩的byte[]作为一个stream写到attachment中,client取到attachment后还原,但是这样太麻烦了,因为那个大String可能是很多java对象组成的。

请高手们指点一下,到底有没有什么比较好的方法,不胜感激!!!
...全文
130 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
llaabb 2008-09-17
  • 打赏
  • 举报
回复
自己顶,可别沉了,大牛们来指教啊!
胡须棉花糖 2008-09-16
  • 打赏
  • 举报
回复
友情顶!

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧