SlideShare a Scribd company logo
1 of 40
Welcome                                                                        Five Cool Use Cases for
                                                                                       the Spring component of
                                                                                       the Oracle SOA Suite
                                                                                       Guido Schmutz
                                                                                       UKOUG Conference 2012
                                                                                       3.12.2012



BASEL   BERN   LAUSANNE     ZÜRICH        DÜSSELDORF          FRANKFURT A.M.           FREIBURG I.BR.   HAMBURG   MÜNCHEN   STUTTGART   WIEN




                      2012 © Trivadis

                      Five Cool Use Cases for the Spring component of the Oracle SOA Suite
                      3.12.2012
Guido Schmutz

•   Working for Trivadis for more than 15 years
•   Oracle ACE Director for Fusion Middleware and SOA
•   Co-Author of different books
•   Consultant, Trainer Software Architect for Java, Oracle, SOA
    and EDA
•   Member of Trivadis Architecture Board
•   Technology Manager @ Trivadis


•   More than 20 years of software development
    experience


•   Contact: guido.schmutz@trivadis.com
•   Blog: http://guidoschmutz.wordpress.com
•   Twitter: gschmutz

                2012 © Trivadis

                Five Cool Use Cases for the Spring component of the Oracle SOA Suite
                3.12.2012
Agenda


1. Introduction
2. How does the Spring component work
3. The use cases
4. Summary




             2012 © Trivadis

             Five Cool Use Cases for the Spring component of the Oracle SOA Suite
             3.12.2012
Different strategies for integrating Java in SOA Suite


Java Embedding in BPEL
Java Callout in Mediator/Oracle Service Bus
Custom BPEL/XPATH Functions
JAX-WS or JAX-RS Web Services (SOAP / REST services)
EJB Services
JMS Adapter/Transport and Message Driven Bean (MDB)
Custom JCA Adapter or Custom OSB Transport
Spring Component


“When Java meets SOA”: https://blogs.oracle.com/rammenon/entry/java_and_soa_suite

                2012 © Trivadis

                Five Cool Use Cases for the Spring component of the Oracle SOA Suite
                3.12.2012
SOA Suite 11g Overview

                                                    BPMN 2.0,
                      Shared BPMN
                                                    BPEL
BPA
                        Model                                                                                                Web based customization
                                                                        Rich End User Interaction




      Business View
                                                            Workspace            Process Portal        MS Office
                                                                                 (WC spaces)


        BPM Studio                                                                                                                Process Composer
(with Business and IT views)
                                                                                            Human
                                                                                           Workflow       Business
                                                      BPEL               BPMN                                            Mediator       Spring
                                                                                          (+AMX, AG,       Rules
                                                                                            Orgn)
 B2B
                                                                            Unified Runtime
                Process                            Common JCA-based connectivity infrastructure                      Policy Manager
                Analytics        Optimized
BAM                               binding

                Proc Cubes                                                              Oracle Service Bus

                                                                                                                                         EM console
                                                                                                                                       +BPMN Screens
                 Repository

                              2012 © Trivadis

                              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
                              3.12.2012
Spring Service Component


The Spring Framework is a lightweight container using “plain old Java
objects” (POJOs)
WebLogic SCA enables the usage of the Spring Framework and to expose
components as SCA services and references
SCA extends Spring framework capabilities
•   Publish spring beans as SCA component services
•   Provide references to Spring beans wired to services of other components
Following types of component integrations are supported
•   Java components to WSDL components
•   WSDL components to Java components
•   Java components to Java components

                2012 © Trivadis

                Five Cool Use Cases for the Spring component of the Oracle SOA Suite
                3.12.2012
Agenda


1. Introduction
2. How does the Spring component work
3. The use cases
4. Summary




              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Hello World


The HelloWorldImpl POJO used inside a Spring component




Lessons learnt: Make sure to compile classes before wiring!
              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Using the Predefined Beans


The following spring beans are predefined in SOA Suite:
•   headerHelperBean – for getting an setting header properties
•   instanceHelperBean – for getting Instance ID of composite and
    component, name of the Spring service component
•   loggerBean – for providing context-aware logging message




You can also define your own Spring beans globally => see use case 3




               2012 © Trivadis

               Five Cool Use Cases for the Spring component of the Oracle SOA Suite
               3.12.2012
