Java rmi client implement and web service client-side steps, JAVA Programming

Assignment Help:

What is the name of the services you have chosen? What do they do? What is the name of the publisher? Provide details if you are developing your own service(s).

There are various ways to develop these services. Should you wish to develop SOAP-based services, some easy steps to follow to write client-side code are provided in this document.

Question 1. How does your Web services development approach compare with the steps required to implement a Java RMI client? How does it differ from the example of a Web Services discussed in lectures and developed using JAX-RPC and JAX-WS?

At this stage, you are supposed to have both services running and invoked through appropriate interfaces.

4. The ?nal step is to implement a class that combines the two Web services and provides an appropriate userinterface for the collection of input data and presentation of results. There are two options here:

• Make the application console-based, with input data coming from the command line if required and results being written to a ?le as a static page of HTML.

• Implement the application as a servlet or using JSP, as appropriate. The HTML will be generated dynamically in this case. If you are following this option, you will need to package your application in the conventional way, as a WAR ?le.

Answer the following questions:

Question 2. Consider the respective platforms upon which the service providers and service consumer are implemented. What does this tell you about how Web Services differ from more conventional distributed object technology?

Question 3. What are the factors affecting the performance of your application? In what ways,and at what cost, could performance be improved? (You may assume that you have the freedom to reimplement the service providers as well as your service consumer, using a different hardware and
software platform if necessary.

Web service client-side development steps


The following explains the steps required to develop a SOAP-based client should you choose an existing service.

1. Before starting on any coding, if you have not set up Axis during the Lab. session on Web Services then make sure your environment is correctly setup.

2. Before implementing a class to encapsulate a chosen Web service, you should generate client-side stubs for the service from its WSDL document. This is done by running Axis’ WSDL2Java tool, via the shell script wsdl2java already provided for you. For example, if you have saved the WSDL to a ?le service.wsdl, then the following is required:

./wsdl2java service.wsdl


After running the script, you will see that a hierarchy of subdirectories has been created, re?ecting the package within which the stubs and helper classes reside (depending on the service you use you may need to move into a subdirectory before you ?nd the .java ?les). Have a look at these ?les and make that sure
you understand their purpose. (The documentation provided with Axis will prove useful here, particularly the section of the User Guide on WSDL2Java.)

3. Move back up into the top directory and compile the stubs with a command like

javac /path/to/java/files/
*
.java
Then package the stub classes as a single JAR ?le with a command something like this:
jar cvf stubs.jar /path/to/java/files/
*
.class

You will need to submit this JAR ?le with your source code. You should also make sure that it is in your CLASSPATH when you try to compile or run the consumer of your chosen Web Service.

4. To implement the consumer of a chosen Web Service, note the following points about implementation:

• There are three steps involved in making a method call to a service exposed via statically-generated
stubs:

(a) Create an instance of the ‘Locator’ class
(b) Get an instance of the ‘Soap’ class by calling appropriate method (e.g., get...Soap)
(c) Invoke the desired method of the ‘Soap’ object

For further details, see the Axis User Guide—especially the section covering WSDL2Java. The main method of this class can contain code to test the service.

5. The ?nal step is to implement a class that combines the two Web services and provides an appropriate user interface for the collection of input data and presentation of results.

Submission


• Use the document cwk3-answers-form available in the courseworks folder to report your written answers to the questions. Submit the document:

1. through the link cwk3 - Answers submission. Word and pdf ?le formats are acceptable (pdf is encouraged).

2. on paper in the normal way, via the CSO postbox. Remember to attach a completed coursework header
sheet.

• To submit your code for the exercise, create a Zip or tar archive of the ?les which make up your system and submit the ?le through the link cwk3 - Code submission. Remember to include a descriptive README ?le as well as any additional material.Be sure to include all ?les needed for your city server system to work as part of your submission. You may include .class ?les if you wish, but this is not necessary; we will be testing whether your code compiles when we mark it.

Be sure to include in your submission all the ?les that you have generated for your client. If you have organised your ?les into a directory hierarchy, then please package this as a single Zip or tar archive and submit that ?le through the link cwk3 - Code submission. If your application is packaged as a WAR ?le, please include this ?le in your submission.


Related Discussions:- Java rmi client implement and web service client-side steps

Please help, Write a program to find the area under the curve y = f(x) betw...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

Forward action and include action, What is the difference among ForwardActi...

What is the difference among ForwardAction and IncludeAction? Ans) The difference is that you require to use the IncludeAction only if the action is going to be contained by ano

program to brute force search, Introduction As an alternative to the B...

Introduction As an alternative to the Binary Search algorithm, also it could be done by the brute-force method given below. public static int rank(int key, int[] a) {     f

How dbms is better to use than flat-file database, How can you justify that...

How can you justify that a DBMS is better to use than Flat-file database? A DBMS takes care of the storage, retrieval, and management of large data sets on a Database. It give

What is difference between design and system architecture, What is differen...

What is difference between Design and System Architecture? System Architecture : It is structure of a product or procedure. Design: It is begin of the procedure of devel

Define class diagram , Class diagram technique is vital within Object Orie...

Class diagram technique is vital within Object Oriented functions. Class diagrams illustrate the kinds of objects in the system and the several static relationships among them. Cl

State the java virtual machine and runtime environment, Java Virtual Machin...

Java Virtual Machine & Runtime Environment Basic Concept When you write a program in C++ it's called source code. C++ compiler converts this source code into the machine c

Regex , Having trouble with a lab, need to

Having trouble with a lab, need to

Decoding program, 699906626330444777707776662233777 decoding program

699906626330444777707776662233777 decoding program

Rebuilding a server environment, Project Description: We prepare and ope...

Project Description: We prepare and operate smartphone application.(Picture sharing and social networking) But there are problems in server side. It's very slow. So we

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd