SlideShare uma empresa Scribd logo
1 de 103
Baixar para ler offline
Integrating SAP the
     Java EE way
      JBoss OneDayTalk 2012




Carsten Erker
Remember those
    days...?
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery( "SELECT * FROM customer" );

List<Customer> customers = new ArrayList<Customer>();

while ( rs.next() )
{
    Customer customer = new Customer();
    customer.setId( rs.getString( "ID" ) );
    customer.setFirstName( rs.getString( "FIRST_NAME" ) );
    customer.setLastName( rs.getString( "LAST_NAME" ) );
    ...
    customers.add( customer );
}
...
Who is still doing this?
Nowadays we do
something like this...
@Entity
public class Customer
{
  @Id @GeneratedValue
  private Long id;
  private String firstName;
  private String lastName;
  ...
}
List<Customer> customers = entityManager
   .createQuery( "select c from Customer c" )
   .getResultList();
When calling business
logic in SAP we don‘t
  want to go the old
         way...
Setting the stage...




       Courtesy of Special Collections, University of Houston Libraries. UH Digital Library.
The SAP Java
Connector (JCo)
How it works...
Calls function modules
    in SAP backend
Function modules are a
piece of code written in
         ABAP
They have an interface
 with different types of
parameters to pass data
FUNCTION BAPI_SFLIGHT_GETLIST.
*"-----------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*"     VALUE(FROMCITY) LIKE BAPISFDETA-CITYFROM
*"     VALUE(TOCITY) LIKE BAPISFDETA-CITYTO
*"     VALUE(AIRLINECARRIER) LIKE BAPISFDETA-CARRID
*" EXPORTING
*"     VALUE(RETURN) LIKE BAPIRET2 STRUCTURE BAPIRET2
*" TABLES
*"      FLIGHTLIST STRUCTURE BAPISFLIST
*"-----------------------------------------------------
JCo runs on top of
  the SAP-proprietary
     RFC interface
(Remote Function Call)
JCo can be used in
Client and Server mode
Example code calling a
 function module in
        SAP...
JCoDestination destination = JCoDestinationManager.getDestination( "NSP" );
JCoFunction function =
   destination.getRepository().getFunction( "BAPI_FLCUST_GETLIST" );
function.getImportParameterList().setValue( "MAX_ROWS", 10 );

function.execute( destination );

JCoParameterList tableParams = function.getTableParameterList();
JCoTable table = tableParams.getTable( "CUSTOMER_LIST" );

List<Customer> customers = new ArrayList<Customer>();

for ( int i = 0; i < table.getNumRows(); i++ )
{
    table.setRow( i );
    Customer customer = new Customer();
    customer.setId( table.getLong( "CUSTOMERID" ) );
    customer.setLastName( table.getString( "CUSTNAME" ) );
    customers.add( customer );
}
...
=> Lots of glue code,
 tedious mapping of
     parameters
But - JCo has some
benefits that make it a
 good fit for business
        apps...
It can be used with
    Transactions
It implements
Connection Pooling
SAP functions can be
called asynchronously
It is fast
The bad points...
The programming
     model
Does not fit very well
into the Java EE world:
Not trivial to use it
    with CMT
The same goes for
     Security
The alternative:
Java EE Connector
Architecture (JCA)
JCA is a Java EE
   standard
JCA was created for
the interaction of Java
 EE applications with
Enterprise Information
 Systems, such as SAP
A Resource Adapter is
an implementation of
 JCA for a certain EIS
A RA is deployed in an
 Application Server in
  form of a Resource
     Archive (.rar)
The RA takes care of...
Transaction
Management
Connection
Management
Security
Management
... all this in a standard
             way
