| // |
| // 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 Service Application Passing Binary Data, pt 1: Overview |
| :jbake-type: tutorial |
| :jbake-tags: tutorials |
| :jbake-status: published |
| :icons: font |
| :syntax: true |
| :source-highlighter: pygments |
| :toc: left |
| :toc-title: |
| :description: Web Service Application Passing Binary Data, pt 1: Overview - Apache NetBeans |
| :keywords: Apache NetBeans, Tutorials, Web Service Application Passing Binary Data, pt 1: Overview |
| |
| In this tutorial, you create a Java EE web application that contains a web service, which you implement as a stateless session bean. You also add a package with four JPEG files to the web application. The web service has two operations that are accessible by clients, for getting individual images and for getting a set of all 4 images as thumbnails. You add private methods that convert the JPEG files to byte arrays and convert those byte arrays to ``Image`` objects. In Java EE you put these private methods directly in the web service, because the web service is also an EJB. |
| |
| After you create the web service, you deploy it to an instance of the GlassFish server 3.1 or later. You use the NetBeans IDE's built-in web service tester to view sample SOAP request and response messages. |
| |
| The default JAX-WS service infrastructure cannot inform clients that the binary data needs to be interpreted as JPEG files. Therefore, you generate a copy of the XML Schema and WSDL files and edit the XML schema to tell any client to expect the ``image/jpeg`` content type for the return element. You also alter the service code to use the customized WSDL and Schema. |
| |
| Finally, you create a Java client application that displays the images in an album created from Swing components. |
| |
| You can download a complete version of service and client applications from the link:https://netbeans.org/projects/samples/downloads/directory/Samples%252FWeb%2520Services%252FWeb%2520Service%2520Passing%2520Binary%2520Data%2520--%2520EE6[+NetBeans Samples Catalog+]. |
| |
| *Lessons In This Tutorial* |
| |
| image::images/netbeans-stamp-80-74-73.png[title="Content on this page applies to the NetBeans IDE 7.2, 7.3, 7.4 and 8.0"] |
| |
| 1. => Overview |
| 2. link:./flower_ws.html[+ Creating the Web Service+] |
| 3. link:./flower-code-ws.html[+ Coding and Testing the Web Service+] |
| 4. link:./flower_wsdl_schema.html[+ Modifying the Schema and WSDL Files to Pass Binary Data+] |
| 5. link:./flower_swing.html[+ Creating the Swing Client+] |
| |
| |
| == Software Needed for the Tutorial |
| |
| *To follow this tutorial, you need the following software and resources.* |
| |
| |=== |
| |Software or Resource |Version Required |
| |
| |link:https://netbeans.org/downloads/index.html[+NetBeans IDE+] |Java EE download bundle |
| |
| |link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Java Development Kit (JDK)+] |version 7 or 8 |
| |
| |Java EE-compliant web or application server |link:http://glassfish.java.net/[+GlassFish Server Open Source Edition 3.1 or later+] |
| |
| |
| |Pictures used in this tutorial |link:images/rose.jpg[+rose.jpg+] |
| link:images/sunflower.jpg[+sunflower.jpg+] |
| link:images/aster.jpg[+aster.jpg+] |
| link:images/honeysuckle.jpg[+honeysuckle.jpg+] |
| |=== |
| |
| *Note: *the GlassFish server can be installed with the Java EE download bundle of NetBeans IDE. Alternatively, you can visit the link:https://glassfish.java.net/download.html[+the GlassFish server downloads page+]. |
| |
| *Tip: *Optionally, for troubleshooting purposes, you can link:https://netbeans.org/files/documents/4/2343/SoapWithAttachments.zip[+download the completed sample+] and inspect the sources. |
| |
| At the end of this tutorial, you will have a running Java Swing application that consumes JPEG images via a web service, with the result displayed below. |
| |
| image::images/running-client.png[title="JFrame showing all flower images passed from web service"] |
| |
| |
| == Next step: |
| |
| link:./flower_ws.html[+ Creating the Web Service+] |
| |
| link:/about/contact_form.html?to=3&subject=Feedback:%20Flower%20Overview%20EE6[+Send Feedback on This Tutorial+] |
| |
| |
| |
| == See Also |
| |
| For background information prior to using this tutorial, see the following resources: |
| |
| * link:./jax-ws.html[+Getting Started with JAX-WS Web Services+] |
| * link:../../docs/websvc/client.html[+Developing Web Service Clients+] |
| * link:../javaee/javaee-gettingstarted.html[+Getting Started with Java EE Applications+] |
| * link:./wsit.html[+Advanced Web Service Interoperability+] |
| |
| To send comments and suggestions, get support, and keep informed about the latest developments on the NetBeans IDE Java EE development features, link:../../../community/lists/top.html[+join the nbj2ee@netbeans.org mailing list+]. |
| |