Agenda


1. Introduction
2. How does the Spring component work
3. The use cases
    Case 1 - Configuration
4. Summary




              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Case 1 – Configuration: Within SOA Suite

Use Case: Need configuration properties which are changeable at runtime


Within a SCA Composite preferences can be declared
• Has to start with bpel.preference




Use ora:getPreference('greetingMessage')from within BPEL


Restriction: Only scalar values are supported! Can only be accessed from a
BPEL component.
              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Case 1 – Configuration: Within SOA Suite

Values can be changed through System MBean Browser in EM
 oracle.soa.config > Server : soa_server1 > SCAComposite > your_project >
  SCAComposite.SCAComponent > your bpel_process




                 2012 © Trivadis

                 Five Cool Use Cases for the Spring component of the Oracle SOA Suite
                 3.12.2012
Case 1 – Configuration: using Spring and JMX




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 1 – Configuration: using Spring and JMX




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 1 – Configuration: using Spring and JMX




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Agenda


1. Introduction
2. How does the Spring component work
3. The use cases
    Case 2 – Dynamic Routing
4. Summary




              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Case 2 – Dynamic Routing: Using Spring bean for subscription




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 2 – Dynamic Routing: Using Spring bean for subscription




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 2 – Dynamic Routing: Using Spring bean for subscription




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 2a – Dynamic Routing: Using Spring bean for
subscription




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 2a – Dynamic Routing: Using Spring bean for
subscription




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Agenda


1. Introduction
2. How does the Spring component work
3. The use cases
    Case 3 – NoSQL
4. Summary




              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Case 3 – NoSQL: What is NoSQL?


NoSQL is a new class of databases
They don„t use the relational data model and thus don„t use SQL
Tend to be designed to run on cluster
Schema-Less - Don„t have a fixed schema, allowing to store any data in any
record
Different types of NoSQL databases
      •   Key/value
      •   Column Family
      •   Document
      •   Graph


For more info, attend my other presentation: NoSQL Databases for Implementing Data Services –
Should I Care? – Tuesday, 15:10 – 16:10 – Hall 10a

                     2012 © Trivadis

                     Five Cool Use Cases for the Spring component of the Oracle SOA Suite
                     3.12.2012
Case 3 – NoSQL: MongoDB Integration through Spring




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 3 – NoSQL: MongoDB Integration through Spring




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 3 – NoSQL: MongoDB Integration through Spring




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 3a – NoSQL: MongoDB Logging Bean




          2012 © Trivadis

          Five Cool Use Cases for the Spring component of the Oracle SOA Suite
          3.12.2012
Case 3a – NoSQL: MongoDB Logging Bean

Define bean in the global spring context (custom predefined bean) so that
logging is globally available
1. Add the bean definition here
    SOA_HOME/soa/modules/oracle.soa.ext_11.1.1/classes/
     springse-extension-global-beans.xml
2. Add the corresponding classes in either the lib or classes directory
3. Run the ant script and restart server (more information in
   readme.txt)




              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Case 3a – NoSQL: MongoDB Logging Bean

Usage of the custom bean in the global spring context




             2012 © Trivadis

             Five Cool Use Cases for the Spring component of the Oracle SOA Suite
             3.12.2012
Agenda


1. Introduction
2. How does the Spring component work
3. The use cases
    Case 4 – Twitter
4. Summary




   Please follow me on twitter to get the full experience 

   Twitter User: gschmutz


              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Send a Twitter message to @gschmutz with the hash tags
#ukoug and #springtalk …… to get the link to the slides

     @gschmutz #ukoug #springtalk Oracle SOA Suite and
     Spring rocks!
                           @gschmutz #ukoug #springtalk
@gschmutz #ukoug #springtalk please!
           @gschmutz #ukoug #springtalk this is really
           cool!
   @gschmutz #ukoug #springtalk this is so wrong!
   Send me that electronic trash!

 @gschmutz Cool stuff dude! Pls send me the
 link to the slides! #ukoug #springtalk

           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 4 – Twitter: Send an Update Message




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 4 – Twitter: Send an Update Message




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 4 – Twitter: Send an Update Message




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Case 4a – Twitter: Process Mentioned Messages and send
message with link to slides 




           2012 © Trivadis

           Five Cool Use Cases for the Spring component of the Oracle SOA Suite
           3.12.2012
