Often, a J2EE Web application framework-Struts, for example-doesn't address the Web-tier object references between Action/servlet and other layers, such as a plain old Java object (POJO) business manager, Enterprise JavaBeans (EJB), Web services, and a data access object (DAO), or between a DAO and JDBC (Java Database Connectivity) stored procedures. Thus, Java developers end up with messy code in the Web tier Action/servlet. This article describes in detail the steps for developing a custom framework that addresses those issues. (3,000 words; October 4, 2004)
One of the core building blocks of the Web services model is service publication and discovery. Standards-based service publication and discovery should help realize Web services' ultimate vision-ad hoc, dynamic, aggregated service discovery, and usage. Popular registry schemes such as UDDI (Universal Description, Discovery, and Integration) and ebXML are already available. JAXR, the Java API for XML Registries, provides the standard for performing Web services publication and discovery through underlying registries. In this article, authors Kathy Walsh and Sang Shin show you how. (3,500 words; June 14, 2002)
Developers can use Apache Jetspeed to build dynamic portals out of Web services and existing applications. Jetspeed, an open source portal project, builds both traditional Web portals and portals for mobile devices using the Wireless Markup Language. Jeff Linwood explains how you can build portlets, the building blocks of a portal, with Jetspeed. (3,000 words)
4. Use Web services to integrate Web applications with EISs
Web services expose business processes to bolster object-oriented and component-based programming with a services-based model. You can enhance your current programming model to support Web services by adding a service contract. The service contract completely separates a system interface from its implementation. Sun Microsystems' Java 2 Platform, Enterprise Edition (J2EE) and Microsoft's .Net frameworks both provide powerful platforms on which to build and support Web services. This article explores how to leverage both platforms to integrate enterprise information systems (EISs) and Java-based Web applications. Find out how Web services, the Model-View-Controller (MVC) pattern, and the J2EE Connector Architecture (JCA) all play a major role in this integration game. (2,300 words; February 8, 2002)
This article implements a general-purpose architecture for recording client response times for J2EE (Java 2 Platform, Enterprise Edition) Web services. The response times recorded are actual client response times, so they accurately reflect a user's perspective of the service quality. The sample implementation was built using the Sun ONE (Open Network Environment) Application Server and IDE, but the general approach can be easily adapted to other J2EE implementations. (3,800 words; September 19, 2003)
Before you design, implement, and test Java-based Web services, you must first analyze several critical issues: different types of clients, such as Java, .Net, and browsers; specific SOAP (Simple Object Access Protocol) implementations, such as Apache Axis and Microsoft's .Net WSE (Web Services Enhancements); interoperability issues between .Net and Axis SOAP implementations; conveying SOAP Faults to the client; Java-based Web services integration with a framework like Apache Struts; support for a flexible configuration mechanism based on XML documents and usage of Java-XML bindings; and finally, effective unit testing. This article examines these issues and discusses Formatting Objects Processor (FOP) Web services implementation details for different client types. (3,000 words; September 12, 2003)
This article, intended for CIOs, software/solutions developers, and system architects, covers design and usages of service-oriented architecture in the enterprise, discusses problems introduced by SOA, and provides an alternative approach to architecting such solutions by integrating a native XML operational data store. It also provides a specific use-case (hospital infrastructure) scenario and explains the benefits of the native XML approach. The approach discussed in this article will enable your enterprise applications to become more efficient, run faster, be standards-compliant, provide a single, accurate view of data, and reduce development and maintenance costs. (2,900 words; December 6, 2004)
The Java platform provides a top-to-bottom, end-to-end solution for a Web services architecture. In this article, Eric Armstrong provides an overview of Sun's new Web services APIs. These latest releases provide an impressive array of performance and functionality capabilities. (3,000 words)
9. I like your type: Describe and invoke Web services based on service type
The Web Service Description Language (WSDL) provides an XML grammar for defining and advertising a Web service, including a service's type. This article gives an overview of how to describe a Web service with WSDL. Frank Sommers uses Apache Axis tools to create WSDL from Java interfaces and Java classes from WSDL documents. He also shows how to programmatically interact with WSDL based on emerging Java APIs for WSDL (JWSDL) and how to dynamically invoke Web services using IBM's reference JWSDL implementation. (3,700 words; September 20, 2002)
The latest J2EE (Java 2 Platform, Enterprise Edition) specification, version 1.4, makes Web services a core part of the Java enterprise platform. A set of JSRs (Java Specification Requests) in the Java Community Process define how J2EE components can become Web services, how existing enterprise Java applications can invoke Web services, and adds new interoperability requirements for J2EE containers. This article reviews J2EE 1.4's new client and server programming models for Web services. (3,100 words; June 20, 2003)
Before you design, implement, and test Java-based Web services, you must first analyze several critical issues: different types of clients, such as Java, .Net, and browsers; specific SOAP (Simple Object Access Protocol) implementations, such as Apache Axis and Microsoft's .Net WSE (Web Services Enhancements); interoperability issues between .Net and Axis SOAP implementations; conveying SOAP Faults to the client; Java-based Web services integration with a framework like Apache Struts; support for a flexible configuration mechanism based on XML documents and usage of Java-XML bindings; and finally, effective unit testing. This article examines these issues and discusses Formatting Objects Processor (FOP) Web services implementation details for different client types. (3,000 words; September 12, 2003)
12. Keep up with the Web service styles (and uses)
While XML-transparent Web service development might sound like the easy way to go, understanding and manipulating XML in SOAP (Simple Object Access Protocol) messages can actually avoid some development difficulties. What's especially useful, if often misunderstood, is the pair of parameters developers use to form SOAP messages: binding style and use. This article first tries to clear up the confusion over SOAP message formats and the other Web service decisions they get mistaken for, then shows how to control these formats and develop XML-oriented Web services using two popular Web service platforms. (5,000 words; October 3, 2003)
This article inaugurates JavaWorld's new Web Services column. The column will examine Web services technologies from a programmer's perspective and explore where Web services fit into a Java developer's toolbox. To kick off the column, Frank Sommers defines Web services, explains how they operate, and compares them to related Java technologies. He also presents a general programming model for Web services, independent of any framework or technology. (4,500 words; January 25, 2002)
Learn how you can describe and advertise your Web service so that others can find it, and how you can locate services on the Web in this second installment of our Web Services column. Frank Sommers takes an in-depth look at the Java API for XML Registries (JAXR) and its existing reference implementation, which ships with Sun Microsystems' Java Web Services Developer Pack (JWSDP). (Check out "Supplement: The Adventures of JWSDP.") JAXR provides an API to register with and search a variety of standards-based Web service registries. (4,600 words; May 17, 2002)
One of the core building blocks of the Web services model is service publication and discovery. Standards-based service publication and discovery should help realize Web services' ultimate vision-ad hoc, dynamic, aggregated service discovery, and usage. Popular registry schemes such as UDDI (Universal Description, Discovery, and Integration) and ebXML are already available. JAXR, the Java API for XML Registries, provides the standard for performing Web services publication and discovery through underlying registries. In this article, authors Kathy Walsh and Sang Shin show you how. (3,500 words; June 14, 2002)
16. Is the JCP adequately preparing Java for Web services?
The official release of the newest Java Web Services Developer Pack introduces the Java API for XML Registries and Java API for XML Remote Procedure Call, recently approved through the Java Community Process. The JCP is currently reviewing additional Web services APIs that should prove important to Java Web services development. In this article, Jennifer Orr spotlights the latest Web services technologies and examines how the JCP is responding to Web services. (1,800 words; June 21, 2002)