Professional Documents
Culture Documents
CLOUD ENGINEERED
Oracle updates engineered systems to improve performance,
increase capacity, and deliver consolidated cloud services
2 VOLUME XXVIII - ISSUE 2 CONTENTS
SAFETY IN
TRANSFORMATION
UL, a global safety science
organization, transformed from a
Editorial
Editor in Chief Tom Haunert tom.haunert@oracle.com
Managing Editor Jan Rogers jan.rogers@oracle.com
Senior Editor Caroline Kvitka caroline.kvitka@oracle.com
Associate Editor Patty Waddington
Contributing Editor and Writer Blair Campbell
Technology Advisor Tom Kyte
Contributors Marta Bright, Jeff Erickson, Fred Sandsmark, Rich Schwerin, Leslie Steere
DESIGN
Senior Creative Director Francisco G Delgadillo
Senior Design Director Suemi Lam
Design Director Richard Merchán
Contributing Designers Jaime Ferrand, Arianna Pucherelli
Production Designers Sheila Brennan, Kathy Cygnarowicz
Publishing
Vice President Jeff Spicer jeff.spicer@oracle.com
Publisher Jennifer Hamilton jennifer.hamilton@oracle.com +1.650.506.3794
Associate Publisher and Audience Development Director Karin Kinnear karin.kinnear@oracle.com +1.650.506.1985
Advertising sales
President, Sprocket Media Kyle Walkenhorst kyle@sprocketmedia.com +1.323.340.8585
Western and Central US, LAD, and Canada, Sprocket Media Tom Cometa tom.cometa@oracle.com +1.510.339.2403
Eastern US and EMEA/APAC, Sprocket Media Mark Makinney mark.makinney@sprocketmedia.com +1.805.709.4745
Advertising Sales Assistant, Sprocket Media Cindy Elhaj cindy@sprocketmedia.com +1.626.396.9400, x201
Mailing-List Rentals Contact your sales representative.
Editorial Board
Ian Abramson, Karen Cannell, Andrew Clarke, Chris Claterbos, Karthika Devi, Kimberly Floss, Kent Graziano,
Taqi Hasan, Tony Jambu, Tony Jedlinski, Ari Kaplan, Val Kavi, John King, Steve Lemme, Carol McGury,
Sumit Sengupta, Jonathan Vincenzo, Dan Vlamis
Oracle Magazine (ISSN 1065-3171) is published bimonthly with a free subscription price by: Oracle, 500 Oracle Parkway, MS OPL-3C, Redwood City, CA 94065-1600. Periodicals Postage Paid at Redwood City,
CA, and additional mailing offices. • POSTMASTER: Send address changes to: Oracle Magazine, P.O. Box 1263, Skokie, IL 60076-8263.
Engineered Examination
Have you seen these Oracle engineered systems?
How often? Where?
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates.
WORK IN PROGRESS BY TOM HAUNERT 7
Write It Down
Mark Rittman talks about working with Oracle technology
and the benefits of writing about work.
M ark Rittman is a
consultant, Oracle
Business Intelligence expert,
I also got involved with the
Oracle community many years
ago, and through it I ended up
blogger, author, Oracle writing for Oracle Technology
ACE Director, and frequent Network [OTN] and Oracle
contributor to Oracle Magazine. Magazine, and about five years
Rittman recently sat down ago, I took on the task of doing
with Oracle Magazine Editor an Oracle Business Intelligence
in Chief Tom Haunert to talk Enterprise Edition book
about how he got his start with (Oracle Business Intelligence 11g
Oracle technology, the benefits Developers Guide, 2012) for
of blogging, and the evolution Oracle Press. Writing that book
of business intelligence in was very rewarding. Of course,
the era of big data and cloud I learned a lot, but again, the
computing. The following is an feedback I’ve received has been
excerpt from that interview. fantastic as well.
Listen to the full podcast at Oracle Magazine: Tell us a little
oracle.com/magcasts. Oracle Business Intelligence expert, consultant, author, and Oracle ACE Director bit about the history of your
Mark Rittman reviews writings on Oracle technology.
Oracle Magazine: How did company blog and what the
you get started with Oracle goals and strategies are.
technology? I suppose that for about the last 15 years, Rittman: We started the Rittman Mead
Rittman: Many years ago, back in the late I’ve been working exclusively with Oracle blog (rittmanmead.com/blog) many years
’90s, I used to work for a bank in the UK that technology within the data warehousing ago, and, for one thing, it was a way for
was putting together a marketing project. area, and it’s been good fun. The technology me to write down what I was doing for the
My role at that point was to bring together has been evolving over time, and it’s been company. And one of the things we do at
lots of customer data and to analyze it, and an interesting area to be in. the company is try to recruit people who
pretty soon I reached the limits of what I Oracle Magazine: How did writing about are good writers and communicators, so a
could do on a PC with a spreadsheet. Oracle technology start for you, and where lot of the current content on the blog over
Then I heard about a new project going has it taken you? the last few years is from other people in
on at the bank—an Oracle data warehousing Rittman: I actually started about 10 or 12 the company.
project. It combined the worlds of marketing years ago with blogging. At that time, I We encourage the staff to post content,
and analytics. Oracle was an impressive started posting links to articles, writing and part of the reason is altruistic. We really
company even in those days, so I knew I had short comments, and so on. I was posting enjoy what we do, and we enjoy sharing it.
to get myself on that project as a business things about what was going on with the We want to see the industry move on and
analyst. Over the next couple of years, I world and with technology, and as I worked develop, but blogging also acts as a way of
worked my way into doing SQL queries, data with Oracle technology, I posted a few tips verifying what we’re doing. We’re sharing
warehousing, and reporting. I started off and mentions of things I was doing. our work, putting our arguments out for
working with Oracle Database and then got I found that writing things down and review, and trying to make sure we’re doing
more into data warehousing, ETL [extract, explaining them in detail in the blog was it correctly.
transform, and load], developer tools, really helpful to me, and the feedback I got Oracle Magazine: Do you have suggestions
and so on. I ended up leaving there after a was also really helpful. Part of my consultancy for bloggers or would-be bloggers on how to
few years and working for an automotive job is going out and helping customers, but keep and maintain a blog?
JOHN BLYTHE
company on its data warehouse project. And another big part of it is writing stuff down— Rittman: One of the things people often
after that I got into consultancy. communicating and showing what I’m doing. say to me is, “I don’t know what to write” or
by Dennis Bouley
Contents
> Executive summary
©2014 Schneider Electric. All Rights Reserved. Schneider Electric, APC, Smart-UPS, and Business-wise, Future-driven are trademarks owned by Schneider
Electric Industries SAS or its affiliated companies. All other trademarks are the property of their respective owners.
www.schneider-electric.com • 998-1209036_GMA-US_Gear
10
MashUp News. Views. Trends. Tools.
Your smartphone comes with a basic calculator, but these apps will do more.
CALCUL ATOR APPS
A Case for
creative capacity, lies at
the heart of innovation.”
Multitasking
—Tom Kelley and David Kelley,
authors of Creative Confidence
(Crown Business, 2013)
CHALLENGES 2% 1%
Conferences and sessions to help you stay Oracle User Group Norway
Spring Seminar
on the cutting edge April 3–5, sailing from Oslo, Norway
ougn.no/a/320
Proft
Business Insight for Enterprise-Class Business Leaders to Help Them Build
a Better Business Using Oracle Technology
Circulation: 100,000
Audience: Top Executives and Line of Business Managers
Java Magazine
The Essential Source on Java Technology, the Java Programming Language,
and Java-Based Applications
Circulation: 125,000 and Growing Steady
Audience: Corporate and Independent Java Developers, Programmers,
and Architects
Copyright © 2012, Oracle and/or its affliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affliates. Other names may be trademarks of their respective owners. 113940
Resources 13
OCP Upgrade to OCA Oracle Database 12c OCA Oracle Database 12c
Oracle Database 12c SQL Fundamentals I Installation and Administration
Exam Guide Exam Guide Exam Guide
Sam Alapati Roopesh Ramklass John Watson
This self-study tool offers coverage Prepare for OCA Exam 1Z0-061 Get complete details on all
of OCP Exam 1Z0-060. Electronic with this comprehensive guide. objectives for OCA Exam 1Z0-062.
content includes two practice Electronic content includes two Electronic content includes two
exams and a PDF eBook. practice exams and a PDF eBook. practice exams and a PDF eBook.
TUTORIALS AND VIDEOS Oracle’s Exalogic Elastic Cloud X4-2 Now Available
Oracle ILOM CLI x86 Next Boot Task Oracle’s Exalogic Elastic Cloud X4-2, the “Enterprises have been looking for
This Oracle Integrated Lights Out Manager latest release of the Oracle Exalogic engi- an integrated solution that provides the
command-line interface interactive simu-
neered system, combines more-powerful highest levels of application performance,
lation tutorial shows you how to configure a
hardware and software to deliver extreme rapid installa-
temporary next boot device.
processing, very large memory capacity, and tion, and flexible
bit.ly/KtiOUu
a comprehensive range of application deploy- deployment. Only
Importing OBIEE Data into ment architectures that can be deployed on a Oracle Exalogic
Microsoft Excel single, optimized engineered system. delivers superior
This tutorial for business analysts covers
Exalogic Elastic Cloud X4-2 provides performance with
steps to import data from Oracle Business
higher throughput than previous releases single-vendor
Intelligence Enterprise Edition subject
areas into Microsoft Excel via native Open and, coupled with Oracle’s Exabus tech- support for
Database Connectivity. nology, delivers near-native response times Java and Oracle
bit.ly/JYFueZ for virtualized applications, resulting in Applications,”
greater consolidation benefits. Exalogic says Thomas
Java EE 7: Implementing JMS 2.0
Elastic Cloud X4-2 provides 50 percent Kurian, executive
Shared Subscriptions in the Java
more cores per node and 33 percent more vice president of
SE Environment
This tutorial covers how to implement Java storage capacity with the Oracle ZFS product develop-
Message Service 2.0 (JMS 2.0) shared Storage ZS3 series appliances, compared to ment at Oracle.
nondurable subscriptions and shared durable the previous generation. bit.ly/1dhmq3p
subscriptions in the Java Platform, Standard
Edition (Java SE) environment.
bit.ly/1cwmjTY Oracle Unveils Oracle SQL Developer 4.0
Oracle Mobile and Social Series The latest release of Oracle’s integrated forms to Oracle Database 12c.
Topics in this tutorial series include Native development environment, Oracle SQL “Harnessing the power of enterprise data
Mobile Login using Oracle Mobile and Developer 4.0, streamlines Oracle Database has never been easier for the more than
Social Access Management, Setting Up 12c adoption and helps increase produc- 3.3 million developers who use Oracle SQL
the Environment for Mobile and Social tivity. It allows users to manage pluggable Developer,” says Michael Hichwa, vice presi-
Access Management Hands-On, and databases and enhance reporting with dent of software development at Oracle.
Social Login using Oracle Mobile and dozens of additional charting options. “Leveraging Oracle SQL Developer 4.0 as a
Social Access Management. Users can also streamline development free support to Oracle Database 12c, organi-
bit.ly/1dqorub with an enhanced command-line interface, zations can adopt the world’s most capable
Oracle Application Testing improve code with source control support, database quickly and easily.”
Suite 12.3: How to Install and speed migration from third-party plat- bit.ly/1dhoatp
Oracle Flow Builder
This 15-minute video provides step-by-
step instructions to install Oracle Flow Oracle Eloqua Delivers Better Customer Experiences
Builder and the prerequisite software. Oracle has updated Oracle Eloqua Marketing a detailed view of the prospect. AppCloud,
bit.ly/19MY4Dh Cloud Service, its single platform that helps which provides a broad range of marketing
Java Mission Control and Flight marketers improve targeting, engagement, applications, has also been expanded.
Recorder Demo Series conversions, and analysis. Product enhance- “With the latest release of Oracle Eloqua,
This video series is an introduction to ments allow marketers to provide sales we are able to provide our customers with
the new Java Mission Control and Flight teams with a more-detailed view of their a single and flexible platform to manage
Recorder tools included with Java starting prospects, enable more-secure access to campaigns with owned, earned, and paid
with Java 7 Update 40.
marketing resources and data, and deliver a media objectives,” says John Stetic, vice
bit.ly/1cTwJy9
clearer view of pipeline performance to sales president of product managment at Oracle.
Oracle Sales Cloud Series and marketing teams. New features include “This integration not only provides an
This series of tutorials introduces the AdFocus, a platform intuitive and engaging user experience
different Application Composer objects to dynamically create, but, more importantly, optimizes the
you can use to customize information in manage, and measure performance of marketing campaigns by
customer, consumer, contact, and sales
display ads; and improving targeting, engagement, conver-
account team pages.
Profiler, a social user sions, and analysis across digital, social,
bit.ly/1kmfb3k
I-HUA CHEN
Oracle Big Data Appliance X4-2 Delivers Oracle Enterprise Manager 12c
Oracle Big Data Appliance X4-2, now avail- Özbütün, senior vice president of data ware- Broadens DBaaS Support
able, includes the entire Cloudera Enterprise housing and big data technologies at Oracle. Oracle has expanded Oracle Enterprise
technology stack and 33 percent more “Now that Oracle Big Data Appliance comes Manager 12c to support the multitenant
storage capacity for a total of 864 TB with the entire architecture and pluggable databases of
per rack. The new appliance is a com- Cloudera Enterprise Oracle Database 12c, making it easy to offer
prehensive big data platform optimized technology stack database as a service (DBaaS) and consoli-
for both batch and real-time processing and a significant date databases in clouds. Oracle Enterprise
that uses CDH (Cloudera’s Distribution increase in storage Manager 12c adds new automation capabili-
Including Apache Hadoop), Oracle capacity, enterprises ties to enable quick provisioning of database
NoSQL Database, Cloudera Impala, and can build an even clouds through self-service, saving admin-
Cloudera Search to satisfy diverse com- more cost-effective istrators time and effort. These new capa-
puting requirements. big data platform bilities can help organizations adopt Oracle
“Oracle Big Data Appliance X4-2 con- that can help gen- Database 12c faster and pave the way to a
tinues to raise the big data bar, offering erate new business DBaaS delivery model.
the industry’s only comprehensive appli- value quickly and “With the new release of Oracle
ance for Hadoop to securely meet enter- effectively.” Enterprise Manager 12c, customers can
prise big data challenges,” says Çetin bit.ly/16QOLd2 quickly deploy pluggable database-as-a-
service solutions that realize the advantages
of Oracle Database 12c’s new multitenant
Oracle Buys Responsys architecture,” says Sushil Kumar, vice
Oracle has agreed to acquire Responsys, riences across marketing interactions. president of product strategy and business
the leading provider of enterprise-scale “Recognizing the unique needs of the development at Oracle.
cloud-based B2C marketing software. The CMO in B2B and B2C industries, the Oracle bit.ly/VJ2aPP
recent addition of Responsys extends Oracle Marketing Cloud is now the only platform
Customer Experience Cloud, which includes to unite enterprise-class leaders in these
Oracle Commerce, Oracle Sales, Oracle historically distinct marketing-automation
Consumer Goods Industry
Service, Oracle Social, and Oracle Marketing fields,” says Oracle President Mark Hurd. Excellence Recognized
Cloud solutions. By bringing together “Our strategy of combining the leaders The 2013 Oracle Consumer Goods Industry
Responsys and Oracle Eloqua Marketing across complementary technologies signi- Excellence Awards were presented to five
Cloud Service in the Oracle Marketing Cloud, fies Oracle’s overwhelming commitment to regional and global consumer goods com-
Oracle equips chief marketing officers that winning and serving the CMO better than panies that use Oracle technologies. The
support industries with B2C or B2B business any other software company in the world.” categories and
models to drive exceptional customer expe- oracle.com/responsys winners: Integrated
Sales and Marketing/
Retail and Consumer
Oracle Buys Corente Insights: The Clorox
Oracle has entered into an agreement to a complete technology portfolio for cloud Company, Oakland,
acquire Corente, a provider of software- deployments with SDN offerings that virtu- California; Business
defined networking (SDN) technology for alize both the enterprise data center LAN and Transformation: Land O’Lakes, Arden Hills,
wide area networks (WANs). Corente’s the WAN, decreasing time to deployment of Minnesota; Integrated Sales and Marketing/
software-defined WAN virtualization services and increasing security and manage- Trade Promotion Management: Mars
platform accelerates deployment of cloud- ability across the enterprise ecosystem. Chocolate North America, Hackettstown,
based applications and services by allowing “Oracle customers need networking New Jersey; Product Innovation
customers to provision and manage global solutions that span their data centers and Management: Mary Kay, Dallas, Texas;
private networks connecting to any site in a global networks,” says Edward Screven, chief and Business Management and Control:
secure, centralized, and simple manner. corporate architect at Oracle. “By combining Schreiber Foods, Green Bay, Wisconsin.
Corente’s Cloud Services Exchange Oracle’s technology portfolio with Corente’s “This year’s award winners are further vali-
delivers, secures, and manages distributed industry-leading platform extending dation of how leading consumer goods com-
applications over diverse networks, globally software-defined networking to global net- panies are innovating and transforming their
and to any site over any IP network, regard- works, enterprises will be able to easily and businesses through the use of technology,”
less of the type of transport, access, applica- securely deliver applications and cloud ser- says Cassie Moren, senior director of con-
I-HUA CHEN
tion, or provider involved. vices to their globally distributed locations.” sumer goods industry marketing at Oracle.
Corente and Oracle are expected to deliver oracle.com/corente bit.ly/L7KkYS
because its various elements are incom- create and tear down their VMs. They don’t OpenStack
openstack.org
plete, immature, or not thoroughly tested, want to have to use one set of tools in their
Oracle Database 12c environment, discussing the tools used in Partners Earn Oracle Exadata
PL/SQL Programming the development process, and exploring
numerous Java technologies and practices. Optimized Status
By Michael McLaughlin
He also demonstrates the new, fully duplex Two Oracle partners have earned Oracle
Oracle Press
WebSocket web connection technology
oraclepressbooks.com Exadata Optimized status for their solu-
and its support in Java EE 7. The guide
also covers new language features in Java tions. Oracle Exadata Optimized status
Written by Oracle ACE
Platform, Standard Edition 8 (Java SE 8), is part of the Oracle Exastack Optimized
Michael McLaughlin,
such as lambda expressions and the new program, through which Oracle partners
Oracle Database 12c
Java SE 8 Date and Time API.
PL/SQL Programming can develop, test, and tune their applica-
offers in-depth information on the PL/SQL tions on Oracle Exadata Database Machine,
language and its extensibility to develop
Oracle PL/SQL Programming,
applications. With full coverage of the latest
Sixth Edition Oracle Exalogic Elastic Cloud, and Oracle
features and tools, this guide provides By Steven Feuerstein and SuperCluster engineered systems.
examples of web applications in native Bill Pribyl GE Digital Energy, a division of Oracle
PL/SQL, JSP, and PHP. The book explains O’Reilly Media Gold Partner GE, achieved Oracle Exadata
how to access and modify database oreilly.com
information, construct powerful PL/SQL Optimized status for Smart Metering
statements, execute effective queries, Thoroughly updated for Operations Suite
and deploy security. A Netflix case study Oracle Database 12c, the (SMOS) version 4.0.1.
example is used throughout the book as the sixth edition of Oracle
SMOS communi-
basis for all coding examples. The examples PL/SQL Programming, reveals new PL/SQL
collectively provide you with a reference features and provides code samples, cates with, operates,
both to how various programming concepts ranging from simple examples to complex and manages a util-
work and how components fit together to and complete applications, in the book ity’s smart meter
solve real-world problems. and on the companion website. The book
network and provides
covers language fundamentals, advanced
Troubleshooting Oracle Performance, coding techniques, and best practices for back-office integra-
Second Edition using Oracle’s procedural language. You tion between smart
will learn how to get PL/SQL programs up meter networks and
By Christian Antognini
and running quickly by following the book’s
Apress
instructions for executing, tracing, testing,
other systems such as
apress.com outage management
debugging, and managing PL/SQL code.
You’ll also gain an understanding of new applications.
Troubleshooting Oracle
Oracle Database 12c features and new con-
Performance, Second Noetix, an Oracle
ditional compilation directives.
Edition is a guide to diag- Gold Partner, achieved
nosing and resolving
performance problems in applications
Practical Oracle Database Appliance Oracle Exadata
backed by Oracle’s database engine. By Bobby Curtis, Fuad Optimized status for NoetixViews 6.2, an
This second edition has been updated Arshad, Erik Benner, Maris operational reporting solution, and Noetix
to cover the latest developments in Elsins, Pete Sharman, and Analytics 5.3, a packaged data warehouse
Oracle Database 11g Release 2 through Yury Velikanov
solution. Noetix provides instant opera-
Oracle Database 12c. Author Christian Apress
Antognini provides a systematic approach apress.com tional reporting and packaged analytics for
to addressing the underlying causes of Oracle Applications.
poor database application performance. Practical Oracle Database gedigitalenergy.com
He freely shares his experience while Appliance walks you through the components
and implementation of Oracle Database
noetix.com
explaining how the Oracle Database
engine executes SQL statements. Appliance. You will learn how to install and
configure Oracle Database Appliance with
Professional Java for confidence, make the right choices between OpenText Unveils Content
Web Applications the various configurations in order to realize
Management for
your performance requirements, manage
By Nicholas S. Williams
and monitor the appliance to meet business Oracle E-Business Suite
Wrox
requirements, and protect your data through OpenText, a provider of enterprise informa-
wrox.com
proper backup and recovery procedures.
tion management solutions and an Oracle
The book is appropriate for Oracle database
This guide shows Java Platinum Partner, has unveiled OpenText
administrators or system administrators
software developers and
who currently manage or will be imple- Extended ECM for Oracle E-Business Suite.
software engineers how
menting Oracle Database Appliance within The new application combines OpenText
to build complex web
a small to midsize business, or who are
applications in an enterprise environment. Content Suite, an enterprise content man-
using the virtualization feature set to deploy
Author Nicholas S. Williams begins with an agement solution for unstructured data,
numerous appliances within a large enter-
introduction to Java Platform, Enterprise
prise with many branch locations. with Oracle E-Business Suite to enhance
Edition 7 (Java EE 7) and the basic web
application, and then moves on to setting information management, governance,
up a development application server Look for other Oracle books at bit.ly/NjG3KM. and discovery.
opentext.com
TEAM Informatics Releases Bulk Mitchell & Associates Becomes Platinum Partner and Oracle Business
Loader for Oracle WebCenter Accelerators Qualified
TEAM Informatics, an Oracle Gold Mitchell & Associates has achieved Oracle The company also has achieved Oracle
Partner with Oracle WebCenter exper- Platinum Partner status in recognition of Business Accelerators Qualified status for
tise, has released Bulk Loader for Oracle its knowledge and experience with Oracle’s JD Edwards EnterpriseOne. Oracle Business
WebCenter Content. Bulk Loader enables JD Edwards EnterpriseOne and Oracle’s JD Accelerators are powerful, easy-to-use,
organizations to process large volumes of Edwards World. Mitchell & Associates has cloud-based rapid implementation tools
unstructured content stored in file shares, more than 20 years of international busi- that can reduce the time and costs of
including content in disparate groups and ness and technology service experience implementing enterprise applications for
sites. Bulk Loader crawls file shares to dis- with JD Edwards enterprise resource plan- growing businesses.
cover files and then arranges discovered ning solutions. maa-imcs.com
objects into manifests by content owner.
From those manifests, content owners
can apply actions to the content, and
Partners Earn Oracle Validated Integration
Bulk Loader processes the content in real The following seven partners have earned enables real-time invoice processing from
time or at a scheduled time outside of Oracle Validated Integration, demon- multichannel capture to payment within
business hours. strating that their software products have Oracle E-Business Suite.
teaminformatics.com been tested by Oracle to work with Oracle Oracle Gold Partner Justifacts Credential
Applications and specific Oracle Fusion Verification: Oracle Validated Integration
Middleware solutions. between Justiweb and Oracle Taleo Business
Certus Solutions Announces Oracle Platinum Partner CRMIT Solutions: Edition Cloud Service. This integration
Oracle Accelerate for Midsize Oracle Validated Integration between enables Justiweb background checks to be
Companies Solution for Financial CRM++ Asterisk Telephony Connector requested and retrieved via Oracle Taleo
and Professional Services and Oracle Sales Cloud. CRM++ Asterisk Business Edition Cloud Service. More than
Certus Solutions, an Oracle Gold Partner, Telephony Connector integrates open source 100 background search options are avail-
has announced Engage Service Wrap, an Asterisk PBX telephony solutions with able from Justiweb, including criminal
Oracle Accelerate for Midsize Companies Oracle Sales Cloud. background checks, Social Security number
solution for midsize financial and pro- Oracle Gold Partner Extended Content verification, employment verification, and
fessional services companies. Based on Solutions: Oracle Validated Integration degree confirmation.
Oracle Human Capital Management Cloud, between MediaStore 2.0 and Oracle Oracle Gold Partner RIVS: Oracle
Certus Engage Service Wrap delivers WebCenter Sites 11g and Oracle ATG Web Validated Integration between RIVS Digital
global human resources, talent manage- Commerce 10. MediaStore is a digital asset Interview 2.0 and Oracle Taleo Business
ment, compensation, benefits, payroll, management solution based on Oracle Edition Cloud Service. The integration
workforce lifecycle, recruitment, and WebCenter Content that allows assets to be allows RIVS digital interviews to be created
learning functions. published to Oracle WebCenter Sites and and reviewed within Oracle Taleo Business
certus-solutions.com Oracle ATG Web Commerce. Edition Cloud Service. RIVS provides written,
Oracle Gold Partner Intellinum: Oracle voice, and video interviewing options.
Validated Integration between MWA Express Oracle Gold Partner Thomson Reuters:
Orasi Software Earns Gold Server and Oracle E-Business Suite 12.1. Oracle Validated Integration between
Partner Status MWA Express Server allows personalization ONESOURCE Indirect Tax Integration and
Orasi Software, a software testing services of Oracle Mobile Supply Chain Applications Oracle E-Business Suite 12.2. ONESOURCE
provider, has earned Oracle Gold Partner and Oracle Warehouse Management to Indirect Tax Integration determines and
status. Orasi has delivered testing services streamline operations, add and enforce busi- calculates tax based upon the attributes of
to Oracle customers for more than a decade. ness rules, and improve the user experience. a transaction, reduces manual jurisdiction
Orasi helps Oracle customers verify Oracle Personalizations can be applied at the site, code or tax code assignments, and provides
E-Business Suite configuration, workflow, responsibility, organization, and user levels. robust, vendor-charged tax and accrual func-
upgrade activities, business process, and Oracle Gold Partner ITESOFT: Oracle tionality for procure-to-pay process flows.
data requirements, Validated Integration between ITESOFT crmit.com
and its services .Balance 2.5 and Oracle E-Business Suite extended-content.com
include test automa- 12.1. ITESOFT.Balance integrates supplier intellinum.com
tion, performance invoices processed by external applications itesoft.co.uk
Lindy Groening
Oracle Accelerate for Midsize Oracle Cloud Marketplace partner solutions Oracle Gold Partner Perceptive Software:
Companies Solution for leverage Oracle Cloud platform services and The enterprise content management and
Semiconductor Companies Oracle software-as-a-service (SaaS) appli- business process management solutions
cations. Six partners have recently released provide access to scanned documents,
solutions to Oracle Cloud Marketplace. electronic files, e-mail, and video within
Jade Global, an Oracle Platinum Partner, has
Oracle Gold Partner Earnix: The banking Oracle Sales Cloud.
announced an Oracle Accelerate for Midsize
and insurance solutions integrated with Oracle Silver Partner CloudsPlus: The
Companies solution using Oracle Warehouse Oracle Sales Cloud empower financial Microsoft Exchange integration solution
Management and designed for semicon- services companies to leverage predictive synchronizes Microsoft Outlook e-mail,
ductor companies. Jade’s new offering modeling and decision-making tools to calendar, tasks, and contacts with Oracle
align customer offers. Sales Cloud.
eliminates manual entry and automates and
Oracle Gold Partner Gainsight: The Oracle Silver Partner Veer West LLC:
optimizes material handling processes to customer success application suite enables FormAssembly enables web form creation
improve order fulfillment time and supply companies using Oracle Marketing Cloud to through a drag-and-drop interface, along
chain visibility. It incorporates Jade’s rapid, monitor customer satisfaction and product with data centralization and synchroniza-
engagement in real time, generate predic- tion with third-party applications.
phased-implementation methodology, and
tive alerts for at-risk customers, and iden-
leverages integrations tify up-sell opportunities. earnix.com
for contract manufac- Oracle Gold Partner iEnterprises: Lotus gainsight.com
turers and third-party Notes Connector facilitates integration ienterprises.com
logistics companies, between Lotus Notes and Oracle Sales
perceptivesoftware.com
Cloud, and synchronizes Lotus Notes
Lindy Groening
Company: Dell Inc., a multinational IT Company: Portrix Systems, an Oracle partner Company: Raastech, a systems integrator
corporation and provider of managed services and consulting and professional consulting services company
Job title/description: Oracle E-Business Suite Job title/description: Founder and managing specializing in Oracle Fusion Middleware
architect/strategist for corporate IT, responsible director, responsible for collaborating with Job title/description: Technical director,
for architecture, business analysis, technology independent software vendors and managing providing technical management and consulting
evaluation and direction, implementations, and a team that implements and operates related to the Oracle Fusion Middleware stack
application support infrastructure stacks Location: Washington DC
Location: Austin, Texas Location: Hamburg, Germany Oracle credentials: Oracle Certified Expert
Length of time using Oracle products: More Oracle credentials: Oracle Certified (Oracle SOA Architect, Oracle SOA Infrastructure
than 15 years Professional (Oracle Database 10g), Oracle Implementation) with 18 years of experience
Virtual Desktop Infrastructure 3 Certified using Oracle products
Implementation Specialist, Sun ZFS Storage
Appliance Certified Implementation Specialist,
What’s your favorite tool on the job? The and Sun Flash Storage Certified Implementation
Form Personalization feature in Oracle Specialist, with 10 years of experience using What’s your favorite tool on the job? The
E-Business Suite 12. You can do so much Oracle products whiteboard. Nothing beats sketching out
with personalization—including moving it a design, spending hours defending the
across instances through FNDLOAD—and, How did you get started in IT? As a teenager, technical merits of your solution, and
unlike customized applications, Oracle some friends and I founded a club that watching your colleagues tear it apart. In
solutions support it. organized LAN parties—mostly for the kick my opinion, the whiteboard has been—and
Which Oracle solutions are you currently of getting to play with networking and Linux will continue to be—one of the few tools
finding most valuable? Oracle Fusion server technologies. That fascination with that improves technical architectures while
Middleware really gives IT a significant technology stuck, and I ended up with a job fostering teamwork and collaboration.
time-to-solution advantage, thanks to that allows me to continue playing with the What technology has most changed your
its modularity and its ability to work latest technologies. life? I know it sounds clichéd, but . . . the
across heterogeneous environments. One You’ve taken Oracle University [OU] classes internet. Just 15 years ago, I bought a 600-
component of Oracle Fusion Middleware in the past. What led you to do this? I page book hoping to find a paragraph on
that we use extensively for all our application wanted to learn in a structured manner and the function I needed help with. Nowadays,
integrations is Oracle SOA Suite. In particular, also get away from daily business to focus my entire solutions are a click away.
doing SOA integrations using Oracle Service thoughts on learning. I flew to New York and What would you like to see Oracle, as
Bus has made our lives much simpler. San Francisco for my OU classroom training, a company, do more of? I’d love to see
What’s been your favorite Oracle technology which allowed me to both enjoy classes in Oracle build next-generation automated
conference experience? COLLABORATE 12, English and see some amazing places. intelligence into most products. Think
in Las Vegas, Nevada, where I was honored What’s been your favorite Oracle technology automatic segment space management or
with the Member of the Year award by conference experience? Being there at dynamic garbage collection, but times a
the Oracle Applications Users Group. The Oracle OpenWorld 2013 in San Francisco, thousand. It’s not far-fetched to think that
conference was an awesome experience— which coincided with the final races of products can mature to a point where they
great content, excellent networking, and lots the America’s Cup—and the greatest do the analysis that we as administrators do
of knowledge sharing. turnaround in sports history. today and take action accordingly.
E
stablished by its family founders more than a half a containers of feed each year. In addition, the company has
century ago, Anderson Hay & Grain has become the recently expanded into the Southwest, procuring alfalfa
leading US exporter of animal forage. Its reputation from growers in California, Utah, Arizona, and New Mexico.
for the highest quality products has made Anderson the While the business model might seem simple,
preferred supplier for dairies in Japan and Korea, horse Anderson’s operation is remarkably complex. Each day,
tracks in Hong Kong, and horse lovers in the Middle East. hundreds of containers must be received, loaded with
Anderson has more than 300 employees, with more than the right product, and then shipped and tracked to
500 employed during its seasonal peak. Its staff is head- their destinations. The quality of each shipment must
quartered in Ellensburg, Washington, and its buyers are be tracked as well, from planting through delivery. Then
located across the western United States. there are the vagaries of global business: rising and
falling energy costs, varying market demand, fuctuat-
A Great Idea Gets Growing ing exchange rates, and the list goes on. “We have had
Every thriving business begins with a great idea. For Ron people come in and say ‘Hay company? How complex
Anderson, cofounder of Anderson Hay & Grain, the vision can that be?’” Mirro says. “We are very complex when it
was clear: turn the local business of producing animal feed comes to a logistics model and to matching the quality
into a global enterprise. Western farmers grow some of the of product with the customer’s needs.”
fnest Timothy and alfalfa hay and grass straw in the world.
Ports in Portland, Oregon; Tacoma and Seattle, Washington; Utilizing IT Services to Support a Global Business
and Long Beach, California, offer ready access to Pacifc To manage the many variables, it’s critical to have
Rim nations such solid, current data available. But Anderson Hay’s
as Japan, where expanding business made demands on its information
farmers produce infrastructure that a home-grown IT system could not
high-quality dairy meet. Change was needed and Anderson chose Oracle
and meat products E-Business Suite. Anderson also moved to a new IT
(like famous Kobe support model. The Oracle suite would be managed
beef) but lack not by the Anderson IT team, but by an outsourcing
space to grow company. “We wanted to focus on what do we do well:
forage. The ques- growing and acquiring the right forage for our custom-
tion was how to ers, ensuring that it’s manufactured to their specs and
bring product and delivered on time throughout the year,” Mirro says.
customer together While the software suite delivered results for Anderson,
across the Pacifc. the initial service provider did not. Mirro looked at all
High-value imports like computers, televisions, and the options, from bringing the work back in house
clothing arrive at US ports protected in steel containers the to using a different outsource vendor. Reliability and
size of truck trailers. Because imports exceeded exports, security were key criteria. “If the Oracle suite should
many containers left port empty. Where others saw a fail,” Mirro says, “it would absolutely shut our busi-
waste of money, Anderson saw opportunity. Shippers ness down.” After interviewing and visiting several
were paying to return the containers, empty or not, and competitors, Mirro chose AT&T to host and manage the
they were happy to ship containers flled with Anderson’s Oracle E-Business Suite business application software
forage products at rates the farmers in Japan could afford. and subsequently implement an enhanced version of
“They felt they could offer us cheap rates and that our Oracle Business Intelligence Enterprise Edition. This
products would provide good ballast,” says Nathan Mirro, gives users a “dashboard” view of up-to-the-moment
IT director for Anderson. business status. With an IT team numbering just two
From its start with dairy farmers, Anderson has ex- people, Mirro depends heavily on his AT&T support
panded to the Japanese beef industry and to other Asian team. “I don’t have time to chase issue after issue,”
markets: Korea, Taiwan, China, Vietnam, Malaysia, and he says. “I really need to know that when I have
Singapore. Today Anderson Hay & Grain exports 22,000 communicated a problem, I am understood and that
[APPLICATION MANAGEMENT CASE STUDY
they are going to follow up. We can then focus on our core screen tablet devices. “Typically apps are written for their
business, which is selling hay and straw products. ease of use,” Mirro says. “We turned to AT&T, the pioneers
“Oracle is big, but we want it to be treated as small in of a lot of mobile solutions. Rather than us going out and
our business,” he continues. “AT&T has made it a small trying to fnd the right vendor that will work with AT&T and
thing. Now I don’t have to sweat the small stuff, because with Oracle, we asked AT&T to help us fnd the right solu-
they are sweating it for me.” tion.” Actsoft coupled with AT&T was the answer.
Anderson Hay utilized Actsoft Advanced Wireless Forms
Data from the Roots of the Business to create an electronic contract designed
Mirro next wanted to extend the functionality to the feld specifcally for use on tablets. “It’s very
and to purchasing. As buyers for Anderson Hay signed easy to use. You point, select, and We wanted to focus on
contracts with producers across the West, they entered choose dropdown options and lists of what do we do well:
product quality grades, volumes, delivery schedules, prices, values,” Mirro says, “so we can step the growing and acquiring
and dozens of other key details in multipart paper forms buyer through the process.” Now as soon the right forage for our
with over 50 felds in all, plus notes. They then sent the as the buyer completes a contract, the customers, ensuring that
agreements to headquarters, where the data was manu- farmer enters an electronic signature and
it’s manufactured to their
ally entered in the Oracle applications. Forms could be the buyer presses “submit.“ The contract
specs and delivered on
incomplete, delayed, or lost. Some buyers would enter moves over the AT&T wireless network
into handshake agreements with the producers, planning to the Actsoft server and then into the
time throughout the year.”
to fll out their contract forms at a later time. Errors and Oracle Purchasing and Oracle Inventory —Nathan Mirro, IT Director,
Anderson Hay & Grain
oversights would result, and the possibility of damage to modules hosted by AT&T. Buyers’ trucks
Anderson Hay’s image was a serious concern, especially as are equipped with printers and mobile
the company worked to build its reputation among new hotspots so farmers get a printed copy on the spot.
producers throughout the West. Gone are the delays caused by mail transport, incom-
“Getting that information in was always a challenge plete forms, and incorrect data entry. Completing a contract
during the frenzy of harvest,” Mirro says. “We’re buying moves so quickly that buyers can enter 30 percent more
in May through September to last us through June or July useful data (such as import requirements), yet still save
of the following year. We’re committing a lot of dollars in time. Mirro is tracking other performance indicators and
a very short period of time. It’s a real coordinated dance sees the possibilities of increased improvement. “The
of commitments, down payments on products, cash turns, delay from a contract being handwritten to being entered
and the speed of product movement. All that information averaged 72 hours,” says Mirro. He estimates that once it
was on a piece of paper, being sent by courier up to our arrived on site, each paper contract required a 30-minute
corporate headquarters for entry into our Oracle system.” review to ensure it was complete. Today, that review might
As managers met for Monday status reviews, they had take 30 seconds. “Now that it’s electronic, we are down to
to worry that key data might be missing. “There was al- ten minutes end to end, fully validated and imported.”
ways a gap you had to worry about,” Mirro says. “Is there Mirro has set a goal that 80 percent of his 18 buyers
a bunch of business out there that we just don’t know will use the tablet contract. The incentive to the buyers is
about yet?” Overbuying in one area can impact forecasts the time saved, because they now can complete the deal
in another. Information delays could impact purchasing onsite. “The buyers can enter a lengthy contract in fve to
trends that in turn could hamper the forecasting of cash ten minutes, inputting all the different felds, and get the
fow and accounts payable processing, ultimately costing signature of the vendor right then. It really improves their
millions of dollars. world,” says Mirro.
The company had tried to solve the paper problem Indeed, improvements extend all across the Anderson
before, using laptop computers and virtual private network Hay supply chain: from the growers who win faster con-
(VPN) connections to link buyers directly into the Oracle frmation of sales; to the managers matching supply and
system. “None of those really stuck,” Mirro says. “The demand, cost, and sales price; and to the shippers and
people who are really good buyers are very relational farmers who need the right fodder at the right place, and
people. And typically they’re kind of low tech. That was the right on time. n
[
challenge—how do we take nontechnical people, give them
a piece of high-end technology, and make it so easy to use
that there’s a high adoption rate?” For more information contact
an AT&T Representative or visit
Working with the Pioneers www.att.com/oracle
The answer came with the arrival of user-friendly touch-
ADVERTISING SUPPLEMENT
multi-business-unit
company like ours,” says
Christian Anschuetz,
CIO at UL.
33
SAFETY IN
TRANSFORMATION
Oracle solutions support a business transformation at UL.
BY DAVID A. KELLY
Christian Anschuetz, CIO at UL, sees the business benefits of Oracle’s expertise and support of UL’s transformation. “We took advantage of Oracle’s depth of
knowledge and breadth of experience to get this transformation done. . . . Oracle is at the very center of what we’re doing now, and it’s providing the foundation for the
second century of growth for our company.”
“UL is an increasingly diverse company, with a different footprint and standards up front, so that by the time a product is manufac-
than we had just a few years ago,” says Anschuetz. tured, it can quickly enter the supply chain and the market.
“Our transformation has all been about putting an organiza-
Business and IT Transformation tion and services in place that can help our customers win in the
For UL, focusing on its customers and their needs was the ultimate marketplace,” says Anschuetz. “We’ve changed our orientation, our
goal of the transformation. The company helps its customers create mindset, and our portfolio of products and services to all focus on
new products that can navigate a complex set of global regulations helping our customers move as quickly as possible from ideation to
When it comes to large, transformational projects, technology transformation success: about customizations.
Christian Anschuetz, CIO at UL, feels strongly that 1. Get and keep the unwavering, absolute full 5. Put your best people on the transformation
CIOs and executives shouldn’t hesitate. “Even commitment of your executive suite and full time. This isn’t a side job.
though large-scale technology transformation your boss. 6. Get the highest level of executive sponsorship
projects fail, you don’t need to be afraid,” says 2. Define and execute a communication plan. from your partners.
Andrea Mandel
Anschuetz. “You simply have to approach the 3. Create and follow official guidelines for 7. Move fast and iterate. Break the project
challenge in the right way in order to succeed.” implementing the transformation. into chunks.
Anschuetz has the following eight tips for 4. Clearly define who will make decisions 8. Build momentum and never stop driving.
getting their products on the shelves.” users, as well as providing fine-grain access
With all those business changes came snapshot rights to those users so that the critical
huge, fundamental changes to the infra- UL information that UL provides is appropri-
structure technology. The organization ul.com ately safeguarded. At the same time, UL
needed to be able to seamlessly support Location: Northbrook, Illinois is leveraging Oracle Fusion Middleware
multiple, distributed geographical locations. Employees: 11,000 to create new opportunities from its
Oracle products: Oracle Database; Oracle
After evaluating different technology vast sources of data. “Oracle SOA Suite
E-Business Suite (more than 40 distinct
solutions, UL decided to implement the full modules, including Oracle iReceivables, Oracle is the connective tissue that we’re using
Oracle stack, from Oracle Exadata and Oracle iProcurement, and Oracle Compensation to connect legacy and new applications
Exalogic engineered systems up to an uncus- Workbench); Oracle SOA Suite (including Oracle together to allow us to harvest and create
tomized Oracle E-Business Suite deploy- Enterprise Service Bus and Oracle Business value from the hundreds of thousands of
Activity Monitoring); Oracle Fusion Middleware;
ment. UL selected Oracle E-Business Suite transactions we have with our customers
Oracle Identity Management; Oracle
for its completeness and robust functionality, Exadata; Oracle Exalogic; Oracle Exalytics; every single year,” says Anschuetz.
Oracle Exadata and Oracle Exalogic for speed Oracle Business Intelligence Enterprise And while UL has put the foundation for
and scalability, Oracle Fusion Middleware to Edition; Oracle WebCenter; Oracle Business big data in place with Oracle solutions such
integrate non–enterprise resource planning Intelligence Applications; Oracle Enterprise as Oracle Exadata and Oracle Exalytics,
Governance, Risk, and Compliance Manager;
(ERP) functions and systems from acquired the company is focused on smart data and
Oracle Enterprise Manager; Oracle Application
companies, and Oracle Identity Management Integration Architecture; Siebel applications on helping its customers distill the critical
to control both user and customer access. information needed to optimize their prod-
Partnering with a single vendor, Oracle, pro- ucts and services.
vided UL with higher degrees of integration; faster implementation “Our new Oracle-based platform is going to allow us to intel-
times; and, most importantly, a capable partner that fundamentally ligently combine our services with information to create more value
invested in the transformation’s success. for our customers and ourselves,” says Anschuetz. “It’s not just
When the technology transformation was complete, UL had about creating a giant repository or big data warehouse. It’s about
the entire worldwide company using a single instance of Oracle moving data fluidly to the right point at the right time to create
E-Business Suite running on Oracle Exadata and Oracle Exalogic. UL the right value.”
completed the final part of its 18-month deployment in December
2013, on time and under budget. In fact, the project was so suc- Building a Safer Future
cessful that UL was able to expand the scope of the project mid- With its technology and business transformation projects complete,
stream to include the integration of three additional businesses that UL is finding that success builds on success. “As a result of IT and
had been acquired during the project’s implementation. business transformation, we’re going to be even more effective in
“As a CIO, I’ve completed several ERP implementations. I’ve the marketplace,” notes Anschuetz.
never seen anything like this anywhere,” says Anschuetz. “It was due And for UL, a key part of developing that winning momentum was
to the superlative team we have and the great commitment of the leveraging Oracle’s expertise. “We took advantage of Oracle’s depth
CEO. In less than 18 months, we completely transformed our front- of knowledge and breadth of experience to get this transformation
end and back-end systems. We went into this project knowing the done. We trusted they knew it better than we did, and our trust
risks, but we chose Oracle as a partner because we have a lot of faith paid off,” says Anschuetz. “Oracle is at the very center of what we’re
and confidence in Oracle.” doing now, and it’s providing the foundation for the second century
As anyone would expect, UL did encounter a couple of hardware of growth for our company.”
and software problems during deployment. However, in both cases,
Oracle provided production patches within 24 hours. “Oracle was
not going to allow a technology problem to stop our company from
David A. Kelly (davidakelly.com) is a business, technology, and travel
focusing where it needed to focus, which was on the business trans-
writer who lives in West Newton, Massachusetts.
formation problem,” says Anschuetz.
Next Steps
Benefits and Big Data
UL’s new Oracle-based stack provides significant benefits. “We
WATCH
have better line of sight into the consumption behavior of our UL and the Big Data Challenge
customers so we can understand where they’re deriving value bit.ly/1b6tBia
and where we can focus ourselves to extend and create even more UL Standardizes ERP Processes for Over 60,000 Manufacturers
value,” says Anschuetz. bit.ly/1cCAzr6
UL is using Oracle Identity Access Manager to provide a security LEARN more about Oracle engineered systems
oracle.com/us/products/engineered-systems
framework for identifying and authenticating internal and external
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates.
Java Developer ORACLE ADF BY FRANK NIMPHIUS 37
old Java object (POJO), based on the HTTP Oracle JDeveloper 12c application you will zip file content.
method being used in the request. To bind build, some parts of the hands-on applica- 2. Open the oramag030414/starter/
a Java method to a URI, the @Path annota- tion have been prebuilt for you. OraMagEjbRestService folder, and select
tion is used. The optional @ParamName Note: To access the departments and the OraMagEjbRestService.jws file. Click
and @QueryPram annotations are used for employees data, you’ll use two classes— Open to load the workspace.
extracting parameters from the request URI. DepartmentService and EmployeeService— 3. Select Window -> Database ->
To associate a Java method with a spe- to implement the REST web services. For the Databases, and expand the
cific HTTP method used with a REST URI, purposes of this article and the hands-on OraMagEjbRestService node to
JAX-RS defines the following annotations: activity, the code within each class will be display the hrconn node.
abbreviated. In a real-world implementa- 4. Right-click hrconn, and select Properties
Annotation Description tion, you would typically support the full from the menu. Edit the database con-
@GET Marks a Java method in a POJO to handle CRUD methods for each resource. nection information to work with your
GET requests for a URI
database setup. Test the changes (click
@POST, @PUT Mark methods that update or create a
resource for a URI Getting Ready Test), and click OK.
@DELETE Marks a method to handle the deletion of The two Oracle JDeveloper 12c workspaces Next, start the Oracle WebLogic Server
a server-side resource for a URI
required for the hands-on instructions instance integrated with Oracle JDeveloper.
in this article, one for the REST service To start the Oracle WebLogic Server, select
In addition, @Produces and @Consumes and one for the sample application, are Run -> Start Server Instance.
annotations are used for a Java method to contained in the o24adf-2065567.zip file, If this is the first time you’ve run the
define the payload format of a request as located at bit.ly/18NIYgm. integrated Oracle WebLogic Server, a Create
well as the format of the response so that Download the zip file and unzip it into Default Domain dialog box will open. Create
clients and the server can negotiate the con- a directory whose name does not contain a password for the default Oracle WebLogic
tract of their communication. blank-space characters. Server domain.
As you will see, with Oracle JDeveloper 12c, The OraMagEjbRestService workspace Note: To ensure that the integrated
you can build Java-based REST services contains a ready-made EJB Model project Oracle WebLogic Server listens for localhost
declaratively by using a configuration wizard and a project to expose the EJB model as a and the IP address of your computer, don’t
that adds all these annotations for you. REST service. It requires access to the Oracle select an address from Listen Address.
Database HR sample database schema. To Click OK to save your changes and to
Sample Application Overview prepare this workspace for your environ- create and configure the default domain for
In following this article’s hands-on instruc- ment, you must configure the database con- Oracle ADF. The Oracle WebLogic Server will
tions, you will build a master-detail Oracle nection for the workspace. To configure the create a default domain and start the server.
ADF web application that queries data from connection, do the following: Note: Wait for the integrated Oracle
the database through Enterprise JavaBeans 1. In Oracle JDeveloper 12c, select File -> WebLogic Server to start before proceeding
(EJB)–backed REST services; Figure 1 shows Open and navigate to the directory con- to the steps in the next section. The first
the application. To limit the scope of the taining the unpacked sample application time you start the server, it builds the Oracle
Figure 2: HTTP Analyzer displaying the result for the GET request
WebLogic Server domain, which may take whenever a Get request is issued to the figuration, because it includes support for
several minutes. REST root URI (oramag/department). update and delete operations.
13. Click Next. 20. In the Application Navigator, in
Creating the Department REST Service 14. Click OK in the Return Type Warning RestService, Application Sources,
To create the department REST service, dialog box. The hands-on sample uses oramag.sample.one, two, four-
begin by selecting Window -> Applications. JAXB annotations added to the EJB enti- teen, and rservice, right-click the
The OraMagEjbRestService workspace con- ties to parse Java objects to XML and vice EmployeeService.java class and choose
tains two projects: versa, so you can ignore this dialog box. Create RESTful Service.
• The Model project uses Oracle TopLink and 15. Click Finish. Oracle JDeveloper opens the 21. In the Create RESTful Service from Java
an EJB session bean to query and update DepartmentService.java class in the Java Class dialog box, change the Root Path
the Departments and Employees tables in code editor. The class shows the getAll input field to oramag/employee.
the HR schema. method annotated with 22. In the Configure HTTP Methods table,
• The RestService project references the edit the methods as follows:
EJB session bean in the Model project @GET
from two JavaBeans—DepartmentService @Produces("application/xml") Name getByDepartmentId
and write data. The two JavaBeans repre- Consumes <leave empty>
sent the resources you will now expose as The DepartmentService class itself is Produces application/xml
To create the department service, do root URI for this REST resource:
the following: Name update
Sources, oramag.sample.one, two, 16. Right-click the DepartmentService.java Produces <leave empty>
fourteen, and rservice. file, and choose Test Web Service to test Path /
7. In the Create RESTful Service from Java for the REST web service base URI and Consumes <leave empty>
Class dialog box, change the Root Path obtain a list of departments, as shown in Produces <leave empty>
to define the base URI to access the 18. The log window shows a REST
department source. service base URL that looks similar 23. Next, select the GetByDepartmentId
8. In the Configure HTTP Methods table to http://127.0.0.1:7101/hr- method and edit the Configure
(note that you may need to resize the restservice-context-root/resources/ Parameters table as follows:
dialog box to see the full label string), oramag/department/.
select the getAll entry. The getAll() 19. Make a note of the actual REST URL—you Name departmentId
.java accesses the EJB business service What you just did: You used Oracle Annotation PathParam
to query a list of departments from the JDeveloper’s wizard for creating Parameter departmentId
Departments table in the HR schema and RESTful services to REST-enable the Default <leave empty>
returns the result as an XML response. DepartmentService class and to expose the Encoded <leave unchecked>
9. Because read requests in REST are Get public getAll() method for GET access. The
requests, select GET from the Type REST-specific annotations added to the Java 24. Next, select the removeById method
column for the getAll entry. file are from Jersey, the Java EE 6 JAX-RS and edit the Configure Parameters table
10. No input arguments are required, so REST Reference Implementation bundled as follows:
leave the Consumes field empty. with Oracle JDeveloper. Finally, you tested
11. Click the … button to the right of the the REST service, using Oracle JDeveloper’s Name employeeId
Produces field, select application/xml, integrated HTTP Analyzer. Data Type int
12. Double-click in the Path field, and add a Creating the Employee REST Service Parameter employeeId
forward slash (/) as a value. This way a list Next, configure the EmployeeService class Default <leave empty>
of departments is queried and returned as a REST service, which requires more con- Encoded <leave unchecked>
25. Click Finish and OK to confirm the file content. 46. Click Next and then Test URL Connection.
Return Type Warning. 31. Open the oramag030414/starter/ 47. Click Finish when the test is successful.
26. To test the service, right-click the OraMagRestClientApp folder, and select Otherwise, check and correct the pro-
EmployeeService class and choose Test the OraMagRestClientApp.jws file. vided REST URI.
Web Service. 32. Click Open to load the workspace. What you just did: In this section, you
27. Change the URL field value in the HTTP 33. Select the Model project, and choose created a REST data control for the depart-
Analyzer to http://localhost:7101/ File -> New -> From Gallery -> Business ment resource. The data control exposes a
hr-restservice-context-root/ Tier -> Web Services -> Web Service Data single method for the service GET request
resources/oramag/employee/60, and Control (SOAP / REST) from the Oracle and expects an XML response to represent
confirm the change by pressing the JDeveloper menu and the New Gallery a list of departments. The XML response is
Enter key. dialog box, and click OK. defined by an XSD that has been created
28. Click Send Request to see the list of 34. In the Create Web Service Data Control in preparation for this sample application
employees for department 60. dialog box, enter DepartmentRestDC in with the File -> New -> From Gallery ->
29. Make a note of the service root the Name field. Business Tier -> TopLink/JPA -> JAXB XML
URL, http://127.0.0.1:7101/hr- 35. Select REST. Schema from Content Model option in the
restservice-context-root/resources/ 36. Click the green plus (+) icon next to the OraMagEjbRestService -> RestService project.
oramag/employee. Connection field.
What you just did: You successfully config- 37. In the Create URL Connection dialog Creating the Employee REST
ured the two JavaBeans in the RestService box, enter DepartmentsRestConn in the Data Controls
project as services. Each service represents Name field. The employee REST data control you will
a resource: a department or an employee. 38. Enter http://127.0.0.1:7101/hr-rest- build next is a bit more complex than the
In this section, you performed a more service-context-root/resources/ department data control, because it exposes
complex configuration that included input oramag/department in the URL three REST HTTP methods—for GET, POST,
arguments defined for methods. Endpoint field. and DELETE—and also needs to define
The getByDepartmentId and removeById Note: The URL Endpoint URL does not input arguments for GET and DELETE. To
methods both required a single input argu- have an ending slash. create the employee REST data controls,
ment. Adding /{name} to the REST URI path 39. Click OK, and then click Next in the Create 48. With OraMagRestClientApp open in
adds an annotation that enables the request Web Service Data Control dialog box. the Oracle JDeveloper Application
to reference a resource, such as a depart- 40. Click the green plus (+) icon next to the Navigator, right-click the Model project
ment, by a unique locator. Resource Paths label. and select New -> Web Service Data
So the annotated method would know 41. Change the Resource Paths value from Control (SOAP / REST).
where to get the required input argument, /path0 to /, and select GET. 49. In the Create Web Service Data Control
you added the PathParam annotation with 42. Enter getAllDepartments as the dialog box, enter EmployeeRestDC in the
the name of the variable in the request. The Method Display Name value for GET. Name field.
name of the variable is the same as the vari- 43. Click Next. 50. Select REST.
able name added to the REST path, such as 44. Select getAllDepartments under 51. Click the green plus (+) icon next to the
departmentId in /{departmentId}. Resource Methods, and click the browse Connection field.
Note: The Oracle JDeveloper log window button (magnifier icon) next to the 52. In the Create URL Connection dialog
(Window -> Log) shows the URL for Response XSD field. box, enter EmployeesRestConn in the
the REST Web Application Description 45. In the dialog box, open the xsd folder, Name field.
Language (WADL) file. Clicking this link select the DepartmentsList.xsd file, and 53. Enter http://127.0.0.1:7101/hr-rest-
opens the WADL file in a tab panel, showing click Open. If no XML Schema Definition service-context-root/resources/
all resource URIs and their HTTP methods (XSD) file is provided, Oracle JDeveloper oramag/employee in the URL
defined for the service. will generate one when verifying the Endpoint field.
REST URIs. 54. Click OK and then Next in the Create Web
Creating the Department REST Note: Because generated files usually Service Data Control dialog box.
Data Controls require some editing, this sample 55. Click the green plus (+) icon next to the
REST services are consumed in Oracle ADF application provides predefined Resource Paths label.
by use of the new REST service data control XSD files. Due to a known issue in 56. Change the Resource Paths value
(REST DC). To create the REST DC model, Oracle JDeveloper 12.1.2.0, however, from /path0 to /##departmentId##,
30. In Oracle JDeveloper, select File -> Open it is recommended that you use and select GET. Enter
and navigate to the directory containing generated XSD files in your own getEmployeesByDepartment as the
the unpacked sample application zip application development. Method Display Name value for GET.
Note: The ##departmentId## flag 68. Click Next, and then click Test Data Controls panel, and drop it in the
defines parameters in the Oracle ADF URL Connection. Employees area in the visual page editor.
REST data control. The parameter names 69. Click Finish when the test is successful. 80. Choose Table/List View -> ADF Table
will show as arguments to the methods Otherwise, check and correct the pro- from the Create menu.
in the data control panel. vided REST URI. 81. In the Create Table dialog box, select
57. Again, click the green plus (+) icon next 70. In the Application Navigator, expand Single Row and Read-Only Table.
to the Resource Paths label. the Data Controls panel and refresh it by Optionally, reorder the employee attri-
58. Change the Resource Paths value from clicking the refresh button (icon with butes so they’re in a more logical order
/path0 to /, and select POST. Enter two arrows). The two data controls are if you like.
updateEmployee as the value of Method now displayed. 82. Click OK.
Display Name for POST. What you just did: In this section, you 83. In the Edit Action Binding dialog box,
59. Again, click the green plus (+) icon next created a REST data control for the enter #{bindings.departmentId.
to the Resource Paths label. employee resource with three methods inputValue} as the departmentId value
60. Change the Resource Paths value for read, update, and delete operations and click OK.
from /path0 to /##employeeId##, and on the REST service. Using ##<name>##, 84. Click the table in the Employees area of
select DELETE. Enter removeEmployee you defined parameters to hold the values the visual editor. The bread crumb at the
as the value of Method Display Name for the REST method calls. Note that the bottom of the visual editor should be the
for DELETE. DELETE operation is not used in this sample af:table#t1 crumb, highlighted (bold-
61. Click Next. application (but regard adding this opera- faced), as the last element. If not, click
62. Select removeEmployee from the tion as your homework). The POST opera- the bread crumb to select the table.
Resource Methods list, and enter a tion—updateEmployee—is implemented 85. Open the Property Inspector (Window ->
default value of 100 for employeeId (in for you in the completed sample application, Properties), navigate to the
the URL Parameters section). explained at the end of this article. PartialTriggers property under the
Note: The 100 value is used to verify Behavior category, and enter ::b1 ::b2
that the REST method request is valid Building a Master-Detail Page ::b3 ::b4.
at design time. A later version of Oracle With the REST services and the REST data Note: ::b1 through ::b4 are the IDs
JDeveloper will make this check optional. controls created, the final step is to build a of the navigation buttons that should
(No delete will be processed, however.) master-detail page. To create the master- trigger a table refresh. Whenever
63. Select updateEmployee from the detail page, the user navigates the list of depart-
Resource Methods list, and click the 71. With the OraMagRestClientApp work- ments, the employee list will refresh
browse button (magnifier icon) next to space open, in the Application Navigator, to display only the employees of the
the Payload XSD field. expand the ViewController project and selected department.
64. In the Open dialog box, open the xsd the Web Content -> pages node. 86. Save your work.
folder, select the Employee.xsd file, and 72. Double-click the DeptEmp.jsf page to 87. In the Application panel, right-click
click Open. open it in the visual page editor. the DepEmp.jsf file in the ViewController
Note: The update method of the REST 73. Expand the Data Controls panel and -> Web Content -> pages node and
service has a single object argument then the DepartmentRestDC -> choose Run.
of type Employee. Because this type is getAllDepartments() -> Return -> 88. Use the navigation buttons in the
defined as a JAXB object, it can be mar- departmentList node. Departments section to change
shaled and unmarshaled to and from 74. Drag the alldepartments entry from the display and watch the employee
XML. Therefore, you’ll provide the XML the Data Controls panel, and drop it in list refresh.
representation of the argument. the Departments area in the visual What you just did: In this section, you
65. Select getEmployeesByDepartment from page editor. created and tested a master-detail page
the Resource Methods list and click the 75. Choose ADF Form from the Create menu. that uses the department REST service,
browse button (magnifier icon) next to 76. Check Read-Only Form in the Create the department REST data control, and the
the Response XSD field. Form dialog box. employee REST data control you created in
66. In the Open dialog box, open the xsd 77. In the Include Controls For section, previous sections.
folder, select the EmployeesList.xsd file, select Row Navigation and click OK.
and click Open. 78. In the Data Controls panel, expand RUNning the Completed Sample
67. Enter a default value of 60 for the EmployeeRestDc -> Application
departmentId (in the URL Parameters getEmployeesByDepartment -> Return -> A completed sample application is provided
section). Again, this is used for REST URI employeeList node. in the download for this article. In addition
verification only at design time. 79. Drag the allemployees entry from the to the master-detail view, the completed
sample application shows how to update With the DeptEmp.jsf page displayed in Frank Nimphius is a senior principal product
data for a selected employee. To run the your browser, select an employee record manager for Oracle JDeveloper and Oracle ADF.
completed sample, and click Edit Selected Employee to test the He is a coauthor of Oracle Fusion Developer
89. In Oracle JDeveloper, open the update function. Provide changes to the Guide: Building Rich Internet Applications with
OraMagEjbRestService.jws workspace employee record, and click Submit. Changes Oracle ADF Business Components and Oracle
in the oramag030414/completed/ show in the employee table and—as com- ADF Faces (McGraw-Hill).
OraMagEjbRestService folder and con- mitted data—in the database.
figure the database connection to point Note: Building a REST-based update Next Steps
to the HR sample schema. form with the Oracle ADF REST data control
90. Run the service by right-clicking the is an advanced topic that is not covered in DOWNLOAD
sample application for this article
DepartmentService.java file in the this article.
bit.ly/18NIYgm
RestService project and choosing Test
READ more about Oracle ADF
Web Service. This will deploy the service Conclusion oracle.com/technetwork/developer-tools/adf
to the integrated Oracle WebLogic Server. With Oracle JDeveloper 12c, you can inte- JAX-RS Reference Implementation—Jersey
91. Next, select File -> Open and navigate grate a RESTful service into your Oracle open source
jersey.java.net
to the oramag030414/completed/ ADF applications, using the REST service
Developing Applications with Oracle ADF Data
OraMagRestClientApp directory con- data control. This article showed how to
Controls: Chapter 5, “Exposing Web Services
taining OraMagRestClientApp.jws. build a master-detail browse page based on Using the ADF Model Layer”
Select the file, and click Open. previously created REST services. An online bit.ly/1bqU74k
92. Finally, locate the DeptEmp.jsf page in video tutorial at bit.ly/IVKQHE explains WATCH
the ViewController project, right-click it, how to update remote REST services from the REST updatable forms video tutorial
bit.ly/IVKQHE
and choose Run. Oracle ADF.
Join Us.
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be
trademarks of their respective owners.
ment, you may see a Database Connection using Oracle.DataAccess.Client; box, enter the User name and Password;
Configuration screen. If so, optionally enter using Oracle.DataAccess.Types; select EZ Connect for Connection Type; and
the connection details for your database then enter the database host name, port
and click Next. You may also be prompted Build and run the application (press F5 number, and database service name. Click
to select which version(s) of Visual Studio or select Debug -> Start), and then click the Test Connection to test the connection, and
you would like to integrate with. If so, select application button to verify that the data the when the connection is successful, click OK.
the version(s) and click Next. Finally, on the button handler code is retrieving from the Next, go back to the Toolbox, and in the
Installation Summary screen, click Install to EMPLOYEES table in the Oracle Database Data section, drag DataGridView onto the
start the installation. After several minutes, it sample HR schema is displayed. form design surface. In the DataGridView
will complete and you can close the installer. Next you will automatically generate a Tasks menu, click Choose Data Source, and
TableAdapter and a data set to display data then click the Add Project Data Source link.
Creating an Application That Uses inside a DataGridView. Automatic code In the dialog boxes that follow, for Data
ODP.NET, Unmanaged Driver generation (using a TableAdapter or Entity Source Type, choose Database; for Database
For those who have experience with unman- Framework, for example) relies on data- Model, choose Dataset; and for Choose Your
aged ODP.NET, perhaps the best way to base connections set in Server Explorer. (If Data Connection, select the Server Explorer
understand the differences between the you want your application to use unman- connection you just created. Choose Yes
unmanaged and managed drivers is to aged ODP.NET in the autogenerated code, to include the password in the connection
perform a migration between the two. Before connect in Server Explorer by using ODP string and Yes to save the connection string
you can do that, you need a working applica- .NET, Unmanaged Driver. Conversely, if you in the application configuration file. In the
tion that uses ODP.NET, Unmanaged Driver. want your application to use managed ODP Database Objects dialog box, drill down into
Download the download.zip example .NET, you need to connect in Server Explorer Tables and select the EMPLOYEES table.
code file from bit.ly/L6IMxq. Extract the by using ODP.NET, Managed Driver.) Build and run the application, and the
files into a temporary directory. Now create a connection to Oracle EMPLOYEES table data should display in
Next, create a new Winform project in Database in Server Explorer. Select the DataGridView.
Visual Studio: Launch Visual Studio, and View -> Server Explorer, right-click Data
choose File -> New -> Project -> Windows Connections, and choose Add Connection. In Migrating from Unmanaged to
Form Application. Drag a button from the the Add Connection dialog box, click Change Managed ODP.NET
Common Controls section of the Toolbox for the Data source field. In the Change Data Migrating code based on ODP.NET,
onto the form. Double-click the button to Source dialog box, choose Oracle Database Unmanaged Driver, to the managed driver
access the code behind it. In the button_ for Data source and choose ODP.NET, is relatively straightforward. The main tasks
Click() handler, add the code from the Unmanaged Driver for Data provider. are as follows:
button_click.txt file, part of the extracted Click OK. In the Add Connection dialog • Modify the using clauses in your code.
download.zip file. (For reference, the code is
also shown in Listing 1.) Modify the code so Code Listing 1: The button_Click() handler code
that datasource in the connection string has
the correct host name, port, and service_ string conString = "User Id=hr; password=hr;" +
name for your database. You can find this
//EZ Connect Format is [hostname]:[port]/[service_name]
information in any TNSNAMES.ORA file you //Examine working TNSNAMES.ORA entries to find these values
have used to connect to this database. "Data Source=localhost:1521/pdborcl; Pooling=false;";
In Solution Explorer, under your
//Create a connection to Oracle
project, right-click References and choose
Add Reference. In the dialog box, click OracleConnection con = new OracleConnection();
Assemblies and then find the Oracle con.ConnectionString = conString;
con.Open();
.DataAccess assembly (Version 4.x). If there
are multiple references, hover over a selec- //Create a command within the context of the connection
tion to view the path and confirm that it is //Use the command to display employee names and salary from Employees table
OracleCommand cmd = con.CreateCommand();
located in the Oracle home where you just cmd.CommandText = "select first_name from employees where department_id = 60";
installed ODP.NET and Oracle Developer
Tools for Visual Studio. Select Oracle //Execute the command and use datareader to display the data
OracleDataReader reader = cmd.ExecuteReader();
.DataAccess, and click OK. Go back to the while (reader.Read())
code window containing the button_Click() {
handler, and add the following using MessageBox.Show("Employee Name: " + reader.GetString(0));
}
clauses at the top:
• Replace the references in your project to with no managed driver support or very ronment variables and is therefore not asso-
use ODP.NET, Managed Driver. limited support include user-defined types, ciated with a specific Oracle home location.
• Edit your TableAdapters and Entity Models XMLDB features and datatypes, Oracle As a result, configuration usually takes place
to use the managed driver. Advanced Queuing, the client result cache, inside .NET config files (such as machine
• Confirm that the Oracle Database features bulk copy, and the Transaction Guard feature .config, app.config, or web.config). Some of
used by your application are supported by of Oracle Database 12c. Check “Differences these .NET config file entries can optionally
the managed driver. between the ODP.NET Managed Driver and point to a directory where SQL*Net configu-
To migrate the sample Winform appli- Unmanaged Driver” (bit.ly/1j2kMtP) in ration files such as TNSNAMES.ORA can be
cation you created based on ODP.NET, Oracle Data Provider for .NET Developer’s loaded. If you want to omit .NET config file
Unmanaged Driver, to use ODP.NET, Guide, because additional features will be entries altogether, you can include SQL*NET
Managed Driver, instead, click Oracle supported over time. configuration files in the working direc-
.DataAccess in Solution Explorer under your When you are performing a migration, tory of the application or use the SQL*Net
project references and press the Delete key be aware that there is a difference between EZConnect connection string format.
to delete it. how the managed and unmanaged drivers During ODP.NET installation, a TNS_
Then right-click References and choose parse connection strings. The managed ADMIN entry is added to machine.config,
Add Reference. In the dialog box, click driver takes any difference between two and this entry points to the directory where
Assemblies and then find the Oracle connection strings, including extra spaces TNSNAMES.ORA, SQLNET.ORA, and LDAP
.ManagedDataAccess assembly (Version between connection string attributes, to .ORA files can be used by the application.
4.x). If there are multiple references, hover mean that the strings are different, and this Note that by default during installation,
over a selection to view the path and confirm will result in the creation of an additional machine.config for the 32-bit or the 64-bit
that it is where you just installed ODP.NET connection pool. With the unmanaged .NET Framework—but not both—is updated.
and Oracle Developer Tools for Visual Studio. driver, only the connection string attributes Depending on which package you down-
Select Oracle.ManagedDataAccess, and are compared for differences in determining loaded, you may need to manually run the
click OK. In the code window containing if a new connection pool is needed. If you appropriate configure.bat file in the ODP
the button_Click() handler code you edited discover during unmanaged-to-managed .NET\managed directory in the Oracle home
earlier, replace the two using clauses refer- migration testing that unwanted additional if you want to configure both 32-bit .NET
encing Oracle.DataAccess.Client and Oracle connection pools are being created, this dif- Framework and 64-bit .NET Framework.
.DataAccess.Types with the following: ference is the likely culprit. To view this TNS_ADMIN entry, open
the machine.config file for the 32-bit .NET
using Oracle.ManagedDataAccess.Client; Networking Configuration with Framework on your machine (because you
using Oracle.ManagedDataAccess.Types; ODP.NET, Managed Driver installed 32-bit ODP.NET), and search for
Configuring ODP.NET, Managed Driver, for TNS_ADMIN.
Figure 1 shows the updated using direc- networking (or other settings) is a bit dif- In addition to or instead of using SQL*Net
tives and project references. ferent from configuring the unmanaged connection aliases inside the TNSNAMES
Next, edit the TableAdapter to use the driver, because the managed driver does not .ORA pointed to by the TNS_ADMIN
managed driver. In Solution Explorer, look at the Windows registry or at most envi- machine.config value, you may also include
right-click DataSet and choose View
Designer. In the Dataset Designer, right-
click EMPLOYEESTableAdapter and choose
Properties. In the properties pane for
TableAdapter, expand the Connection group
and modify the Provider property to use
Oracle.ManagedDataAccess.Client. Rebuild
and run the application, and verify that it
now works with the managed driver.
In addition to making these modifica-
tions, verify that the application features
being used are supported in ODP.NET,
Managed Driver. Oracle Data Provider for
.NET Developer’s Guide, at bit.ly/
1hfQmRS, specifies whether each ODP.NET
class is supported with the managed driver. Figure 1: Setting the using directives in the code (left) and in the project references (right) to use
At the time of this writing, feature areas ODP.NET, Managed Driver
definitions for aliases inside .NET config TNSNAMES.ORA file found in the working .ManagedDataAccess.dll. You can find this
files. To add a connection alias to the app directory of the application. DLL in the ODP.NET\managed\x86 and ODP
.config file used by your application, double- Many other parameter values can be .NET\managed\x64 directories in your Oracle
click App.config in Solution Explorer to set in the .NET config files. For informa- home. As indicated by the directory names,
open it in the editor. Add the contents of tion on additional ODP.NET, Managed there is one assembly for 32-bit Windows and
the appconfig.txt file, part of the extracted Driver, configuration settings, see “Oracle one for 64-bit Windows. The DLL should not
download.zip file. (Listing 2 includes the Data Provider for .NET, Managed Driver be added to the references in your project; it
contents of a sample App.config file with Configuration” in Oracle Data Provider for will be implicitly loaded when it is needed.
a similar appconfigalias connection alias.) .NET Developer’s Guide. In addition to deploying the assembly,
Open the application code you edited you will need to provide access to an OraMTS
earlier, and modify the connection string Distributed Transactions recovery service to resolve in-doubt trans-
variable value conString such that Data Many .NET applications use distributed actions. Otherwise, you will receive error
Source=appconfigalias;. Rebuild the appli- transactions. A distributed transaction is a messages such as “ORA-1591: lock held by
cation, and run it again. Click the button transaction that affects several resources, in-doubt distributed transaction.” OraMTS is
on the form, and verify that you are able to such as an Oracle Database table and a part of the Oracle Data Access Components
connect and return data with the App.config MySQL database table. For a distributed and Oracle Database on Windows installa-
datasource you created. transaction to commit, all participants must tions, and the service can be installed on the
The order of precedence for resolving guarantee that any change to data will be same machine as your application or on a
TNS aliases is as follows: at application permanent. If a single participant fails to remote machine that has a properly config-
startup, ODP.NET, Managed Driver, looks for make this guarantee, any changes to data ured MSDTC service. If your recovery service
a dataSources section in the <oracle within the transaction must be rolled back. is on a remote machine, you can set the
.manageddataaccess.client> section in In .NET programming, distributed transac- OMTSRECO_IP_ADDRESS and OMTSRECO_
one of the .NET config files and caches any tions are made possible via System PORT values in the <distributedTransaction>
aliases found there. Next the driver looks .Transactions, which utilizes the Microsoft section of your .NET config file to tell ODP
for a TNS_ADMIN setting in one of the Distributed Transaction Coordinator .NET where the recovery service is located, as
config files and caches the entries in any (MSDTC), a service installed with Windows. shown in Listing 2.
TNSNAMES.ORA file found in the direc- To enable distributed transactions with
tory that TNS_ADMIN points to. If there is ODP.NET, Managed Driver, the Oracle Conclusion and Request
neither a dataSources section nor a TNS_ .ManagedDataAccessDTC.dll assembly I’ve just walked you through the installation,
ADMIN setting in a config file, it will load a must be deployed, along with Oracle migration, and configuration of ODP.NET,
Managed Driver. Please download it, give it
Code Listing 2: Example App.config content with parameters for ODP.NET, Managed Driver a try, and let me know what you think on the
ODP.NET forum, at bit.ly/1m28q27.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
Christian Shay is a product manager in the
</configSections> .NET Technologies group at Oracle.
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> Next Steps
</startup>
<oracle.manageddataaccess.client>
<version number="*"> DOWNLOAD
<dataSources> ODP.NET, Managed Driver
<dataSource alias="appconfigalias" descriptor=" bit.ly/1j7ZV8y
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)
source code for this article
(HOST=localhost)(PORT=1521))
bit.ly/L6IMxq
(CONNECT_DATA=(SERVICE_NAME=ORCL))) " />
</dataSources> VISIT
<settings> the Oracle .NET Developer Center
<setting name="TNS_ADMIN" value="C:\tnsfiles"/> oracle.com/technetwork/dotnet
</settings> the ODP.NET forum
<distributedTransaction> bit.ly/1m28q27
<setting name="OMTSRECO_IP_ADDRESS" value="mydtc" />
<setting name="OMTSRECO_PORT" value="2040" />
LEARN
<setting name="ORAMTS_SESS_TXNTIMETOLIVE" value="240" />
more about ODP.NET, Managed Driver
</distributedTransaction>
applications
</version> bit.ly/1aHvRfq
</oracle.manageddataaccess.client> FOLLOW OracleDOTNET on Twitter
</configuration> @OracleDOTNET
its original storage system. But it may be one database. Using the Consolidated Arup Nanda (arup@
possible to consolidate CLASSIC and a less Database Replay feature of Oracle Real proligence.com) has
demanding database into TGTDB without Application Testing, John showed how Jill been an Oracle DBA
changing the storage system. To deter- can accurately measure that impact. The since 1993, handling
mine which combinations will work, John consolidated replay testing techniques John all aspects of database
explains, all Jill needs to do is repeat the demonstrated can be used for all types of administration, from
earlier steps with different source data- consolidation scenarios: relocating various performance tuning to security and disaster
base workloads and analyze the results in databases into a single database as dif- recovery. He was Oracle Magazine’s DBA of the
another compare period report. A source ferent schemas, creating various databases Year in 2003 and received an Oracle Excellence
workload needs to be captured only once; as pluggable databases in a multitenant Award for Technologist of the Year in 2012.
it can be replayed several times. And, John container database under Oracle Database
reminds everyone, this feature can replay 12c’s multitenant architecture, creating
any captured workload; there is no special separate databases in different virtual NEXT STEPS
capture for consolidated replays. Jill could machines, or any combination of these
READ Oracle-hosted online article content
not be happier. techniques. The goal in any case is the
bit.ly/18PjwXE
same: accurate prediction of the impact
READ more about Oracle Real Application
CONCLUSION of consolidation. And the Consolidated Testing
In the course of database consolidation, Database Replay feature of Oracle Real bit.ly/KoOCda
one of the big challenges for Jill and the Application Testing enables exactly that. “Better Workload, Better Testing”
bit.ly/1jkxbKH
management at Acme was to predict (Consolidated replay is also available in the
the impact of workloads from several Oracle Enterprise Manager Cloud Control DOWNLOAD Oracle Database 12c
bit.ly/1czAk2I
databases running simultaneously on 12c interface.) t
Key Challenges for Developers in Code Listing 1: Condition on the Reviewer Actions region
Oracle Application Express
First, let me make clear: this is not an article DECLARE
about general best practices for Oracle l_dummy CHAR (1);
BEGIN
Application Express development. I am not
SELECT 'x'
nearly expert enough with the product to INTO l_dummy
offer such guidance. Instead, I will focus FROM qdb_question_reviews qr, qdb_domain_reviewers_v dr
WHERE dr.user_id = :ai_user_id
on the key challenges Oracle Application
AND dr.domain_reviewer_id = qr.domain_reviewer_id
Express developers will face when it comes AND qr.question_id = :p659_question_id;
specifically to writing the PL/SQL code in
RETURN TRUE;
their applications.
EXCEPTION
These developer challenges can generally WHEN NO_DATA_FOUND
be summed up as follows: there’s too much THEN
RETURN FALSE;
code inside the Oracle Application Express
WHEN TOO_MANY_ROWS
application and not enough code in PL/SQL THEN
packages and views. RETURN TRUE;
END;
When a framework can do a lot of work
for you (that is, generate code instead of
requiring you to write all of it), it is very Code Listing 2: Condition on the Reviewer Actions region, take 2
tempting to want to spend too much time in
that framework. I click this button, I select DECLARE
that HTML widget to use here, I write some l_dummy CHAR (1);
l_author_id PLS_INTEGER;
code for an item’s condition, I write some BEGIN
more code for a page-level process (an SELECT ‘x’
Oracle Application Express element that is INTO l_dummy
FROM qdb_question_reviews qr, qdb_domain_reviewers_v dr
used to execute PL/SQL code and control WHERE dr.user_id = :ai_user_id
rendering of the page, among other things), AND dr.domain_reviewer_id = qr.domain_reviewer_id
and so on. AND qr.question_id = :p659_question_id;
Guidelines for PL/SQL in Oracle • Avoid repetition of code whenever pos- particular focus on ways to avoid repetition.
Application Express sible. This advice is not specific to Oracle My next article will discuss how to manage
I suggest following these guidelines when Application Express; it is one of the most SQL statements in your Oracle Application
writing PL/SQL code in Oracle Application important guidelines for high-quality pro- Express application and, in particular, how
Express applications: gramming overall. and when to use table functions.
• The only SQL statements you should write • Keep the volume of code inside the Oracle
in the Application Builder (the Oracle Application Express application to a Move Code to Packages and Views
Application Express UI for building appli- minimum. Move as much code as possible Oracle Application Express makes it pos-
cations) are queries to populate reports to PL/SQL packages. sible to design applications while mini-
and tables. Even then, you should simplify This article focuses on specific tech- mizing the volume of code that developers
those queries as much as possible through niques and features you can leverage in have to write. Still, unless you are building
use of views and, for some complex sce- Oracle Application Express to improve the a very simple application, you will write a
narios, table functions. maintainability of your PL/SQL code, with a whole lot of SQL and PL/SQL logic. I rec-
ommend that you keep the code that’s in Code Listing 3: P659_IS_REV_OR_AUTH/On Load - Before Header process code
Oracle Application Express to an absolute
minimum and move as much of that logic BEGIN
as possible into packages and views. (In CASE
WHEN qdb_review_mgr.is_reviewer_for_quest_domain (
my next article, I will address views and
:ai_user_id,
how they relate to when and where to write :p659_question_id)
SQL statements in Oracle Application OR qdb_content.question_author_id (:p659_question_id) =
:ai_user_id
Express applications.)
THEN
To make it easier (possible) to maintain :p659_is_rev_or_auth := qdb_config.c_yes;
your application in Oracle Application :p659_show_answers := qdb_config.c_yes;
ELSE
Express, you need to avoid repetition
:p659_is_rev_or_auth := qdb_config.c_no;
and hide complexity. Clearly, if the same END CASE;
complex expression is copied and pasted END;
into several items to control their con-
ditional display, it is going to be hard to Code Listing 4: The parameterless function relying on the V function
remember to change that expression in all
locations when a bug is discovered. FUNCTION is_reviewer_or_author
Wouldn’t it be so much better if all RETURN BOOLEAN
that functionality were moved to a function IS
l_dummy CHAR (1);
and then the function were simply called l_author_id PLS_INTEGER;
as needed? BEGIN
Let’s take a look at an example: Page 659 SELECT 'x'
INTO l_dummy
is the PL/SQL Challenge (plsqlchallenge.com) FROM qdb_question_reviews qr, qdb_domain_reviewers_v dr
Quiz Details page. You visit this page after WHERE dr.user_id = v ('ai_user_id')
you’ve taken a quiz or that quiz is over. AND dr.domain_reviewer_id = qr.domain_reviewer_id
AND qr.question_id = v ('p659_question_id');
Players must be restricted in what they can
see here, depending on their quiz status. In RETURN TRUE;
addition, this page is used by reviewers, and EXCEPTION
WHEN NO_DATA_FOUND
if you are a reviewer, you’ll see a Reviewer THEN
Actions toolbar, as shown in Figure 1. For SELECT qu.author_id
nonreviewers, this and other areas on the INTO l_author_id
FROM qdb_questions qu
screen should not be displayed. WHERE qu.question_id = v ('p659_question_id');
For this Quiz Details page in the Oracle
Application Express Application Builder, I RETURN l_author_id = v ('ai_user_id');
WHEN TOO_MANY_ROWS
set the condition on the Reviewer Actions THEN
region as shown in Listing 1, and it works RETURN TRUE;
exactly as intended. But as I continue to END;
I was a data architect and director of data are constantly evolving, and so must our to manage. Additionally, you replicate the
modeling. Now back at Oracle, I am respon- technology. Companies are facing enormous overhead of database and OS software in
each VM, and this limits the consolidation a multitenant container database [CDB]. [Oracle RAC] or Oracle Active Data Guard.
density or the number of applications you From the operations point of view, this is Wheeler: Yes, and these can be expensive,
can host in a single server. the database. We now have a single shared when you consider how many databases our
Kyte: Yes, but you can get better consolida- system global area [SGA] and a single set of typical customers have to manage.
tion density by stacking multiple databases background processes that are shared by all Kyte: Right. Many of our customers have hun-
in a single server. the PDBs in that CDB. dreds of databases—some have thousands.
Wheeler: You can, but it’s still not optimal. Kyte: This is what gives us the great consoli- Wheeler: And now you can consolidate
When you fire up a new database, you dation density in the multitenant architec- those hundreds of databases into a handful
have to allocate a new shared-memory ture, right? With 20 background processes of CDBs—maybe a dozen or so. Instead of
area and kick off a new set of background per database, if I stack, say, 30 databases having hundreds of databases to back up,
processes—20 of them. You repeat this for into a single server, I’ll need 600 back- patch, and so on, you’ve got only those few.
every new database you start, and these ground processes. But with the multitenant This ability to manage many databases as
replicated processes quickly consume the architecture, consolidating each of these 30 one (or at least as a few) greatly reduces
available resources in the system, thereby databases as PDBs in a single CDB, I’ll need operating expenses.
limiting the ultimate consolidation density. only 20 background processes. Kyte: Another way to look at this is that DBAs
Kyte: Prior to Oracle Database 12c, some of Wheeler: Exactly. And it’s not just the are freed from the time-consuming and
our customers took a schema consolida- number of background processes that error-prone chore of doing all this adminis-
tion approach, with a single large server matters here; it’s also their nature. We’ve tration on all these databases and are able
and a single big database. Each application done various consolidation scalability tests to add value and improve quality of service
“back end” is hosted in a single schema. that demonstrate this. Let’s say some of
It’s typically been a struggle to change the your 30 example databases are OLTP-heavy.
applications to achieve this, but where That means there are lots of database writes BACK U P M U LTIPL E
these customers have been successful, they and log writes. The database writer [DBWR]
DATABAS ES
have realized significant gains in consolida- and the log writer [LGWR] are both heavy,
tion. Then they find that there’s a trade-off high-priority processes. With separate data-
between these consolidation gains and bases, you have these various DBWR and
agility. They’ve lost granular control. LGWR processes competing with each other,
Wheeler: These were precisely our consid- leapfrogging to the front of the queue. We
erations as we designed the Oracle multi- observed increases in L3-cache misses, and
tenant architecture. this was a major factor limiting scalability.
Kyte: Will you please describe the new In contrast, running the same workloads
multitenant architecture? in the same number of PDBs consolidated
Wheeler: With the multitenant architec- into a single CDB, we had a single LGWR with
ture, each application’s back-end database two slaves purring along very comfortably.
becomes a pluggable database [PDB]. The Kyte: Oracle Multitenant delivers better
pluggable part is new, but what hasn’t throughput and better scalability. Configure a single backup for the entire container
database with Oracle Multitenant.
changed is that a pluggable database is Wheeler: Yes, exactly.
a fully functional, self-contained Oracle Kyte: You’ve explained how Oracle
PATCH AND UPGRA D E
Database instance. From an application’s Multitenant can save customers capital ONE DATABASE
point of view, it hasn’t changed in any way. expenses by consolidating more applica-
Kyte: Right, because requiring our cus- tions per server. Earlier on you mentioned
tomers to make application changes to that customers could also reduce operating
adopt a new database architecture is not a expenses. How is that?
reasonable expectation. Wheeler: The simple question “What
Wheeler: Exactly, and no application changes is a database?” gets different answers,
are required to upgrade the database to be a depending on the vantage point. From an
PDB in the multitenant architecture. application’s point of view, the PDB is the
Kyte: So that’s the database part. What database, but from the operations point of
about the pluggable part? view, the CDB is the database.
Wheeler: In the multitenant architecture, Kyte: So when you say “from an operations
we introduce a new concept, the root data- point of view,” you’re talking about typical
I-HUA CHEN
base. Lots of individual PDBs can be plugged DBA tasks such as patching, backup, or
Patch the container database to upgrade all the
into a single root and can together form configuring Oracle Real Application Clusters pluggable databases with Oracle Multitenant.
move. Presumably it’s a faster way to apply and so on. And because these are opera- a capability of the underlying file system—
the patch as well. tional things, you’d have a CDB for each SLA. where available—called copy-on-write.
Kyte: Copy-on-write is established, proven software as a service [SaaS], database as a one of these with Oracle Database
technology. So we’re leveraging this to service [DBaaS], and distribution of pack- Configuration Assistant.)
deliver thin provisioning of pluggable data- aged apps and data. Then change the applications to work
bases. I am imagining the productivity gains Kyte: All of this sounds great, but when with Oracle Multitenant. But wait! No
in a development and testing environment. I talk to customers about consolidation, application changes are required to adopt
You know the situation: dozens, maybe a big concern is always contention for Oracle Multitenant.
hundreds, of engineers each working on shared resources. I mean, you don’t want Kyte: So there is no Step 3.
individual copies of a handful of “golden any individual PDB to run away with all the Wheeler: There is no Step 3!
master databases.” With snapshot cloning, resources of the system. Kyte: This really is a very dramatic advance
they can rapidly refresh these databases Wheeler: No, that is a very reasonable in our database architecture. We’ve dis-
with minimal incremental storage or server concern, but we’ve got a great solution. We cussed several benefits here in some detail.
load. I can even imagine this being done on enhanced the Resource Manager feature of Please summarize them for me.
a self-service basis. Oracle Database to be able to control things Wheeler: With Oracle Multitenant, you can
Wheeler: Cloning is a great use case for such as CPU, sessions, parallel execution • Reduce capital expenses by supporting
Oracle Multitenant and a great feature to servers, and even I/O (on Oracle Exadata). more applications per server
justify migrating to it. By definition, your By using the simple-yet-powerful concepts • Reduce operating expenses by managing
development and testing environments of shares and caps, you can simply define many databases as one, delivering stan-
are not production, so the very develop- policies that determine how resources are dardized services—even self-service
ment and test engineers you want to shared between the PDBs. • Increase agility with rapid, low-cost
become proficient in the new technology Kyte: So a high-priority system would have provisioning and through “pluggable
will use it in their day-to-day business. lots of shares, and a low-priority system portability”
And as you mentioned, the organization’s would have just a few shares. • Adopt this new architecture easily
productivity increases and the quality of Wheeler: Yes, and you’d probably want to
work goes up as hidden development and cap the lower-priority system to limit the Tom Kyte is a database
testing costs are eliminated. resources it can use. The shares represent evangelist in Oracle’s
Kyte: Rapid, low-cost provisioning of data- a guaranteed minimum share of resources Server Technologies
bases is a huge leap forward from the painful allocated to a PDB—if they’re needed. But division and has worked
process of the past. Sometimes it can take if they’re not needed, those resources will for Oracle since 1993. He
weeks—even months—to work through the be available for the other PDBs. Sometimes is the author of Expert
bureaucracy to create a new database. this is called overprovisioning, which might Oracle Database Architecture (Apress, 2005,
Wheeler: Yes. We’ve already covered reduc- sound like a bad thing, but in many situa- 2010) and Effective Oracle by Design (Oracle
tions in capital expenses and operating tions it’s a great thing and a key advantage Press, 2003), among other books.
expenses. These can be very significant, but of consolidation.
they are incremental reductions. Now, if you Kyte: It’s so much more flexible than instance Next Steps
can create a database in minutes—say, for caging, where you’re capped at a specific
ad hoc analysis of a new opportunity—you number of CPUs. Even if the other CPUs are ASK Tom
Tom Kyte answers your most difficult technology
might be able to seize it and be first to idle, you’re boxed in and can’t use them.
questions. Highlights from that forum appear in
market. If it’s going to take weeks to create This really sounds like a tremendous this column.
that database, the opportunity may well advance in our database architecture. asktom.oracle.com
have slipped away and it won’t even be Many customers are already adopting it or FOLLOW Tom on Twitter
@OracleAskTom
worth bothering. With rapid self-service planning to do so shortly. How easy is it to
READ more Tom
provisioning, we’re talking about a differ- upgrade to Oracle Multitenant?
bit.ly/omagasktom
ence in kind, not in degree. Rather than Wheeler: It’s very easy. Easy as 1-2-3:
Expert Oracle Database Architecture: Oracle
incremental savings off the bottom line, Step 1: Upgrade your database system in Database 9i, 10g, and 11g Programming
we’re talking about the potential of adding place, just as you always have done. Direct Techniques and Solutions, Second Edition
amzn.to/ckGXaR
significantly to the top line. upgrades from Oracle Database 10g
Kyte: I like it! We could talk much more Release 2 and Oracle Database 11g Release 1 DOWNLOAD Oracle Database 12c
bit.ly/epBiUG
about provisioning, but there must be many and Release 2 are supported. The result
LEARN more about
other use cases for Oracle Multitenant. Can is Oracle Database 12c in what we call Oracle Database 12c
you name a few? non-CDB—the old architecture. oracle.com/database
Wheeler: Yes, it offers a very flexible archi- Step 2: Adopt this non-CDB as a PDB. Oracle Multitenant
tecture. A few obvious use cases include Basically this means plugging it into a oracle.com/database
bit.ly/1aexnSw
consolidation of disparate applications, precreated CDB. (You can simply create
Privilege Analysis
It’s a cool Oracle Database 12c security feature.
In a telegram to the Friar’s Club of Beverly Hills, from Groucho and Me (Random
House, 1959). What’s a telegram? Fifty-five years later, dramatic exits—whether
SHARE in jest or not—are announced in 140 (or fewer) electronic characters.
Side of fries with
your vacuum tube
logic circuitry,
ma’am? Elvis is on
the radio, Ray Kroc’s
first McDonald’s
opens, and a group of
IBM 701 mainframe
users forms SHARE,
1975
the first computer
user group.
Homebrewed
Early computer hobbyists form the Homebrew Computer Club in Menlo Park, California,
designing and building their own computers; the first meeting inspires Apple cofounder
Steve Wozniak to design the Apple I.
Camp Oracle Users Group forms. Renamed the Independent Oracle Users
Group in 2006, IOUG delivers education, shares best practices, and provides
CPU
networking opportunities for DBAs worldwide.
Archery, canoeing,
or BASIC? Fairfield
University’s Dr.
Michael Zabinski
2013
founds National JUGs
Computer Camps. From Abidjan to Warsaw,
Then: Parents sent hundreds of Java user groups
(JUGs) share a passion for all
postcards. things Java, and Java Magazine
Now: Campers features this global community
tweet updates. on the cover of the March/April
2013 issue.
Collaborate
2006
oracle.com/partners/goto/exastack
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates.
Other names may be trademarks of their respective owners.