Welcome!

Oracle Authors: AppDynamics Blog, Pat Romanski, Liz McMillan, Carmen Gonzalez, Nitin Bandugula

Related Topics: Oracle, SOA & WOA

Oracle: Article

A Review Of Oracle Application Server 10g

For the enterprise, Oracle's Application Server 10g provides a robust option

A number of solutions exist for creating Java-based Web services from a variety of different providers. Options range from individual processing engines that plug into existing application servers to large enterprise-class platforms in which Web services is one of many components. Each option provides its own set of challenges and benefits while addressing different types of requirements. For the enterprise, Oracle's Application Server 10g provides a robust option.

The 10g version of the application server from Oracle provides a highly flexible and scalable Java-based Web services capability. The tools provided by the system allow for almost any Java object or PL/SQL function to be exposed as a Web service.

Web Services Support
The Oracle Application Server Web services architecture in 10g provides the infrastructure to expose a variety of objects as Web services, including:

  • Stateless Java classes
  • Stateful Java classes
  • Stateless session EJBs
  • Stateless PL/SQL functions or procedures
  • Java Message Service (JMS) objects
Figure 1, from the application server's documentation library, identifies the supporting components for each of the above sources. The boxes on the right side of the figure represent individual servlets that handle the documents sent to and from each type of source component. For Web services that are stateful, HTTP session objects manage state between service calls. Both RPC and document-style Web services are supported by this architecture. The key difference between the two styles within the application server is the set of parameters and data types allowed in the implementing class. In the RPC style, Oracle supports instances of basic Java primitives and object types as parameters, along with Element, Document, and DocumentFragment objects from the DOM (XML API). Document-style Web service implementation classes only support instances of the Element object from the DOM (XML API).

Tools for Exposing Services
If you're using Java classes to implement Web services, the development should follow the same sound principles as when developing any other classes that will be hosted in an application server, since there are no physical limitations beyond those described in the previous section. Once the implementation classes are built, the developer must create the configuration file to describe how the service is to be assembled by the application server. This is a basic XML document not unlike a J2EE or Web application deployment descriptor. It contains information about the service itself, including name, description, and path information, as well as the individual services and their implementation classes (or other objects, depending on the implementation type). For the purposes of this article, a simple Document-style Web service was created as a standard Java class to accept an incoming document and store it in a repository.

With the configuration file complete, Oracle Application Server provides a tool called the WebServicesAssembler that reads the file information and generates the appropriate class files and deployment descriptors, and optionally the WSDL file and proxy classes for the service. This is a command-line utility that can easily be incorporated into any Ant script as part of a standardized build process. Inspection of the generated EAR file shows a Web application module with a specialized servlet for handling document-style Web services.

JMS Web services are slightly different because two JMS destinations and possibly an MDB are required, depending on implementation. In this scenario, a SOAP call goes through the following progression:

  1. The Web service client sends a SOAP message to an HTTP servlet
  2. The Web service listener servlet drops the message to a JMS destination
  3. An MDB or alternate JMS client picks up the incoming message and processes the contents
  4. The result of the operation is placed on a second JMS destination
  5. The Web service listener servlet returns the service result to the Web service client via a SOAP message
The configuration file for JMS Web services also differs in that the connection factories and queues for sending and receiving the SOAP document from the Web services listener servlet are identified instead of the implementation classes

Similar changes are needed when developing Web services that are implemented by PL/SQL objects. In this scenario, the configuration file identifies the username and password of the host database, its JDBC URL, the JNDI name of the connection pool, and the package and procedure to execute.

In addition to the Web services architecture described above, Oracle Application Server 10g provides an alternative method for Web services implementations called OracleAS SOAP. This toolkit is based on the Apache SOAP implementation. It should be noted, however, that the Oracle Application Server documentation recommends that the Oracle Application Server Web services architecture be used to create and deploy new Web services applications.

Oracle UDDI Registry
Cataloging and publishing of available Web services is supported by the UDDI registry provided in Oracle Application Server 10g. This repository includes support for the SOAP API as defined in version 2 of the UDDI specification. Web services may also be published to the UDDI registry at deployment time from the Oracle Application Server Administrative Console.

Securing Web Services in Oracle
Oracle Application Server 10g allows administrators to secure Web services using the following techniques:

  • Web services over SSL
  • HTTP Basic Authentication
  • Authorization via Oracle's implementation of JAAS
When interacting with secure Web services hosted on an Oracle Application Server instance, the client application must have the relevant system properties set. If JAAS is implemented for authorization, the username and password provided by the calling client may be used to retrieve a Principal object from the User Manager to be passed along to any relevant processes.

Conclusion
Oracle Application Server 10g provides a powerful, flexible, and scalable Web services architecture for Java-based systems. The tools provided isolate the developers from the required code to manage the details of processing SOAP requests and allow them to focus on creating business logic. The UDDI server provides the cataloging and directory services to publish available services. Overall, the 10g version of Oracle's Application Server provides a complete and robust solution for delivering Web services in Java.

Company Info
Oracle Corporation
500 Oracle Parkway
Redwood Shores, CA 94065
www.oracle.com
Phone: 1.800.ORACLE1
http://www.oracle.com/technology/products/ias/index.html

At the time of this writing, it was indicated that an upgrade to the Oracle Application Server was forthcoming with support for J2EE 1.4 Web Services, SAAJ 1.2, Apache WSIF, SOAP 1.1/1.2 and WSDL 1.1. Adds support for the WS-Security standard and provide a reliable messaging framework that supports the WS-Reliability standard. This release includes a new management console for managing Web services, a full design time in Oracle JDeveloper and for non-Oracle-IDE environments, a command line tool, and a set of Ant tasks for creating Web services. The new version is now available.

More Stories By Brian Barbash

Brian R. Barbash is the product review editor for Web Services Journal. He is a senior consultant and technical architect for Envision Consulting, a unit of IMS Health, providing management consulting and systems integration that focuses on contracting, pricing, and account management in the pharmaceutical industry.

Comments (5) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
Steve Mac 09/27/07 02:14:40 AM EDT

It’s very good article. Great site with very good look and perfect information.

Steve M. 09/14/07 05:14:12 AM EDT

Thanks, Despite the title of my original post, I think I agree with thepost.

SOA Web Services Journal News Desk 12/02/05 11:44:29 AM EST

SOA Web Services: A Review Of Oracle Application Server 10g. A number of solutions exist for creating Java-based Web services from a variety of different providers. Options range from individual processing engines that plug into existing application servers to large enterprise-class platforms in which Web services is one of many components. Each option provides its own set of challenges and benefits while addressing different types of requirements.

SOA Web Services Journal News Desk 10/29/05 05:47:02 PM EDT

A number of solutions exist for creating Java-based Web services from a variety of different providers. Options range from individual processing engines that plug into existing application servers to large enterprise-class platforms in which Web services is one of many components. Each option provides its own set of challenges and benefits while addressing different types of requirements.

SOA Web Services Journal 08/22/05 02:51:27 PM EDT

A Review Of Oracle Application Server 10g - A Robust Option For The Enterprise. A number of solutions exist for creating Java-based Web services from a variety of different providers. Options range from individual processing engines that plug into existing application servers to large enterprise-class platforms in which Web services is one of many components. Each option provides its own set of challenges and benefits while addressing different types of requirements.