Agenda


1. Introduction
2. How does the Spring component work
3. The use cases
    Case 5 – …
4. Summary




              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Case 5: so many more ideas …. And not enough time


•   Invoking Spring Batch
•   Invoking Hadoop Processing
•   Groovy Script integration (i.e. XML  JSON)
•   Read/Write Excel
•   Create PDF
•   Submit to Evernote
•   Message Enrichment (Mediator cannot do that)




                 2012 © Trivadis

                 Five Cool Use Cases for the Spring component of the Oracle SOA Suite
                 3.12.2012
Agenda


1. Introduction
2. How does the Spring component work
3. The use cases
4. Summary




              2012 © Trivadis

              Five Cool Use Cases for the Spring component of the Oracle SOA Suite
              3.12.2012
Summary


The Spring component is a nice way to extend the functionality of the SOA
Suite and the other service engines
Use cases for it are endless ….
Only use the Spring component if no out-of-the-box feature in the SOA
Suite exists
Make sure that you test the Java and Spring stuff externally first
Only Spring Framework 2.5 …




               2012 © Trivadis

               Five Cool Use Cases for the Spring component of the Oracle SOA Suite
               3.12.2012
THANK YOU.
                                                                                       Trivadis

                                                                                       Guido Schmutz
                                                                                       guido.schmutz@trivadis.com

                                                                                       info@trivadis.com
                                                                                       www.trivadis.com




BASEL   BERN   LAUSANNE     ZÜRICH        DÜSSELDORF          FRANKFURT A.M.           FREIBURG I.BR.   HAMBURG   MÜNCHEN   STUTTGART   WIEN


Where and When Should I Use the Oracle Service Bus
Tuesday 4th December at 09:55 - 10:55 - Hall 8b

NoSQL Databases for Implementing Data Services – Should I Care?
Tuesday 4th December at 15:10 - 16:10 - Hall 10a
                      2012 © Trivadis

                      Five Cool Use Cases for the Spring component of the Oracle SOA Suite
                      3.12.2012

More Related Content

What's hot

Sql 2012 always on
Sql 2012 always onSql 2012 always on
Sql 2012 always on
dilip nayak
 
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELOracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Guido Schmutz
 
Oracle Database Overview
Oracle Database OverviewOracle Database Overview
Oracle Database Overview
honglee71
 
Ebs 12.2 con9021_pdf_9021_0001
Ebs 12.2 con9021_pdf_9021_0001Ebs 12.2 con9021_pdf_9021_0001
Ebs 12.2 con9021_pdf_9021_0001
jucaab
 
EAP6 performance Tuning
EAP6 performance TuningEAP6 performance Tuning
EAP6 performance Tuning
Praveen Adupa
 

What's hot (20)

oracle service bus
oracle service busoracle service bus
oracle service bus
 
Sql 2012 always on
Sql 2012 always onSql 2012 always on
Sql 2012 always on
 
JBoss Application Server 7
JBoss Application Server 7JBoss Application Server 7
JBoss Application Server 7
 
Oracle OSB Tutorial 1
Oracle OSB Tutorial 1Oracle OSB Tutorial 1
Oracle OSB Tutorial 1
 
Oracle Service Bus & Coherence Caching Strategies
Oracle Service Bus & Coherence Caching StrategiesOracle Service Bus & Coherence Caching Strategies
Oracle Service Bus & Coherence Caching Strategies
 
Jboss Tutorial Basics
Jboss Tutorial BasicsJboss Tutorial Basics
Jboss Tutorial Basics
 
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
 
Oracle Multitenant meets Oracle RAC - IOUG 2014 Version
Oracle Multitenant meets Oracle RAC - IOUG 2014 VersionOracle Multitenant meets Oracle RAC - IOUG 2014 Version
Oracle Multitenant meets Oracle RAC - IOUG 2014 Version
 
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELOracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
 
Oracle Database Overview
Oracle Database OverviewOracle Database Overview
Oracle Database Overview
 
ESB Presentation
ESB PresentationESB Presentation
ESB Presentation
 
