Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Oracle SOA Suite 11g R1 Developer's Guide
Oracle SOA Suite 11g R1 Developer's Guide

Oracle SOA Suite 11g R1 Developer's Guide: Service-Oriented Architecture (SOA) is made easily accessible thanks to this comprehensive guide. With a logically structured approach, it gives you the expertise to start using the Oracle SOA suite in real-world applications.

eBook
S$12.99 S$94.99
Paperback
S$118.99
Subscription
Free Trial

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Oracle SOA Suite 11g R1 Developer's Guide

Chapter 10. oBay Introduction

By now, you should have a good initial understanding of all the key components that make up the Oracle SOA Suite. Typically we find that once someone has an initial grasp of the various components, one of the next questions we get is:

"What is the best way to combine/use all of these different components to implement a real world SOA solution?"

Answering this question is very much the focus of this section. To do this, we have built a complete, albeit, relatively small SOA solution designed for an online auction site for a fictional company called oBay(the o stands for Oracle).

Each chapter in this section tackles specific areas that need to be considered when developing an SOA-based solution, such as the design of the service contract, validation, error handling, message interaction patterns, and so on. To highlight and demonstrate key design considerations, each chapter uses examples based on key parts of the oBay application to illustrate...

Chapter 11. Designing the Service Contract

Service contracts provide the glue that enables us to assemble disparate pieces of software or services into complete, composite applications. If we are to build a sustainable solution, that is, one that will achieve our goals of improved agility, reuse, and interoperability, then a careful design of the service contract is crucial.

The contract of a web service is made up of the following technical components:

  • WSDL Definition: Defines the various operations which constitute a service, their input and output parameters, and the protocols (bindings) it supports.
  • XML Schema Definition (XSD): Either embedded within the WSDL definition or referenced as a standalone component, this defines the XML elements and types which constitute the input and output parameters.
  • WS-Policy Definition: An optional component that describes the service's security constraints, quality of service, and so on.

Additionally, the service contract may be supported...

Chapter 12. Building Entity Services Using Service Data Objects (SDOs)

In Chapter 10, oBay Introduction, we went through the process of defining our high level SOA blueprint. One of the key layers within this blueprint is the business services layer, which we further categorized into Entity, Functional, and Task-based services.

When it comes to implementing Task-based or Functional services, the SOA Suite provides a number of ways of implementing these (many of which are covered within the pages of this book), depending on the nature of the requirements. In addition, with SOA we have the flexibility of implementing these services pretty much in a language of our choice, a key driver often being the existing skill sets within our organization.

However, when it comes to Entity services, which typically represent data entities held in a relational database, apart from the database adapter, the SOA Suite provides limited functionality for implementing these types of services. Certainly...

Chapter 13. Building Validation into Services

Once we have divided our solution into a number of composite components, one of the next questions we are typically faced with is:

"Where should I put my validation and how should I implement it?"

At first glance, this may seem like an obvious question, but once you consider that a composite may be made up of other services, which in turn could be made up of other services and so on; it becomes clear that you could potentially end up implementing the same validation in every level.

Apart from the obvious performance implications, you also have the issue of having to implement and maintain the same validation at multiple points within the solution.

When you get down to an individual composite, you still have to consider, where in the service to place the validation and how best to implement it. Particularly, if you want the flexibility to be able to change the validation within a service without having to re-deploy it.

This chapter...

Chapter 14. Error Handling

Handling errors or faults is an important consideration for service-oriented architecture (SOA) based applications, especially if you consider that a solution is likely to be a loose assembly of independent components, each with varying levels of resilience, throughput, and availability.

How faults are handled depends on a number of factors: whether it's a business or system fault, was the service where the fault originated called synchronously or asynchronously, and whether the interaction between the client and the component detecting the fault is synchronous or asynchronous.

A business fault is loosely defined as one we know about in advance. It is defined as part of the service contract, and thus represents a legitimate state within the business process. How we handle a fault of this type is largely driven by business requirements, and so it makes sense to handle these within the context of the process.

A system fault conversely is one that is...

Chapter 15. Advanced SOA Suite Architecture

In this chapter, we will examine some of the architectural features of the SOA Suite. We refer to them as advanced features because they are often ignored by developers, yet an understanding of how they work can give additional capabilities to our composite applications. We will begin by looking at how the BPEL component stores instance states during long running composite execution and then how it uses threads before moving on to examine where transaction boundaries occur. Finally, we will review how a cluster works, and how it may impact the way we design and build our composites. Clemens Utschig has been a great source of help in providing the information for this chapter.

