| // |
| // Licensed to the Apache Software Foundation (ASF) under one |
| // or more contributor license agreements. See the NOTICE file |
| // distributed with this work for additional information |
| // regarding copyright ownership. The ASF licenses this file |
| // to you under the Apache License, Version 2.0 (the |
| // "License"); you may not use this file except in compliance |
| // with the License. You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, |
| // software distributed under the License is distributed on an |
| // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| // KIND, either express or implied. See the License for the |
| // specific language governing permissions and limitations |
| // under the License. |
| // |
| |
| = 通过 Web 服务传递二进制数据,第 1 部分:概述 |
| :jbake-type: tutorial |
| :jbake-tags: tutorials |
| :jbake-status: published |
| :icons: font |
| :syntax: true |
| :source-highlighter: pygments |
| :toc: left |
| :toc-title: |
| :description: 通过 Web 服务传递二进制数据,第 1 部分:概述 - Apache NetBeans |
| :keywords: Apache NetBeans, Tutorials, 通过 Web 服务传递二进制数据,第 1 部分:概述 |
| |
| 在本教程中,将创建一个包含 Web 服务的 Java EE Web 应用程序,该应用程序将作为无状态会话 Bean 来实现。同时还会向该 Web 应用程序添加包含四个 JPEG 文件的包。Web 服务有两种操作可供客户端访问,一是获取单个图像,二是以缩略图形式获取一组所有 4 个图像。将添加一些私有方法,用于将 JPEG 文件转换为字节数组,然后将这些字节数组转换为 ``Image`` 对象。在 Java EE 中,将这些私有方法直接放在 Web 服务中,因为 Web 服务还是一个 EJB。 |
| |
| 在创建 Web 服务后,将其部署到 GlassFish Server 3.1 或更高版本的实例中。使用 NetBeans IDE 的内置 Web 服务测试器可查看样例 SOAP 请求和响应消息。 |
| |
| 默认的 JAX-WS 服务基础结构无法通知客户端需要将二进制数据解释为 JPEG 文件。因此,将生成一个 XML 方案的副本以及 WSDL 文件,然后编辑 XML 方案以告知任何客户端期望的返回元素是 ``image/jpeg`` 内容类型。还将更改服务代码以使用定制的 WSDL 和方案。 |
| |
| 最后,将创建一个 Java 客户端应用程序,用于在相册中显示通过 Swing 组件创建的图像。 |
| |
| |
| *本教程中的课程* |
| |
| image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"] |
| |
| 1. => 概述 |
| 2. link:./flower_ws.html[+创建 Web 服务+] |
| 3. link:./flower-code-ws.html[+对 Web 服务进行编码和测试+] |
| 4. link:./flower_wsdl_schema.html[+修改方案文件和 WSDL 文件以传递二进制数据+] |
| 5. link:./flower_swing.html[+创建 Swing 客户端+] |
| |
| |
| === 本教程所需要的软件 |
| |
| *要学习本教程,您需要具备以下软件和资源。* |
| |
| |=== |
| |软件或资源 |要求的版本 |
| |
| |link:https://netbeans.org/downloads/index.html[+NetBeans IDE+] |Java EE 下载包 |
| |
| |link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Java 开发工具包 (JDK)+] |版本 7 或 8 |
| |
| |符合 Java EE 规范的 Web 服务器或应用服务器 |link:http://glassfish.java.net/[+GlassFish Server Open Source Edition 3.1 或更高版本+] |
| |
| |
| |本教程中使用的图片 |link:images/rose.jpg[+rose.jpg+] |
| link:images/sunflower.jpg[+sunflower.jpg+] |
| link:images/aster.jpg[+aster.jpg+] |
| link:images/honeysuckle.jpg[+honeysuckle.jpg+] |
| |=== |
| |
| *注:*GlassFish Server 可以随同 NetBeans IDE 的 Java EE 下载包一起安装。或者,还可以访问 link:https://glassfish.java.net/download.html[+GlassFish Server 下载页+]。 |
| |
| *提示:*(可选)要解决疑难问题,可以link:https://netbeans.org/files/documents/4/2343/SoapWithAttachments.zip[+下载完整的样例+]并查看其源代码。 |
| |
| 执行完本教程中的操作后,将具有一个可运行的 Java Swing 应用程序,它通过 Web 服务使用 JPEG 图像,具体结果显示如下。 |
| |
| image::images/running-client.png[title="显示从 Web 服务传递的所有鲜花图像的 JFrame"] |
| |
| |
| == 后续步骤: |
| |
| link:./flower_ws.html[+创建 Web 服务+] |
| |
| link:/about/contact_form.html?to=3&subject=Feedback:%20Flower%20Overview%20EE6[+发送有关此教程的反馈意见+] |
| |
| |
| |
| == 另请参见 |
| |
| 有关使用本教程前的背景信息,请参见以下资源: |
| |
| * link:./jax-ws.html[+JAX-WS Web 服务入门指南+] |
| * link:../../docs/websvc/client.html[+开发 Web 服务客户端+] |
| * link:../javaee/javaee-gettingstarted.html[+Java EE 应用程序入门指南+] |
| * link:./wsit.html[+Advanced Web Service Interoperability+](高级 Web 服务互操作性) |
| |
| 要发送意见和建议、获得支持以及随时了解 NetBeans IDE Java EE 开发功能的最新开发情况,请link:../../../community/lists/top.html[+加入 nbj2ee@netbeans.org 邮件列表+]。 |
| |