JCA solves a lot of
problems, except one...
The programming
     model
       :-(
JCA defines the
   Common Client
 Interface (CCI) for a
standard way to access
         an EIS
Because of the many
   different natures of
EIS‘s, it is overly generic
It operates on Lists,
Maps and/or ResultSets
 representing the data
Additionally, a lot of
glue code needs to be
       written
In this, it is not too
different from SAP‘s
  Java Connector...
@Resource( mappedName = "java:jboss/eis/NSP" )
private ConnectionFactory connectionFactory;

...

Connection connection = connectionFactory.getConnection();
Interaction interaction = connection.createInteraction();

RecordFactory rf = connectionFactory.getRecordFactory();

MappedRecord input = rf.createMappedRecord( "BAPI_FLCUST_GETLIST" );
input.put( "CUSTOMER_NAME", "Ernie" );
input.put( "MAX_ROWS", 20 );

MappedRecord output = ( MappedRecord ) interaction.execute( null, input );
...
List<Customer> customers = new ArrayList<Customer>();

IndexedRecord customerTable = ( IndexedRecord ) output.get( "CUST_LIST" );
            
for ( Object row : customerTable )
{
    MappedRecord record = ( MappedRecord ) row;

    Customer customer = new Customer();
    customer.setId( ( String ) record.get( "CUSTOMERID" ) );
    customer.setName( ( String ) record.get( "CUSTNAME" ) );
    ...
    result.addCustomer( customer );
}
SAP offers a RA that
 only runs on SAP
Application Servers
Any more alternatives?
For read-only and
less frequent SAP calls
     consider using
     Web Services
A SOA platform may be
well suited for not-so-
   tight integration
Introducing the cool
       stuff...




          Photo by Alan Levine, CC-BY 2.0, http://www.flickr.com/photos/cogdog
It implements JCA
     version 1.5
It currently only
  supports the
 outbound way
Under the hood, it uses
    the SAP Java
  Connector (JCo)
The next steps...
Upgrading Cuckoo to
  JCA version 1.6
Adding inbound
  capability
Cuckoo is
Open Source under
  LGPL License
More info:
https://sourceforge.net/p/cuckoo-ra/
Example application:
https://github.com/cerker/
     cuckoo-example
What was all the fuss
about the programming
        model?
We still have to solve
  this problem...
Hibersap is something
like an O/R mapper for
      SAP functions
It makes use of Java
  annotations to map
SAP functions and their
   parameters to Java
        objects
It has an API that is
   quite similar to
   Hibernate/JPA
Thus it fits very well
into the modern Java
        world
Hibersap takes care of
most of the glue code
It can be either used
with JCo or with a JCA
   Resource Adapter
Switching between
them is a matter of
   configuration
This makes integration
   testing a breeze
Finally, some code...
The business object...
@Bapi( "BAPI_FLCUST_GETLIST" )
public class CustomerList
{
  @Import @Parameter("MAX_ROWS")
  private int maxRows;

  @Table @Parameter( "CUSTOMER_LIST" )
  private List<Customer> customers;
  ...
}                              public class Customer
                               {
                                 @Parameter("CUSTOMERID")
                                 private String id;

                                @Parameter( "CUSTNAME" )
                                private String firstName;
                                ...
                            }
The API...
Session session = sessionManager.openSession();

CustomerList customerList = new CustomerList( 10 );
session.execute( customerList );

List<Customer> customers = customerList.getCustomers();
The configuration...
META-INF/hibersap.xml                                            => JCA


<hibersap>
  <session-manager name="NSP">
     <context>org.hibersap.execution.jca.JCAContext</context>
     <jca-connection-factory>
        java:jboss/eis/sap/NSP
     </jca-connection-factory>
     <annotated-classes>
        <annotated-class>
            de.akquinet.jbosscc.cuckoo.example.model.CustomerSearch
        </annotated-class>
        ...
     </annotated-classes>
  </session-manager>
</hibersap>
META-INF/hibersap.xml                                            => JCo
<hibersap>
  <session-manager name="NSP">
     <context>org.hibersap.execution.jco.JCoContext</context>
     <properties>
" " " <property name="jco.client.client" value="001" />
" " " <property name="jco.client.user" value="sapuser" />
" " " <property name="jco.client.passwd" value="password" />
" " " <property name="jco.client.ashost" value="10.20.30.40" />
" " " <property name="jco.client.sysnr" value="00" />
             ...
" " </properties>
     <annotated-classes>
        <annotated-class>
            de.akquinet.jbosscc.cuckoo.example.model.CustomerSearch
        </annotated-class>
        ...
     </annotated-classes>
  </session-manager>
</hibersap>
Bean Validation can be
 used on parameter
       fields...
@Parameter( "COUNTR_ISO" )
@NotNull @Size(min = 2, max = 2)
private String countryKeyIso;
Converters allow for
data type or format
  conversion on
 parameter fields...
@Parameter( "TYPE" )
@Convert( converter = SeverityConverter.class )
private Severity severity;
Hibersap is Open
Source and licensed
   under LGPL
More info:
http://hibersap.org
Putting it all together...
In a Java EE application
     we should use
       Cuckoo RA
Thus, we can make use
   of CMT in EJBs
...and all the other
   benefits of JCA
Using Hibersap, we gain
    an elegant and
      lightweight
 programming model
... especially when using
   Hibersap‘s EJB tools
Thus, we get much
nicer code that is easier
to understand, maintain
        and test
Example application:
https://github.com/cerker/
cuckoo-hibersap-example
Tooling...
JBoss Forge plugin:
  https://github.com/
 forge/plugin-hibersap

        See also:
http://blog.akquinet.de/
      2012/07/12/
Hibersap-Camel
     Component:
  https://github.com/
bjoben/camel-hibersap
About me...
Carsten Erker
Software Architect and Consultant
akquinet AG in Berlin / Germany

carsten.erker@akquinet.de
Questions?

Mais conteúdo relacionado

Mais procurados

SAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming ModelSAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming ModelSAP Technology
 
HANA SPS07 Extended Application Service
HANA SPS07 Extended Application ServiceHANA SPS07 Extended Application Service
HANA SPS07 Extended Application ServiceSAP Technology
 
SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)Lucas Jellema
 
Introducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database ProfessionalsIntroducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database ProfessionalsLucas Jellema
 
Database Cloud Services Office Hours : Oracle sharding hyperscale globally d...
Database Cloud Services Office Hours : Oracle sharding  hyperscale globally d...Database Cloud Services Office Hours : Oracle sharding  hyperscale globally d...
Database Cloud Services Office Hours : Oracle sharding hyperscale globally d...Tammy Bednar
 
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...Tammy Bednar
 
01 Ronald Vargas Verdades ciertas, mitos y falacias sobre oracle database 19c
01 Ronald Vargas Verdades ciertas, mitos y falacias sobre oracle database 19c01 Ronald Vargas Verdades ciertas, mitos y falacias sobre oracle database 19c
01 Ronald Vargas Verdades ciertas, mitos y falacias sobre oracle database 19cRonald Francisco Vargas Quesada
 
Data Virtualization Primer -
Data Virtualization Primer -Data Virtualization Primer -
Data Virtualization Primer -Kenneth Peeples
 
Technical Overview of CDS View – SAP HANA Part I
Technical Overview of CDS View – SAP HANA Part ITechnical Overview of CDS View – SAP HANA Part I
Technical Overview of CDS View – SAP HANA Part IAshish Saxena
 
SAP HANA Native Application Development
SAP HANA Native Application DevelopmentSAP HANA Native Application Development
SAP HANA Native Application DevelopmentDickinson + Associates
 
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...Tammy Bednar
 
The Very Very Latest in Database Development - Oracle Open World 2012
The Very Very Latest in Database Development - Oracle Open World 2012The Very Very Latest in Database Development - Oracle Open World 2012
The Very Very Latest in Database Development - Oracle Open World 2012Lucas Jellema
 
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)Guido Schmutz
 
Oracle ADF Architecture TV - Design - Task Flow Transaction Options
Oracle ADF Architecture TV - Design - Task Flow Transaction OptionsOracle ADF Architecture TV - Design - Task Flow Transaction Options
Oracle ADF Architecture TV - Design - Task Flow Transaction OptionsChris Muir
 