Relationship of infrastructure to service engines

The Software Component Architecture (SCA) Assembly is understood by the core SOA Suite infrastructure, also known as Fabric. Fabric is responsible for routing messages to appropriate service components within a composite...

Chapter 16. Message Interaction Patterns

In every composite, messages are exchanged between participants. So far, we have only looked at simple interactions, that is, a single request followed by a reply, whether synchronous or asynchronous.

Asynchronous messaging adds additional complexities around the routing and correlation of replies. In this chapter, we look at how the SOA Service Infrastructure uses WS-Addressing to manage this, and in situations where this can't be used, examine how we can use correlation sets in BPEL to achieve the same result.

As a part of this, we look at some common, but more complex, messaging patterns and requirements such as:

  • How we can handle multiple exchanges of messages, either synchronous or asynchronous between two participants
  • How BPEL can be used to aggregate messages from multiple sources
  • Although it is not strictly a message interaction pattern, examine one technique for process scheduling

Finally, as we explore these patterns, we take the...

Chapter 17. Workflow Patterns

So far we've used workflow for simple task approval in conjunction with the worklist application. However, human workflows are often more complex, often involving multiple participants as well as requiring the task list to be integrated into the user's existing user interface rather than accessing it through a standalone worklist application.

In this chapter, we look at these common requirements. First, we examine how to manage workflows involving complex chains of approval, including parallel approvers and the different options that are available. Next, we look at the Workflow Service API, and how we can use that to completely transform the look and feel of the workflow service.

Managing multiple participants in a workflow

The process for validating items that have been flagged as suspicious, is a classic workflow scenario that may potentially involve multiple participants.

The first step in the workflow requires an oBay administrator to check...

Chapter 18. Using Business Rules to Implement Services

We have looked at how we can use the rules engine to define business rules that can then be invoked as a decision component within a composite. The examples we have used so far have been pretty trivial. However, the rules engine uses the Rete algorithm, which was developed by researchers into artificial intelligence in the 1970s.

Rete has some unique qualities, when compared to more procedural-based languages such as PL/SQL, C, C++, or Java, making it ideal for evaluating a large number of interdependent rules and facts. This not only makes it simpler to implement highly complex rules than would typically be the case with more procedural-based languages, but also makes it suitable for implementing particular categories of first-class business services.

In this chapter, we look in more detail at how the rule engine works, and armed with this knowledge, we write a set of rules to implement the auction algorithm responsible for...

Left arrow icon Right arrow icon

Key benefits

  • A hands-on, best-practice guide to using and applying the Oracle SOA Suite in the delivery of real-world SOA applications
  • Detailed coverage of the Oracle Service Bus, BPEL PM, Rules, Human Workflow, Event Delivery Network, and Business Activity Monitoring
  • Master the best way to use and combine each of these different components in the implementation of a SOA solution
  • Illustrates key techniques and best practices using a working example of an online auction site (oBay)

Description

We are moving towards a standards-based Service-Oriented Architecture (SOA), where IT infrastructure is continuously adapted to keep up with the pace of business change. Oracle is at the forefront of this vision, with the Oracle SOA Suite providing the most comprehensive, proven, and integrated tool kit for building SOA-based applications.Developers and Architects using the Oracle SOA Suite, whether working on integration projects, building composite applications, or specializing in implementations of Oracle Applications, need a hands-on guide on how best to harness and apply this technology. This book will guide you on using and applying the Oracle SOA Suite to solve real-world problems, enabling you to quickly learn and master the technology and its applications.This book is a major update to Oracle SOA Suite Developer's Guide, which covered 10gR3. It is completely updated for Oracle SOA Suite 11gR1, with 40% new material, including detailed coverage of newer components, such as: the Mediator, the new Rules Editor, the Event Delivery Network, Service Data Objects, and the Meta Data Repository. There is also a complete additional chapter on advanced SOA Architecture including message delivery, transaction handling and clustering considerations.The initial section of the book provides you with a detailed hands-on tutorial to each of the core components that make up the Oracle SOA Suite. Once you are familiar with the various pieces of the SOA Suite and what they do, the next question will typically be:"What is the best way to use and combine all of these different components to implement a real-world SOA solution?"Answering this question is the goal of the next section. Using a working example of an online auction site (oBay), it leads you through key SOA design considerations in implementing a robust solution that is designed for change.The final section addresses non-functional considerations and covers the packaging, deployment, and testing of SOA applications. It then details how to secure and administer SOA applications.