Spring Framework - AOP
Spring Framework - AOPSpring Framework - AOP
Spring Framework - AOP
 
Optimizing Alert Monitoring with Oracle Enterprise Manager
Optimizing Alert Monitoring with Oracle Enterprise ManagerOptimizing Alert Monitoring with Oracle Enterprise Manager
Optimizing Alert Monitoring with Oracle Enterprise Manager
 
Ebs 12.2 con9021_pdf_9021_0001
Ebs 12.2 con9021_pdf_9021_0001Ebs 12.2 con9021_pdf_9021_0001
Ebs 12.2 con9021_pdf_9021_0001
 
Java EE vs Spring Framework
Java  EE vs Spring Framework Java  EE vs Spring Framework
Java EE vs Spring Framework
 
Java EE Introduction
Java EE IntroductionJava EE Introduction
Java EE Introduction
 
Create rest service in osb 12c that response any type in the service like jso...
Create rest service in osb 12c that response any type in the service like jso...Create rest service in osb 12c that response any type in the service like jso...
Create rest service in osb 12c that response any type in the service like jso...
 
EAP6 performance Tuning
EAP6 performance TuningEAP6 performance Tuning
EAP6 performance Tuning
 
Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]
Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]
Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]
 
Oracle RAC 12c Overview
Oracle RAC 12c OverviewOracle RAC 12c Overview
Oracle RAC 12c Overview
 

Viewers also liked

opentextrelease16abetterwaytowork-160411183307
opentextrelease16abetterwaytowork-160411183307opentextrelease16abetterwaytowork-160411183307
opentextrelease16abetterwaytowork-160411183307
L. Phillip Urman
 

Viewers also liked (7)

Monitoring Oracle SOA Suite
Monitoring Oracle SOA SuiteMonitoring Oracle SOA Suite
Monitoring Oracle SOA Suite
 
Thinking of Upgrading to Oracle SOA Suite 11g? Knowing The Right Steps Is Key...
Thinking of Upgrading to Oracle SOA Suite 11g? Knowing The Right Steps Is Key...Thinking of Upgrading to Oracle SOA Suite 11g? Knowing The Right Steps Is Key...
Thinking of Upgrading to Oracle SOA Suite 11g? Knowing The Right Steps Is Key...
 
Oracle SOA Suite Performance Tuning- UKOUG Application Server & Middleware SI...
Oracle SOA Suite Performance Tuning- UKOUG Application Server & Middleware SI...Oracle SOA Suite Performance Tuning- UKOUG Application Server & Middleware SI...
Oracle SOA Suite Performance Tuning- UKOUG Application Server & Middleware SI...
 
opentextrelease16abetterwaytowork-160411183307
opentextrelease16abetterwaytowork-160411183307opentextrelease16abetterwaytowork-160411183307
opentextrelease16abetterwaytowork-160411183307
 
Hands-on Performance Tuning Lab - Devoxx Poland
Hands-on Performance Tuning Lab - Devoxx PolandHands-on Performance Tuning Lab - Devoxx Poland
Hands-on Performance Tuning Lab - Devoxx Poland
 
Hands-on Performance Workshop - The science of performance
Hands-on Performance Workshop - The science of performanceHands-on Performance Workshop - The science of performance
Hands-on Performance Workshop - The science of performance
 
Monitoring Oracle SOA Suite - UKOUG Tech15 2015
Monitoring Oracle SOA Suite - UKOUG Tech15 2015Monitoring Oracle SOA Suite - UKOUG Tech15 2015
Monitoring Oracle SOA Suite - UKOUG Tech15 2015
 

Similar to Five Cool Use Cases for the Spring Component in Oracle SOA Suite

Petals BPM & the Cloud, OW2con11, Nov 24-25, Paris
Petals BPM & the Cloud, OW2con11, Nov 24-25, ParisPetals BPM & the Cloud, OW2con11, Nov 24-25, Paris
Petals BPM & the Cloud, OW2con11, Nov 24-25, Paris
OW2
 
Michel izygon
Michel izygonMichel izygon
Michel izygon
NASAPMC
 
Ebs soa con8716_pdf_8716_0001
Ebs soa con8716_pdf_8716_0001Ebs soa con8716_pdf_8716_0001
Ebs soa con8716_pdf_8716_0001
jucaab
 