@ThingsExpo Stories
The Industrial Internet revolution is now underway, enabled by connected machines and billions of devices that communicate and collaborate. The massive amounts of Big Data requiring real-time analysis is flooding legacy IT systems and giving way to cloud environments that can handle the unpredictable workloads. Yet many barriers remain until we can fully realize the opportunities and benefits from the convergence of machines and devices with Big Data and the cloud, including interoperability, data security and privacy.
Things are being built upon cloud foundations to transform organizations. This CEO Power Panel at 15th Cloud Expo, moderated by Roger Strukhoff, Cloud Expo and @ThingsExpo conference chair, addressed the big issues involving these technologies and, more important, the results they will achieve. Rodney Rogers, chairman and CEO of Virtustream; Brendan O'Brien, co-founder of Aria Systems, Bart Copeland, president and CEO of ActiveState Software; Jim Cowie, chief scientist at Dyn; Dave Wagstaff, VP and chief architect at BSQUARE Corporation; Seth Proctor, CTO of NuoDB, Inc.; and Andris Gailitis, C...
Since 2008 and for the first time in history, more than half of humans live in urban areas, urging cities to become “smart.” Today, cities can leverage the wide availability of smartphones combined with new technologies such as Beacons or NFC to connect their urban furniture and environment to create citizen-first services that improve transportation, way-finding and information delivery. In her session at @ThingsExpo, Laetitia Gazel-Anthoine, CEO of Connecthings, will focus on successful use cases.
The Internet of Things will greatly expand the opportunities for data collection and new business models driven off of that data. In her session at @ThingsExpo, Esmeralda Swartz, CMO of MetraTech, discussed how for this to be effective you not only need to have infrastructure and operational models capable of utilizing this new phenomenon, but increasingly service providers will need to convince a skeptical public to participate. Get ready to show them the money!
The 3rd International Internet of @ThingsExpo, co-located with the 16th International Cloud Expo - to be held June 9-11, 2015, at the Javits Center in New York City, NY - announces that its Call for Papers is now open. The Internet of Things (IoT) is the biggest idea since the creation of the Worldwide Web more than 20 years ago.
The industrial software market has treated data with the mentality of “collect everything now, worry about how to use it later.” We now find ourselves buried in data, with the pervasive connectivity of the (Industrial) Internet of Things only piling on more numbers. There’s too much data and not enough information. In his session at @ThingsExpo, Bob Gates, Global Marketing Director, GE’s Intelligent Platforms business, to discuss how realizing the power of IoT, software developers are now focused on understanding how industrial data can create intelligence for industrial operations. Imagine ...
The Internet of Things is tied together with a thin strand that is known as time. Coincidentally, at the core of nearly all data analytics is a timestamp. When working with time series data there are a few core principles that everyone should consider, especially across datasets where time is the common boundary. In his session at Internet of @ThingsExpo, Jim Scott, Director of Enterprise Strategy & Architecture at MapR Technologies, discussed single-value, geo-spatial, and log time series data. By focusing on enterprise applications and the data center, he will use OpenTSDB as an example t...
Today’s enterprise is being driven by disruptive competitive and human capital requirements to provide enterprise application access through not only desktops, but also mobile devices. To retrofit existing programs across all these devices using traditional programming methods is very costly and time consuming – often prohibitively so. In his session at @ThingsExpo, Jesse Shiah, CEO, President, and Co-Founder of AgilePoint Inc., discussed how you can create applications that run on all mobile devices as well as laptops and desktops using a visual drag-and-drop application – and eForms-buildi...
There is no doubt that Big Data is here and getting bigger every day. Building a Big Data infrastructure today is no easy task. There are an enormous number of choices for database engines and technologies. To make things even more challenging, requirements are getting more sophisticated, and the standard paradigm of supporting historical analytics queries is often just one facet of what is needed. As Big Data growth continues, organizations are demanding real-time access to data, allowing immediate and actionable interpretation of events as they happen. Another aspect concerns how to deliver ...
The 3rd International Internet of @ThingsExpo, co-located with the 16th International Cloud Expo - to be held June 9-11, 2015, at the Javits Center in New York City, NY - announces that its Call for Papers is now open. The Internet of Things (IoT) is the biggest idea since the creation of the Worldwide Web more than 20 years ago.
Scott Jenson leads a project called The Physical Web within the Chrome team at Google. Project members are working to take the scalability and openness of the web and use it to talk to the exponentially exploding range of smart devices. Nearly every company today working on the IoT comes up with the same basic solution: use my server and you'll be fine. But if we really believe there will be trillions of these devices, that just can't scale. We need a system that is open a scalable and by using the URL as a basic building block, we open this up and get the same resilience that the web enjoys.
In their session at @ThingsExpo, Shyam Varan Nath, Principal Architect at GE, and Ibrahim Gokcen, who leads GE's advanced IoT analytics, focused on the Internet of Things / Industrial Internet and how to make it operational for business end-users. Learn about the challenges posed by machine and sensor data and how to marry it with enterprise data. They also discussed the tips and tricks to provide the Industrial Internet as an end-user consumable service using Big Data Analytics and Industrial Cloud.
How do APIs and IoT relate? The answer is not as simple as merely adding an API on top of a dumb device, but rather about understanding the architectural patterns for implementing an IoT fabric. There are typically two or three trends: Exposing the device to a management framework Exposing that management framework to a business centric logic Exposing that business layer and data to end users. This last trend is the IoT stack, which involves a new shift in the separation of what stuff happens, where data lives and where the interface lies. For instance, it's a mix of architectural styles ...
Technology is enabling a new approach to collecting and using data. This approach, commonly referred to as the "Internet of Things" (IoT), enables businesses to use real-time data from all sorts of things including machines, devices and sensors to make better decisions, improve customer service, and lower the risk in the creation of new revenue opportunities. In his General Session at Internet of @ThingsExpo, Dave Wagstaff, Vice President and Chief Architect at BSQUARE Corporation, discuss the real benefits to focus on, how to understand the requirements of a successful solution, the flow of ...
Cloud Expo 2014 TV commercials will feature @ThingsExpo, which was launched in June, 2014 at New York City's Javits Center as the largest 'Internet of Things' event in the world.
"People are a lot more knowledgeable about APIs now. There are two types of people who work with APIs - IT people who want to use APIs for something internal and the product managers who want to do something outside APIs for people to connect to them," explained Roberto Medrano, Executive Vice President at SOA Software, in this SYS-CON.tv interview at Cloud Expo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
Performance is the intersection of power, agility, control, and choice. If you value performance, and more specifically consistent performance, you need to look beyond simple virtualized compute. Many factors need to be considered to create a truly performant environment. In his General Session at 15th Cloud Expo, Harold Hannon, Sr. Software Architect at SoftLayer, discussed how to take advantage of a multitude of compute options and platform features to make cloud the cornerstone of your online presence.
In this Women in Technology Power Panel at 15th Cloud Expo, moderated by Anne Plese, Senior Consultant, Cloud Product Marketing at Verizon Enterprise, Esmeralda Swartz, CMO at MetraTech; Evelyn de Souza, Data Privacy and Compliance Strategy Leader at Cisco Systems; Seema Jethani, Director of Product Management at Basho Technologies; Victoria Livschitz, CEO of Qubell Inc.; Anne Hungate, Senior Director of Software Quality at DIRECTV, discussed what path they took to find their spot within the technology industry and how do they see opportunities for other women in their area of expertise.
Wearable devices have come of age. The primary applications of wearables so far have been "the Quantified Self" or the tracking of one's fitness and health status. We propose the evolution of wearables into social and emotional communication devices. Our BE(tm) sensor uses light to visualize the skin conductance response. Our sensors are very inexpensive and can be massively distributed to audiences or groups of any size, in order to gauge reactions to performances, video, or any kind of presentation. In her session at @ThingsExpo, Jocelyn Scheirer, CEO & Founder of Bionolux, will discuss ho...
DevOps Summit 2015 New York, co-located with the 16th International Cloud Expo - to be held June 9-11, 2015, at the Javits Center in New York City, NY - announces that it is now accepting Keynote Proposals. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to wait for long development cycles that produce software that is obsolete at launch. DevOps may be disruptive, but it is essential.