通过 Web 服务传递二进制数据,第 1 部分:概述
在本教程中,将创建一个包含 Web 服务的 EE6 Web 应用程序,该应用程序将作为无状态会话 Bean 来实现。同时还会向该 Web 应用程序添加包含四个 JPEG 文件的包。Web 服务有两种操作可供客户端访问,一是获取单个图像,二是以缩略图形式获取一组所有 4 个图像。将添加一些私有方法,用于将 JPEG 文件转换为字节数组,然后将这些字节数组转换为 Image 对象。与 Java EE5 中的情况不同,在 EE6 中,将这些私有方法直接放在 Web 服务中,因为 Web 服务还是一个 EJB。
在创建 Web 服务后,将其部署到 GlassFish server 3.0.1 服务器,版本 3.0.1 或更高版本。使用 NetBeans IDE 的内置 Web 服务测试器可查看样例 SOAP 请求和响应消息。
缺省的 JAX-WS 服务基础结构无法通知客户端需要将二进制数据解释为 JPEG 文件。因此,将生成一个 XML 架构的副本以及 WSDL 文件,然后编辑 XML 架构以告知任何客户端期望的返回元素是 image/jpeg 内容类型。还将更改服务代码以使用定制的 WSDL 和架构。
最后,将创建一个 Java 客户端应用程序,用于在相册中显示通过 Swing 组件创建的图像。
可以从 NetBeans 样例目录中下载完整版本的服务和客户端应用程序。
注意:这是本教程的 EE 6 版本。要使用本教程的 EE 5 版本,请参见 NetBeans IDE 6.8 文档归档。
本教程中的课程
- => 概述
- 创建 Web 服务
- 对 Web 服务进行编码和测试
- 修改架构文件和 WSDL 文件以传递二进制数据
- 创建 Swing 客户端
本教程所需要的软件
要学习本教程,您需要具备以下软件和资源。
注意:GlassFish 服务器可以随同 NetBeans IDE 的 Java 下载包一起安装。或者,还可以访问 GlassFish 服务器下载页。
提示:(可选)要解决疑难问题,可以下载完整的样例并查看其源代码。
执行完本教程中的操作后,将具有一个可运行的 Java Swing 应用程序,它通过 Web 服务使用 JPEG 图像,具体结果显示如下:
后续步骤:
创建 Web 服务
另请参见
有关使用本教程前的背景信息,请参见以下资源:
要发送意见和建议、获得支持以及随时了解 NetBeans IDE Java EE 开发功能的最新开发情况,请加入 邮件列表。