Web Services

Mister Model was designed to enable the movement of objects between a client and a web service. It was developed because I wanted a Java client to talk to a Perl web service. Mister Model is one product of the frustration.

A second product is the development of two methodologies for rapidly developing and deploying web services in Java and in Perl.

  1. Develop software modules but minimize the amount of time thinking about the fact that they will be web services.
  2. Deploy web services with a minimum of effort.
  3. Do not require the use of an IDE to develop web services.
  4. Maximize the use of open source software.
  5. Pass arbitrarily complex objects between client and service.

Web Services in Java

Extensive research suggests the use Enterprise Java Bean (EJB) technology can accelerate the development of web services in Java.

EJBs provide the framework to develop and deploy web services. Bruce Tate's book "Bitter Java" succinctly summarizes EJB technology as:
"a component-based, distributed architecture. On the server, a set of services support a container, which in turn supports the components, called EJBs, within the container."

EJB technology:

The container based technology provides numerous advantages for developers:

Mister Model, Web Services, and Java

One can develop web services in Java really quickly using JBoss, XDoclet, Mister Model:
  1. Use Mister Model to generate Java code to represent your data model. Jar the code and drop it into the container.
  2. Take a Plain Old Java Object (POJO) and add comments describing deployment conditions.
  3. Allow XDoclet to generate JBoss deployment descriptors.
  4. Compile the code into an Enterprise Archive (EAR) and drop it into the container.
  5. Use the code from a client. As long as the client (Java or Perl) has the datamodel classes from step (1) serialization will not be a problem.

Web Services in Perl

Perl, through SOAP::Lite provides an excellent framework for providing web services.

Mister Model, Web Services, and Perl

One can develop web services in Perl really quickly using Apache and SOAP::Lite:
  1. Use Mister Model to generate Perl code to represent your data model. Put that code in the @INC available to Apache.
  2. Create a Plain Old Perl Object (POPO) that uses that data model.
  3. Create a .ws - a web service descriptor that delegates all calls to the POPO you just wrote.
  4. Use the code from a client. As long as the client (Java or Perl) has the datamodel classes from step (1) serialization will not be a problem.
SourceForge.net Logo Agriculture Canada Logo