Who is this book for?

If you are a developer or a technical architect who works in the SOA domain, this book is for you. The primary purpose of the book is to provide you with a hands-on practical guide to using and applying the Oracle SOA Suite in the delivery of real-world composite applications.You need basic understanding of the concepts of SOA, as well as some of the key standards in this field, including web services (SOAP, WSDL), XML Schemas, and XSLT (and XPath).

What you will learn

  • Implement SOA composites using standards like the Services Component Architecture (SCA) of the Oracle SOA Suite
  • Build implementation-agnostic services using the Oracle Service Bus and Mediator
  • Learn to use key technology adapters to service-enable existing systems
  • Assemble services to build composite services and long-running business process using BPEL
  • Implement Service Data Objects (SDOs) and embed them as Entity Variables within a BPEL Process using ADF-Business Components
  • Implement Business Rules and Decision Tables using the new Rules Editor
  • Incorporate Human Workflow into your processes and use Business Rules to provide greater agility
  • Leverage the Meta Data Service (new in 11gR1) to share XML resources between composites.
  • Design XML schemas and WSDL service contracts for improved agility, reuse, and interoperability
  • Transform the look and feel of the workflow within your solution using the Workflow APIs
  • Handle errors within your application using Fault Policies
  • Create, deploy, and run test cases that automate the testing of composite applications
  • Secure and administer SOA applications using Web Service Manager
  • Learn best practices to architect, design, and implement your overall SOA Solution

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jul 01, 2010
Length: 720 pages
Edition : 1st
Language : English
ISBN-13 : 9781849680189
Vendor :
Oracle

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Jul 01, 2010
Length: 720 pages
Edition : 1st
Language : English
ISBN-13 : 9781849680189
Vendor :
Oracle

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just S$6 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just S$6 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total S$ 296.97
Oracle SOA Suite 11g R1 Developer's Guide
S$118.99
Oracle SOA Suite 11g Administrator's Handbook
S$88.99
Oracle Service Bus 11g Development Cookbook
S$88.99
Total S$ 296.97 Stars icon
Banner background image

Table of Contents

4 Chapters
I. Getting Started Chevron down icon Chevron up icon
II. Putting it All Together Chevron down icon Chevron up icon
III. Other Considerations Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Half star icon 4.3
(11 Ratings)
5 star 72.7%
4 star 9.1%
3 star 0%
2 star 9.1%
1 star 9.1%
Filter icon Filter
Top Reviews

Filter reviews by




ST Dec 17, 2010
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This is one of the best book covering Oracle SOA Suite 11g for both developers and hands-on architects. Every SOA Suite topic is covered in a simple and effective way. You can use it in multiple ways - either read it from the beginning to end as a supplement for self study, or just as a reference guide going right into the specific SOA Suite 11g topic you are looking for. I would also suggest you to take a look at Antony's blog including many topics covered in this book and other advance areas for mastering Oracle SOA Suite 11g. Download the Oracle SOA Suite 11g and start your project - this book on your desk you will master it fast.
Amazon Verified review Amazon
Lei Zhang Sep 14, 2010
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This book is great guide for all people who want to know all new features of Oracle SOA suite 11g, very detailed and easy to understand.Highly recommend !
Amazon Verified review Amazon
alena Dec 20, 2014
Full star icon Full star icon Full star icon Full star icon Full star icon 5
very useful and practical. I used the solutions in our real project.
Amazon Verified review Amazon
Rafiq Oct 28, 2015
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I bought this book when I started learning SOA and have bought several other books after that but none compares to it. It is the most practical/hands-on book I have ever read on Oracle SOA. I can't wait for the 12c version. To the authors, if you are planning a 12c version (I think you should), I will suggest that you use a real life project to illustrate the concepts and technologies. Maybe a bank that is building a SOA solution. There is one thing that is mostly missing in SOA books though...How do end users interact with SOA applications? I know that Oracle Fusion Applications are built on the SOA architecture with nice looking web forms? How are these web applications built on-top of or as part of SOA solutions? Please do include this in the 12c version. I haven't read the whole book though so I am leaving room for correction if the requested features in the 12c version are already in this book.
Amazon Verified review Amazon
Konstantin Jan 14, 2013
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Great book ! Everything's explained in details ! Fantastic book for people with hands on SOA and for beginners, as well!
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.