Aras Innovative PLM Manufacturing Applications
Aras Innovative PLM Manufacturing ApplicationsAras Innovative PLM Manufacturing Applications
Aras Innovative PLM Manufacturing Applications
Aras
 
Ss Wrap Up Session 13 Aug
Ss Wrap Up Session 13 AugSs Wrap Up Session 13 Aug
Ss Wrap Up Session 13 Aug
WSO2
 

Similar to Five Cool Use Cases for the Spring Component in Oracle SOA Suite (20)

Five Cool Use Cases for the Spring Component of the SOA Suite 11g
Five Cool Use Cases for the Spring Component of the SOA Suite 11gFive Cool Use Cases for the Spring Component of the SOA Suite 11g
Five Cool Use Cases for the Spring Component of the SOA Suite 11g
 
OW2Con 2011 Petals BPM and the Cloud
OW2Con 2011 Petals BPM and the CloudOW2Con 2011 Petals BPM and the Cloud
OW2Con 2011 Petals BPM and the Cloud
 
Petals BPM & the Cloud, OW2con11, Nov 24-25, Paris
Petals BPM & the Cloud, OW2con11, Nov 24-25, ParisPetals BPM & the Cloud, OW2con11, Nov 24-25, Paris
Petals BPM & the Cloud, OW2con11, Nov 24-25, Paris
 
Oracle SOA Suite 11g - high level introduction on behalf of WAAI
Oracle SOA Suite 11g - high level introduction on behalf of WAAIOracle SOA Suite 11g - high level introduction on behalf of WAAI
Oracle SOA Suite 11g - high level introduction on behalf of WAAI
 
Michel izygon
Michel izygonMichel izygon
Michel izygon
 
Composite Apps using SCA (Service Component Architecture)
Composite Apps using SCA (Service Component Architecture)Composite Apps using SCA (Service Component Architecture)
Composite Apps using SCA (Service Component Architecture)
 
The AMIS Report from Oracle Open World and JavaOne 2011
The AMIS Report from Oracle Open World and JavaOne 2011The AMIS Report from Oracle Open World and JavaOne 2011
The AMIS Report from Oracle Open World and JavaOne 2011
 
RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps
 RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps
RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps
 
RTC/CLM 2012 Adoption Paths : Deploying in 16 Steps
RTC/CLM 2012 Adoption Paths : Deploying in 16 StepsRTC/CLM 2012 Adoption Paths : Deploying in 16 Steps
RTC/CLM 2012 Adoption Paths : Deploying in 16 Steps
 
Omg and-the-soa
Omg and-the-soaOmg and-the-soa
Omg and-the-soa
 
21st Century Service Oriented Architecture
21st Century Service Oriented Architecture21st Century Service Oriented Architecture
21st Century Service Oriented Architecture
 
Ebs soa con8716_pdf_8716_0001
Ebs soa con8716_pdf_8716_0001Ebs soa con8716_pdf_8716_0001
Ebs soa con8716_pdf_8716_0001
 
Sap microsoft interoperability sitnl 08-12-2012
Sap microsoft interoperability sitnl 08-12-2012Sap microsoft interoperability sitnl 08-12-2012
Sap microsoft interoperability sitnl 08-12-2012
 
2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical Update2009 Q2 WSO2 Technical Update
2009 Q2 WSO2 Technical Update
 
Oracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best PracticesOracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best Practices
 
21st Century SOA
21st Century SOA21st Century SOA
21st Century SOA
 
Aras Innovative PLM Manufacturing Applications
Aras Innovative PLM Manufacturing ApplicationsAras Innovative PLM Manufacturing Applications
Aras Innovative PLM Manufacturing Applications
 
Enterprise Spring Building Scalable Applications
Enterprise Spring Building Scalable ApplicationsEnterprise Spring Building Scalable Applications
Enterprise Spring Building Scalable Applications
 
Ss Wrap Up Session 13 Aug
Ss Wrap Up Session 13 AugSs Wrap Up Session 13 Aug
Ss Wrap Up Session 13 Aug
 