Mais procurados (20)

SAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming ModelSAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming Model
 
NetWeaver Gateway- Introduction to OData
NetWeaver Gateway- Introduction to ODataNetWeaver Gateway- Introduction to OData
NetWeaver Gateway- Introduction to OData
 
HANA SPS07 Extended Application Service
HANA SPS07 Extended Application ServiceHANA SPS07 Extended Application Service
HANA SPS07 Extended Application Service
 
NetWeaver Gateway- Introduction to REST
NetWeaver Gateway- Introduction to RESTNetWeaver Gateway- Introduction to REST
NetWeaver Gateway- Introduction to REST
 
SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)
 
Introducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database ProfessionalsIntroducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database Professionals
 
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
 
Gubendran Lakshmanan
Gubendran LakshmananGubendran Lakshmanan
Gubendran Lakshmanan
 
Database Cloud Services Office Hours : Oracle sharding hyperscale globally d...
Database Cloud Services Office Hours : Oracle sharding  hyperscale globally d...Database Cloud Services Office Hours : Oracle sharding  hyperscale globally d...
Database Cloud Services Office Hours : Oracle sharding hyperscale globally d...
 
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
 
SAP NetWeaver Gateway - RFC & BOR Generators
SAP NetWeaver Gateway - RFC & BOR GeneratorsSAP NetWeaver Gateway - RFC & BOR Generators
SAP NetWeaver Gateway - RFC & BOR Generators
 
01 Ronald Vargas Verdades ciertas, mitos y falacias sobre oracle database 19c
01 Ronald Vargas Verdades ciertas, mitos y falacias sobre oracle database 19c01 Ronald Vargas Verdades ciertas, mitos y falacias sobre oracle database 19c
01 Ronald Vargas Verdades ciertas, mitos y falacias sobre oracle database 19c
 
Data Virtualization Primer -
Data Virtualization Primer -Data Virtualization Primer -
Data Virtualization Primer -
 
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
 
Technical Overview of CDS View – SAP HANA Part I
Technical Overview of CDS View – SAP HANA Part ITechnical Overview of CDS View – SAP HANA Part I
Technical Overview of CDS View – SAP HANA Part I
 
SAP HANA Native Application Development
SAP HANA Native Application DevelopmentSAP HANA Native Application Development
SAP HANA Native Application Development
 
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
 
The Very Very Latest in Database Development - Oracle Open World 2012
The Very Very Latest in Database Development - Oracle Open World 2012The Very Very Latest in Database Development - Oracle Open World 2012
The Very Very Latest in Database Development - Oracle Open World 2012
 
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
 
Oracle ADF Architecture TV - Design - Task Flow Transaction Options
Oracle ADF Architecture TV - Design - Task Flow Transaction OptionsOracle ADF Architecture TV - Design - Task Flow Transaction Options
Oracle ADF Architecture TV - Design - Task Flow Transaction Options
 

Destaque

Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...ColdFusionConference
 
Predicting Defects in SAP Java Code: An Experience Report
Predicting Defects in SAP Java Code: An Experience ReportPredicting Defects in SAP Java Code: An Experience Report
Predicting Defects in SAP Java Code: An Experience Reporttilman.holschuh
 
Cpl IT Salary Survey Q1/Q2 2016
Cpl IT Salary Survey Q1/Q2 2016Cpl IT Salary Survey Q1/Q2 2016
Cpl IT Salary Survey Q1/Q2 2016Cpl Jobs
 
Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ...
Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ...Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ...
Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ...elliando dias
 
The new ehcache 2.0 and hibernate spi
The new ehcache 2.0 and hibernate spiThe new ehcache 2.0 and hibernate spi
The new ehcache 2.0 and hibernate spiCyril Lakech
 
Intro To Sap Netweaver Java
Intro To Sap Netweaver JavaIntro To Sap Netweaver Java
Intro To Sap Netweaver JavaLeland Bartlett
 
