| By Sonny Hastomo | Article Rating: |
|
| February 23, 2005 12:00 AM EST | Reads: |
17,028 |
Interoperability is the key to using Web services architecture since many applications can collaborate to maximize business functions. With the capability of creating an application on a different architecture, including the application architecture, hardware infrastructure, and even the operating system, Web service architecture is the bridge to optimizing the IT Department.
In this article we will create a simple Web service using an EJB application and we will create a Flash MX project as a Web service client interface. We will use Websphere SDK v5.0.1 for the server-side scenario and Macromedia Flash MX 2004 for the client side. The complete source code for this article can be downloaded from www.sys-con.com/websphere/sourcec.cfm.
Prerequisites
You will need the Windows system that installed Macromedia Flash MX 2004, and you will also need an operating system (Windows or Linux) on which you have installed WebSphere SDK Web Service 5.0.1.
Server-Side Scenario
Creating a Simple Web Service from an EJB Application
First, create the J2EE Enterprise Application Project - for this article, we named it MATHServices.
Next, open J2EE Perspective from Window > Open perspective > other > J2EE. Then open J2EE Hierarchy and expand the EJB Modules; you will see the MATHServicesEJB Project as shown in Figure 1.
Create the Session Enterprise Bean at MATHServiceEJB Project (MathOperation)
Create the session enterprise bean called MathOperation and enter the following properties (see Figure 2):
- Bean name: MathOperation
- Source folder: ejbModule
- Default package: com.math.service
public String ApplicationInfo(String strUserName) { return "Hello " + strUserName + " Welcome to Math Operation Service"; } public Integer Multiply(Integer a, Integer b) { return new Integer(a.intValue() * b.intValue()); } public Integer Add(Integer a,Integer b) { return new Integer(a.intValue() + b.intValue()); } public Integer Substract(Integer a, Integer b) { return new Integer(a.intValue() - b.intValue()); }
Now you are ready to move to the outline perspective and promote ApplicationInfo, Multiply, Add, and Subtract method to the remote interface (see Figure 3).
Finally deploy the code for the MathOperationEJB (see Figure 4).
Generate a Web Services WSDL
Expand MathOperationEJB and right-click MathOperation session bean and start Web Services > Generate WSDL File (see Figure 5).
Enter the following properties from the Web Service Deployment Settings screen:
- Web service deployment environment selection: Use Default
- Web project: MATHServicesWeb
On the next screen we will configure the JavaBean as a Web service (see Figure 7). Use the default parameter from Websphere (configure the JavaBean as a Web service). The following parameter is:
- Web Service Uri = http://tempuri .org/com.math.service.MathOperation - ISD File = Web Content/ WEB-INF/isd/java/com/math/service/MathOperation.isd - WSDL Service document name = Web Content/ wsdl/com/math/service/MathOperationService.wsdl - WSDL binding document name = Web Content/ wsdl/com/math/service/MathOperationBinding.wsdl - WSDL EJB binding document name = Web Content/ wsdl/com/math/service/MathOperationEJB.wsdl - WSDL interface document name = Web Content/ wsdl/com/math/service/MathOperation.wsdl - WSDL schema folder name = Web Content/ wsdl
The Web service definition file will later create a Web Content folder in your MATHServicesWeb Project. Click next to proceed to the Web Service Deployment Setting.
Specify the methods to deploy at the Web Service JavaBean Methods screen. Edit the encoding style for each method, if required. At this screen you can configure which method/function you want to publish as Web services. For our purposes, we will publish all the JavaBean methods that we have created. For both input and output encoding, choose SOAP encoding.
Click Finish to create the Web Service Deployment Description/WSDL file. Now run the Server Application: expand Server Configurations, right-click WebSphere v5.0 Server Configuration, and choose Run on Server.
Client-Side Scenario
Creating a Flash MX Project as a WebSphere Web Service Client Interface
Create the Flash MX Project - here we named it MathClientPJX.
On the General tab of the New Document box, choose Flash Document to create a document file to work with the input/output interfaces.
Add a label component on the canvas to design the interface for the Flash MX document. Give it the instance name: lblAppNotified [you will use this later to display the invoked method ApplicationInfo(String arg)].
Figure 8 shows the result of creating the Flash MX document interface; you will need to create three buttons, three textinputs, and one label component, and you must define every component with the instance name shown in Figure 8. Then save the Flash document (for our purposes, name it MathClient) and add the file to existing Flash project.
Now you need to create the MathAction class file to add the math operation behavior:
- Create new ActionScript file from File > New > ActionScript File.
- Save the ActionScript file as MathAction.as (remember, you need to use the same name as the class definition).
- Add the ActionScript File to Flash MX Project (see Figure 9).
- Enter the code shown in Listing 1 (Listings 1-4 can be downloaded from www.sys-con/websphere/sourcec.cfm).
- Open the action toolbar, click Frame 1, and enter the code shown in Listing 2.
- Click the Object button btnMultiply and enter the code shown in Listing 3.
btnMultiply will invoke the MathObject wrapper and call the Multiply method from Web service.
- Repeat this step for button btn- Add and btnSubtract, and enter the code shown in Listing 4.
Run Websphere v5.0 Test Environment. Click on menu File > Publish Preview > Flash to publish the Flash MX Application (see Figure 10). (For more information, visit www.macromedia.com.)
Summary
In this article, we built a Flash MX client for a simple math operation Web service that accepts two integer parameters and calculates the parameter to pass the result to the client. We also examined how to use an existing Web service, running on the application server provided within the WSDK, from within Macromedia Flash MX 2004 Professional. We then developed and tested a Flash MX 2004 client invoking the Web service and displaying the results in the Flash GUI application.
Published February 23, 2005 Reads 17,028
Copyright © 2005 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Sonny Hastomo
Sonny Hastomo is an IT architect at Sun Microsystems, Indonesia, for the telecommunication industry division. His currently is focusing on providing solution design, sizing, implementation, consulting services, and quality support to customers in their evaluation of their IT challenges.
- Oracle To Keynote Cloud Computing Expo
- Is the PR Business Extinct? Yes
- The Difference Between Web Hosting and Cloud Computing
- Government IT & Cloud Computing: Themes for Discussion
- GovIT Expo Highlights Cloud Computing
- The End of IT 1.0 As We Know It Has Begun
- Cloud Computing Best Practices
- Gang of Four Creates Cloud BI Stack
- The Case for Single-Purpose Services
- VIP Invitation For the GovIT Panel October 6, Washington DC
- Oracle To Keynote Cloud Computing Expo
- How to Diagnose Java Resource Starvation
- Is the PR Business Extinct? Yes
- Anatomy of a Java Finalizer
- IBM & Cloud Computing: Exclusive Q&A
- IBM & Cloud Computing: How "SOA in the Cloud" Can Produce Real Change
- SOA & Cloud Bootcamp: Comparing Cloud Computing Providers
- WebSphere Guru to Keynote at SOA World
- IBM Researcher Solves In-Cloud Data Encryption Puzzle
- The Difference Between Web Hosting and Cloud Computing
- Java vs C++ "Shootout" Revisited
- Where Are RIA Technologies Headed in 2008?
- WebSphere Application Server Java Dumps
- Breaking News: New Internal IBM Report Says "Another Flawed Study"
- Last Exclusive JDJ Interview With "IBM's" John A. Swainson, Now CA's Newly Appointed CEO
- How To Deploy Scalable WebSphere Applications Using "Maven" Build Tool
- Your Guide to Portal Clustering in WebSphere Portal Server 5.1
- Developing Java and Web Services Applications on Rational Application Developer V6
- Automated Deployment of Enterprise Application Updates
- Putting IBM's WAS On Unix - WebSphere Application Server






