SOA Summer School: Best of SOA Summer School – Encore Session
SOA Summer School: Best of SOA Summer School – Encore Session SOA Summer School: Best of SOA Summer School – Encore Session
SOA Summer School: Best of SOA Summer School – Encore Session
 

More from Guido Schmutz

Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?
Guido Schmutz
 
Location Analytics - Real-Time Geofencing using Apache Kafka
Location Analytics - Real-Time Geofencing using Apache KafkaLocation Analytics - Real-Time Geofencing using Apache Kafka
Location Analytics - Real-Time Geofencing using Apache Kafka
Guido Schmutz
 
Location Analytics Real-Time Geofencing using Kafka
Location Analytics Real-Time Geofencing using KafkaLocation Analytics Real-Time Geofencing using Kafka
Location Analytics Real-Time Geofencing using Kafka
Guido Schmutz
 
Streaming Visualisation
Streaming VisualisationStreaming Visualisation
Streaming Visualisation
Guido Schmutz
 
Solutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Solutions for bi-directional Integration between Oracle RDMBS & Apache KafkaSolutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Solutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Guido Schmutz
 

More from Guido Schmutz (20)

30 Minutes to the Analytics Platform with Infrastructure as Code
30 Minutes to the Analytics Platform with Infrastructure as Code30 Minutes to the Analytics Platform with Infrastructure as Code
30 Minutes to the Analytics Platform with Infrastructure as Code
 
Event Broker (Kafka) in a Modern Data Architecture
Event Broker (Kafka) in a Modern Data ArchitectureEvent Broker (Kafka) in a Modern Data Architecture
Event Broker (Kafka) in a Modern Data Architecture
 
Big Data, Data Lake, Fast Data - Dataserialiation-Formats
Big Data, Data Lake, Fast Data - Dataserialiation-FormatsBig Data, Data Lake, Fast Data - Dataserialiation-Formats
Big Data, Data Lake, Fast Data - Dataserialiation-Formats
 
ksqlDB - Stream Processing simplified!
ksqlDB - Stream Processing simplified!ksqlDB - Stream Processing simplified!
ksqlDB - Stream Processing simplified!
 
Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?
 
Event Hub (i.e. Kafka) in Modern Data Architecture
Event Hub (i.e. Kafka) in Modern Data ArchitectureEvent Hub (i.e. Kafka) in Modern Data Architecture
Event Hub (i.e. Kafka) in Modern Data Architecture
 
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache KafkaSolutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
 
Event Hub (i.e. Kafka) in Modern Data (Analytics) Architecture
Event Hub (i.e. Kafka) in Modern Data (Analytics) ArchitectureEvent Hub (i.e. Kafka) in Modern Data (Analytics) Architecture
Event Hub (i.e. Kafka) in Modern Data (Analytics) Architecture
 
Building Event Driven (Micro)services with Apache Kafka
Building Event Driven (Micro)services with Apache KafkaBuilding Event Driven (Micro)services with Apache Kafka
Building Event Driven (Micro)services with Apache Kafka
 
Location Analytics - Real-Time Geofencing using Apache Kafka
Location Analytics - Real-Time Geofencing using Apache KafkaLocation Analytics - Real-Time Geofencing using Apache Kafka
Location Analytics - Real-Time Geofencing using Apache Kafka
 
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS and Apache KafkaSolutions for bi-directional integration between Oracle RDBMS and Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS and Apache Kafka
 
What is Apache Kafka? Why is it so popular? Should I use it?
What is Apache Kafka? Why is it so popular? Should I use it?What is Apache Kafka? Why is it so popular? Should I use it?
What is Apache Kafka? Why is it so popular? Should I use it?
 
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache KafkaSolutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
 
Location Analytics Real-Time Geofencing using Kafka
Location Analytics Real-Time Geofencing using KafkaLocation Analytics Real-Time Geofencing using Kafka
Location Analytics Real-Time Geofencing using Kafka
 
Streaming Visualisation
Streaming VisualisationStreaming Visualisation
Streaming Visualisation
 
Kafka as an event store - is it good enough?
Kafka as an event store - is it good enough?Kafka as an event store - is it good enough?
Kafka as an event store - is it good enough?
 
Solutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Solutions for bi-directional Integration between Oracle RDMBS & Apache KafkaSolutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
Solutions for bi-directional Integration between Oracle RDMBS & Apache Kafka
 
Fundamentals Big Data and AI Architecture
Fundamentals Big Data and AI ArchitectureFundamentals Big Data and AI Architecture
Fundamentals Big Data and AI Architecture
 
Location Analytics - Real-Time Geofencing using Kafka
Location Analytics - Real-Time Geofencing using Kafka Location Analytics - Real-Time Geofencing using Kafka
Location Analytics - Real-Time Geofencing using Kafka
 
Streaming Visualization
Streaming VisualizationStreaming Visualization
Streaming Visualization
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Five Cool Use Cases for the Spring Component in Oracle SOA Suite

  • 1. Welcome Five Cool Use Cases for the Spring component of the Oracle SOA Suite Guido Schmutz UKOUG Conference 2012 3.12.2012 BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 2. Guido Schmutz • Working for Trivadis for more than 15 years • Oracle ACE Director for Fusion Middleware and SOA • Co-Author of different books • Consultant, Trainer Software Architect for Java, Oracle, SOA and EDA • Member of Trivadis Architecture Board • Technology Manager @ Trivadis • More than 20 years of software development experience • Contact: guido.schmutz@trivadis.com • Blog: http://guidoschmutz.wordpress.com • Twitter: gschmutz 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 3. Agenda 1. Introduction 2. How does the Spring component work 3. The use cases 4. Summary 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 4. Different strategies for integrating Java in SOA Suite Java Embedding in BPEL Java Callout in Mediator/Oracle Service Bus Custom BPEL/XPATH Functions JAX-WS or JAX-RS Web Services (SOAP / REST services) EJB Services JMS Adapter/Transport and Message Driven Bean (MDB) Custom JCA Adapter or Custom OSB Transport Spring Component “When Java meets SOA”: https://blogs.oracle.com/rammenon/entry/java_and_soa_suite 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 5. SOA Suite 11g Overview BPMN 2.0, Shared BPMN BPEL BPA Model Web based customization Rich End User Interaction Business View Workspace Process Portal MS Office (WC spaces) BPM Studio Process Composer (with Business and IT views) Human Workflow Business BPEL BPMN Mediator Spring (+AMX, AG, Rules Orgn) B2B Unified Runtime Process Common JCA-based connectivity infrastructure Policy Manager Analytics Optimized BAM binding Proc Cubes Oracle Service Bus EM console +BPMN Screens Repository 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 6. Spring Service Component The Spring Framework is a lightweight container using “plain old Java objects” (POJOs) WebLogic SCA enables the usage of the Spring Framework and to expose components as SCA services and references SCA extends Spring framework capabilities • Publish spring beans as SCA component services • Provide references to Spring beans wired to services of other components Following types of component integrations are supported • Java components to WSDL components • WSDL components to Java components • Java components to Java components 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 7. Agenda 1. Introduction 2. How does the Spring component work 3. The use cases 4. Summary 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 8. Hello World The HelloWorldImpl POJO used inside a Spring component Lessons learnt: Make sure to compile classes before wiring! 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 9. Using the Predefined Beans The following spring beans are predefined in SOA Suite: • headerHelperBean – for getting an setting header properties • instanceHelperBean – for getting Instance ID of composite and component, name of the Spring service component • loggerBean – for providing context-aware logging message You can also define your own Spring beans globally => see use case 3 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 10. Agenda 1. Introduction 2. How does the Spring component work 3. The use cases  Case 1 - Configuration 4. Summary 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 11. Case 1 – Configuration: Within SOA Suite Use Case: Need configuration properties which are changeable at runtime Within a SCA Composite preferences can be declared • Has to start with bpel.preference Use ora:getPreference('greetingMessage')from within BPEL Restriction: Only scalar values are supported! Can only be accessed from a BPEL component. 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 12. Case 1 – Configuration: Within SOA Suite Values can be changed through System MBean Browser in EM  oracle.soa.config > Server : soa_server1 > SCAComposite > your_project > SCAComposite.SCAComponent > your bpel_process 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 13. Case 1 – Configuration: using Spring and JMX 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 14. Case 1 – Configuration: using Spring and JMX 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 15. Case 1 – Configuration: using Spring and JMX 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 16. Agenda 1. Introduction 2. How does the Spring component work 3. The use cases  Case 2 – Dynamic Routing 4. Summary 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 17. Case 2 – Dynamic Routing: Using Spring bean for subscription 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 18. Case 2 – Dynamic Routing: Using Spring bean for subscription 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 19. Case 2 – Dynamic Routing: Using Spring bean for subscription 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 20. Case 2a – Dynamic Routing: Using Spring bean for subscription 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 21. Case 2a – Dynamic Routing: Using Spring bean for subscription 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 22. Agenda 1. Introduction 2. How does the Spring component work 3. The use cases  Case 3 – NoSQL 4. Summary 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 23. Case 3 – NoSQL: What is NoSQL? NoSQL is a new class of databases They don„t use the relational data model and thus don„t use SQL Tend to be designed to run on cluster Schema-Less - Don„t have a fixed schema, allowing to store any data in any record Different types of NoSQL databases • Key/value • Column Family • Document • Graph For more info, attend my other presentation: NoSQL Databases for Implementing Data Services – Should I Care? – Tuesday, 15:10 – 16:10 – Hall 10a 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 24. Case 3 – NoSQL: MongoDB Integration through Spring 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 25. Case 3 – NoSQL: MongoDB Integration through Spring 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 26. Case 3 – NoSQL: MongoDB Integration through Spring 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 27. Case 3a – NoSQL: MongoDB Logging Bean 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 28. Case 3a – NoSQL: MongoDB Logging Bean Define bean in the global spring context (custom predefined bean) so that logging is globally available 1. Add the bean definition here  SOA_HOME/soa/modules/oracle.soa.ext_11.1.1/classes/ springse-extension-global-beans.xml 2. Add the corresponding classes in either the lib or classes directory 3. Run the ant script and restart server (more information in readme.txt) 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 29. Case 3a – NoSQL: MongoDB Logging Bean Usage of the custom bean in the global spring context 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 30. Agenda 1. Introduction 2. How does the Spring component work 3. The use cases  Case 4 – Twitter 4. Summary Please follow me on twitter to get the full experience  Twitter User: gschmutz 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 31. Send a Twitter message to @gschmutz with the hash tags #ukoug and #springtalk …… to get the link to the slides @gschmutz #ukoug #springtalk Oracle SOA Suite and Spring rocks! @gschmutz #ukoug #springtalk @gschmutz #ukoug #springtalk please! @gschmutz #ukoug #springtalk this is really cool! @gschmutz #ukoug #springtalk this is so wrong! Send me that electronic trash! @gschmutz Cool stuff dude! Pls send me the link to the slides! #ukoug #springtalk 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 32. Case 4 – Twitter: Send an Update Message 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 33. Case 4 – Twitter: Send an Update Message 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 34. Case 4 – Twitter: Send an Update Message 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 35. Case 4a – Twitter: Process Mentioned Messages and send message with link to slides  2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 36. Agenda 1. Introduction 2. How does the Spring component work 3. The use cases  Case 5 – … 4. Summary 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 37. Case 5: so many more ideas …. And not enough time • Invoking Spring Batch • Invoking Hadoop Processing • Groovy Script integration (i.e. XML  JSON) • Read/Write Excel • Create PDF • Submit to Evernote • Message Enrichment (Mediator cannot do that) 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 38. Agenda 1. Introduction 2. How does the Spring component work 3. The use cases 4. Summary 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 39. Summary The Spring component is a nice way to extend the functionality of the SOA Suite and the other service engines Use cases for it are endless …. Only use the Spring component if no out-of-the-box feature in the SOA Suite exists Make sure that you test the Java and Spring stuff externally first Only Spring Framework 2.5 … 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012
  • 40. THANK YOU. Trivadis Guido Schmutz guido.schmutz@trivadis.com info@trivadis.com www.trivadis.com BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN Where and When Should I Use the Oracle Service Bus Tuesday 4th December at 09:55 - 10:55 - Hall 8b NoSQL Databases for Implementing Data Services – Should I Care? Tuesday 4th December at 15:10 - 16:10 - Hall 10a 2012 © Trivadis Five Cool Use Cases for the Spring component of the Oracle SOA Suite 3.12.2012