235470379 rfc-destination-sap-srm
235470379 rfc-destination-sap-srm235470379 rfc-destination-sap-srm
235470379 rfc-destination-sap-srmManish Nangalia
 
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave LloydAdobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave LloydDave Lloyd
 
Practical SAP pentesting workshop (NullCon Goa)
Practical SAP pentesting workshop (NullCon Goa)Practical SAP pentesting workshop (NullCon Goa)
Practical SAP pentesting workshop (NullCon Goa)ERPScan
 
Low latency Java apps
Low latency Java appsLow latency Java apps
Low latency Java appsSimon Ritter
 
Connecting IMS LTI and SAML (Draft)
Connecting IMS LTI and SAML (Draft)Connecting IMS LTI and SAML (Draft)
Connecting IMS LTI and SAML (Draft)Charles Severance
 
Corevist extension for hybris Commerce Accelerator for B2B
Corevist extension for hybris Commerce Accelerator for B2BCorevist extension for hybris Commerce Accelerator for B2B
Corevist extension for hybris Commerce Accelerator for B2BKids4Peace International
 
Interoperability - LTI and Experience API (Formerly TinCan)
Interoperability - LTI and Experience API (Formerly TinCan) Interoperability - LTI and Experience API (Formerly TinCan)
Interoperability - LTI and Experience API (Formerly TinCan) Nine Lanterns
 
RFC destination step by step
RFC destination step by stepRFC destination step by step
RFC destination step by stepRipunjay Rathaur
 
Overview of the ehcache
Overview of the ehcacheOverview of the ehcache
Overview of the ehcacheHyeonSeok Choi
 
Adobe Experience Manager Vision and Roadmap
Adobe Experience Manager Vision and RoadmapAdobe Experience Manager Vision and Roadmap
Adobe Experience Manager Vision and RoadmapLoni Stark
 
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB MongoDB
 
AEM Sightly Template Language
AEM Sightly Template LanguageAEM Sightly Template Language
AEM Sightly Template LanguageGabriel Walt
 
SAP MM Online Training Course | Webinar's Presentation
SAP MM Online Training Course | Webinar's PresentationSAP MM Online Training Course | Webinar's Presentation
SAP MM Online Training Course | Webinar's PresentationEnterprise Business Solutions
 

Destaque (20)

Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...
 
Predicting Defects in SAP Java Code: An Experience Report
Predicting Defects in SAP Java Code: An Experience ReportPredicting Defects in SAP Java Code: An Experience Report
Predicting Defects in SAP Java Code: An Experience Report
 
Cpl IT Salary Survey Q1/Q2 2016
Cpl IT Salary Survey Q1/Q2 2016Cpl IT Salary Survey Q1/Q2 2016
Cpl IT Salary Survey Q1/Q2 2016
 
Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ...
Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ...Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ...
Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ...
 
Sap java
Sap javaSap java
Sap java
 
The new ehcache 2.0 and hibernate spi
The new ehcache 2.0 and hibernate spiThe new ehcache 2.0 and hibernate spi
The new ehcache 2.0 and hibernate spi
 
Intro To Sap Netweaver Java
Intro To Sap Netweaver JavaIntro To Sap Netweaver Java
Intro To Sap Netweaver Java
 
235470379 rfc-destination-sap-srm
235470379 rfc-destination-sap-srm235470379 rfc-destination-sap-srm
235470379 rfc-destination-sap-srm
 
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave LloydAdobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd
 
Practical SAP pentesting workshop (NullCon Goa)
Practical SAP pentesting workshop (NullCon Goa)Practical SAP pentesting workshop (NullCon Goa)
Practical SAP pentesting workshop (NullCon Goa)
 
Low latency Java apps
Low latency Java appsLow latency Java apps
Low latency Java apps
 
Connecting IMS LTI and SAML (Draft)
Connecting IMS LTI and SAML (Draft)Connecting IMS LTI and SAML (Draft)
Connecting IMS LTI and SAML (Draft)
 
Corevist extension for hybris Commerce Accelerator for B2B
Corevist extension for hybris Commerce Accelerator for B2BCorevist extension for hybris Commerce Accelerator for B2B
Corevist extension for hybris Commerce Accelerator for B2B
 
Interoperability - LTI and Experience API (Formerly TinCan)
Interoperability - LTI and Experience API (Formerly TinCan) Interoperability - LTI and Experience API (Formerly TinCan)
Interoperability - LTI and Experience API (Formerly TinCan)
 
RFC destination step by step
RFC destination step by stepRFC destination step by step
RFC destination step by step
 
Overview of the ehcache
Overview of the ehcacheOverview of the ehcache
Overview of the ehcache
 
Adobe Experience Manager Vision and Roadmap
Adobe Experience Manager Vision and RoadmapAdobe Experience Manager Vision and Roadmap
Adobe Experience Manager Vision and Roadmap
 
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
 
AEM Sightly Template Language
AEM Sightly Template LanguageAEM Sightly Template Language
AEM Sightly Template Language
 
SAP MM Online Training Course | Webinar's Presentation
SAP MM Online Training Course | Webinar's PresentationSAP MM Online Training Course | Webinar's Presentation
SAP MM Online Training Course | Webinar's Presentation
 

Semelhante a Integrating SAP the Java EE Way - JBoss One Day talk 2012

Red Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop LabsRed Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop LabsJudy Breedlove
 
Java one 2010
Java one 2010Java one 2010
Java one 2010scdn
 
Hadoop Integration in Cassandra
Hadoop Integration in CassandraHadoop Integration in Cassandra
Hadoop Integration in CassandraJairam Chandar
 
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)camunda services GmbH
 
Relevance trilogy may dream be with you! (dec17)
Relevance trilogy  may dream be with you! (dec17)Relevance trilogy  may dream be with you! (dec17)
Relevance trilogy may dream be with you! (dec17)Woonsan Ko
 
WebNet Conference 2012 - Designing complex applications using html5 and knock...
WebNet Conference 2012 - Designing complex applications using html5 and knock...WebNet Conference 2012 - Designing complex applications using html5 and knock...
WebNet Conference 2012 - Designing complex applications using html5 and knock...Fabio Franzini
 
Boost Development With Java EE7 On EAP7 (Demitris Andreadis)
Boost Development With Java EE7 On EAP7 (Demitris Andreadis)Boost Development With Java EE7 On EAP7 (Demitris Andreadis)
Boost Development With Java EE7 On EAP7 (Demitris Andreadis)Red Hat Developers
 
Symfony2 - from the trenches
Symfony2 - from the trenchesSymfony2 - from the trenches
Symfony2 - from the trenchesLukas Smith
 
Smoothing Your Java with DSLs
Smoothing Your Java with DSLsSmoothing Your Java with DSLs
Smoothing Your Java with DSLsintelliyole
 
09 - express nodes on the right angle - vitaliy basyuk - it event 2013 (5)
09 - express nodes on the right angle - vitaliy basyuk - it event 2013 (5)09 - express nodes on the right angle - vitaliy basyuk - it event 2013 (5)
09 - express nodes on the right angle - vitaliy basyuk - it event 2013 (5)Igor Bronovskyy
 
Symfony2 from the Trenches
Symfony2 from the TrenchesSymfony2 from the Trenches
Symfony2 from the TrenchesJonathan Wage
 
Bonnes pratiques de développement avec Node js
Bonnes pratiques de développement avec Node jsBonnes pratiques de développement avec Node js
Bonnes pratiques de développement avec Node jsFrancois Zaninotto
 
Java Configuration Deep Dive with Spring
Java Configuration Deep Dive with SpringJava Configuration Deep Dive with Spring
Java Configuration Deep Dive with SpringJoshua Long
 
May 2010 - RestEasy
May 2010 - RestEasyMay 2010 - RestEasy
May 2010 - RestEasyJBug Italy
 
Implementation of GUI Framework part3
Implementation of GUI Framework part3Implementation of GUI Framework part3
Implementation of GUI Framework part3masahiroookubo
 
Backbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVCBackbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVCpootsbook
 

Semelhante a Integrating SAP the Java EE Way - JBoss One Day talk 2012 (20)

Red Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop LabsRed Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop Labs
 
Java one 2010
Java one 2010Java one 2010
Java one 2010
 
Hadoop Integration in Cassandra
Hadoop Integration in CassandraHadoop Integration in Cassandra
Hadoop Integration in Cassandra
 
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English)
 
Relevance trilogy may dream be with you! (dec17)
Relevance trilogy  may dream be with you! (dec17)Relevance trilogy  may dream be with you! (dec17)
Relevance trilogy may dream be with you! (dec17)
 
WebNet Conference 2012 - Designing complex applications using html5 and knock...
WebNet Conference 2012 - Designing complex applications using html5 and knock...WebNet Conference 2012 - Designing complex applications using html5 and knock...
WebNet Conference 2012 - Designing complex applications using html5 and knock...
 
Boost Development With Java EE7 On EAP7 (Demitris Andreadis)
Boost Development With Java EE7 On EAP7 (Demitris Andreadis)Boost Development With Java EE7 On EAP7 (Demitris Andreadis)
Boost Development With Java EE7 On EAP7 (Demitris Andreadis)
 
Symfony2 - from the trenches
Symfony2 - from the trenchesSymfony2 - from the trenches
Symfony2 - from the trenches
 
Smoothing Your Java with DSLs
Smoothing Your Java with DSLsSmoothing Your Java with DSLs
Smoothing Your Java with DSLs
 
Broadleaf Presents Thymeleaf
Broadleaf Presents ThymeleafBroadleaf Presents Thymeleaf
Broadleaf Presents Thymeleaf
 
Play 2.0
Play 2.0Play 2.0
Play 2.0
 
09 - express nodes on the right angle - vitaliy basyuk - it event 2013 (5)
09 - express nodes on the right angle - vitaliy basyuk - it event 2013 (5)09 - express nodes on the right angle - vitaliy basyuk - it event 2013 (5)
09 - express nodes on the right angle - vitaliy basyuk - it event 2013 (5)
 
Sqlapi0.1
Sqlapi0.1Sqlapi0.1
Sqlapi0.1
 
RESTEasy
RESTEasyRESTEasy
RESTEasy
 
Symfony2 from the Trenches
Symfony2 from the TrenchesSymfony2 from the Trenches
Symfony2 from the Trenches
 
Bonnes pratiques de développement avec Node js
Bonnes pratiques de développement avec Node jsBonnes pratiques de développement avec Node js
Bonnes pratiques de développement avec Node js
 
Java Configuration Deep Dive with Spring
Java Configuration Deep Dive with SpringJava Configuration Deep Dive with Spring
Java Configuration Deep Dive with Spring
 
May 2010 - RestEasy
May 2010 - RestEasyMay 2010 - RestEasy
May 2010 - RestEasy
 
Implementation of GUI Framework part3
Implementation of GUI Framework part3Implementation of GUI Framework part3
Implementation of GUI Framework part3
 
Backbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVCBackbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVC
 

Mais de hwilming

Introduction Machine Learning - Microsoft
Introduction Machine Learning - MicrosoftIntroduction Machine Learning - Microsoft
Introduction Machine Learning - Microsofthwilming
 
A practical introduction to data science and machine learning
A practical introduction to data science and machine learningA practical introduction to data science and machine learning
A practical introduction to data science and machine learninghwilming
 
Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014
Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014
Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014hwilming
 
Creating Mobile Enterprise Applications with Red Hat / JBoss
Creating Mobile Enterprise Applications with Red Hat / JBossCreating Mobile Enterprise Applications with Red Hat / JBoss
Creating Mobile Enterprise Applications with Red Hat / JBosshwilming
 
JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7
JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7
JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7hwilming
 
JBoss EAP clustering
JBoss EAP clustering JBoss EAP clustering
JBoss EAP clustering hwilming
 
JBoss AS / EAP Clustering
JBoss AS / EAP  ClusteringJBoss AS / EAP  Clustering
JBoss AS / EAP Clusteringhwilming
 
JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7
JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7
JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7hwilming
 
JPA – Der Persistenz-­Standard in der Java EE und SE
JPA – Der Persistenz-­Standard in der Java EE und SEJPA – Der Persistenz-­Standard in der Java EE und SE
JPA – Der Persistenz-­Standard in der Java EE und SEhwilming
 
Optimierung von JPA-­Anwendungen
Optimierung von JPA-­AnwendungenOptimierung von JPA-­Anwendungen
Optimierung von JPA-­Anwendungenhwilming
 
Aerogear Java User Group Presentation
Aerogear Java User Group PresentationAerogear Java User Group Presentation
Aerogear Java User Group Presentationhwilming
 
The Gear you need to go mobile with Java Enterprise - Jax 2012
The Gear you need to go mobile with Java Enterprise - Jax 2012The Gear you need to go mobile with Java Enterprise - Jax 2012
The Gear you need to go mobile with Java Enterprise - Jax 2012hwilming
 
Need(le) for Speed - Effective Unit Testing for Java EE
Need(le) for Speed - Effective Unit Testing for Java EENeed(le) for Speed - Effective Unit Testing for Java EE
Need(le) for Speed - Effective Unit Testing for Java EEhwilming
 
Need(le) for Speed - Effective Unit Testing for Java EE
Need(le) for Speed - Effective Unit Testing for Java EENeed(le) for Speed - Effective Unit Testing for Java EE
Need(le) for Speed - Effective Unit Testing for Java EEhwilming
 

Mais de hwilming (14)

Introduction Machine Learning - Microsoft
Introduction Machine Learning - MicrosoftIntroduction Machine Learning - Microsoft
Introduction Machine Learning - Microsoft
 
A practical introduction to data science and machine learning
A practical introduction to data science and machine learningA practical introduction to data science and machine learning
A practical introduction to data science and machine learning
 
Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014
Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014
Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014
 
Creating Mobile Enterprise Applications with Red Hat / JBoss
Creating Mobile Enterprise Applications with Red Hat / JBossCreating Mobile Enterprise Applications with Red Hat / JBoss
Creating Mobile Enterprise Applications with Red Hat / JBoss
 
JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7
JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7
JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7
 
JBoss EAP clustering
JBoss EAP clustering JBoss EAP clustering
JBoss EAP clustering
 
JBoss AS / EAP Clustering
JBoss AS / EAP  ClusteringJBoss AS / EAP  Clustering
JBoss AS / EAP Clustering
 
JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7
JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7
JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7
 
JPA – Der Persistenz-­Standard in der Java EE und SE
JPA – Der Persistenz-­Standard in der Java EE und SEJPA – Der Persistenz-­Standard in der Java EE und SE
JPA – Der Persistenz-­Standard in der Java EE und SE
 
Optimierung von JPA-­Anwendungen
Optimierung von JPA-­AnwendungenOptimierung von JPA-­Anwendungen
Optimierung von JPA-­Anwendungen
 
Aerogear Java User Group Presentation
Aerogear Java User Group PresentationAerogear Java User Group Presentation
Aerogear Java User Group Presentation
 
The Gear you need to go mobile with Java Enterprise - Jax 2012
The Gear you need to go mobile with Java Enterprise - Jax 2012The Gear you need to go mobile with Java Enterprise - Jax 2012
The Gear you need to go mobile with Java Enterprise - Jax 2012
 
Need(le) for Speed - Effective Unit Testing for Java EE
Need(le) for Speed - Effective Unit Testing for Java EENeed(le) for Speed - Effective Unit Testing for Java EE
Need(le) for Speed - Effective Unit Testing for Java EE
 
Need(le) for Speed - Effective Unit Testing for Java EE
Need(le) for Speed - Effective Unit Testing for Java EENeed(le) for Speed - Effective Unit Testing for Java EE
Need(le) for Speed - Effective Unit Testing for Java EE
 

Integrating SAP the Java EE Way - JBoss One Day talk 2012