难得有一片天

success.aspx?para1="要有决心"+para2="要努力"+para3="要有机会"
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

【.NET和J2EE使用Web Services的互操作性】笔记

Posted on 2007-10-24 10:11  seyon  阅读(259)  评论(0编辑  收藏  举报
最近有个项目需要做和J2EE做数据接口,特意找了这期课程
目前遇到的问题:

1.dotnet和j2ee复杂返回对象相互不支持
解决方案:
1) 用简单数据类型构造自定义类型,用每一个自定义类型对象封装数据集中的一行,将自定义类型对象的数组(Array)返回客户端;由于是用简单数据类型定义,客户端能够完全不变的还原出自定义类型的定义;
2) 用DataSet.WriteXML()方法将数据集中的数据提取成XML格式,并以字符串的形式返回给客户端,再由客户端解析XML字符串,还原出数据。由于使用WriteXML()的时候能够过滤掉冗余信息,返回的内容大大简化了。

2.安全认证
解决方案:
安全认证可以采用WINDOWS身份集成认证+WS-SECURITY(跨平台),集成身份认证只需在调用服务时包含认证信息即可,WS-SECURITY只需包含相应配置文件,具体策略均在配置文件中描述,WS-SECURITY会根据配置文件中的加密格式和签名根据需要加密header和body,区别于SSL加密方式(https传输层加密)

3.消息可靠性
解决方案:
消息可靠性可以采用message-reliable认证方式,该方式在传输过程中发送方等待接受方的成功回执,确保消息传送成功

4.大附件的传输
解决方案:

由于大附件如果简单的采用soap协议传输,在传输前会将其序列化为文本文件,这样会极大降低效率,所以采用MTOM方式,将附件包裹在header中仍然保持二进制方式,见图: