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

H
hwilmingakquinet AG
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
Integrating SAP the Java EE Way - JBoss One Day talk 2012
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...
Integrating SAP the Java EE Way - JBoss One Day talk 2012
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?
1 von 103

Recomendados

SAP Integration with Red Hat JBoss Technologies von
SAP Integration with Red Hat JBoss TechnologiesSAP Integration with Red Hat JBoss Technologies
SAP Integration with Red Hat JBoss Technologieshwilming
6.3K views35 Folien
Sap integration with_j_boss_technologies von
Sap integration with_j_boss_technologiesSap integration with_j_boss_technologies
Sap integration with_j_boss_technologiesSerge Pagop
2.4K views33 Folien
Sap java connector / Hybris RFC von
Sap java connector / Hybris RFCSap java connector / Hybris RFC
Sap java connector / Hybris RFCMonsif Elaissoussi
2K views21 Folien
Migrating traditional Java EE Applications to mobile von
Migrating traditional Java EE Applications to mobileMigrating traditional Java EE Applications to mobile
Migrating traditional Java EE Applications to mobileSerge Pagop
1.2K views23 Folien
Create engaging user_experiences_with_red_hat_j_boss_portal_and_first_spirit_cms von
Create engaging user_experiences_with_red_hat_j_boss_portal_and_first_spirit_cmsCreate engaging user_experiences_with_red_hat_j_boss_portal_and_first_spirit_cms
Create engaging user_experiences_with_red_hat_j_boss_portal_and_first_spirit_cmsSerge Pagop
4.6K views23 Folien

Más contenido relacionado

Was ist angesagt?

SAP HANA SPS09 - XS Programming Model von
SAP HANA SPS09 - XS Programming ModelSAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming ModelSAP Technology
10.3K views146 Folien
HANA SPS07 Extended Application Service von
HANA SPS07 Extended Application ServiceHANA SPS07 Extended Application Service
HANA SPS07 Extended Application ServiceSAP Technology
3.4K views41 Folien
SOA for PL/SQL Developer (OPP 2010) von
SOA for PL/SQL Developer (OPP 2010)SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)Lucas Jellema
3.3K views80 Folien
Introducing SOA and Oracle SOA Suite 11g for Database Professionals von
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
4.7K views41 Folien

Was ist angesagt?(20)

SAP HANA SPS09 - XS Programming Model von SAP Technology
SAP HANA SPS09 - XS Programming ModelSAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming Model
SAP Technology10.3K views
HANA SPS07 Extended Application Service von SAP Technology
HANA SPS07 Extended Application ServiceHANA SPS07 Extended Application Service
HANA SPS07 Extended Application Service
SAP Technology3.4K views
SOA for PL/SQL Developer (OPP 2010) von Lucas Jellema
SOA for PL/SQL Developer (OPP 2010)SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)
Lucas Jellema3.3K views
Introducing SOA and Oracle SOA Suite 11g for Database Professionals von Lucas Jellema
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
Lucas Jellema4.7K views
Database Cloud Services Office Hours : Oracle sharding hyperscale globally d... von Tammy Bednar
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 Bednar120 views
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ... von 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 ...
Tammy Bednar68 views
Technical Overview of CDS View – SAP HANA Part I von Ashish Saxena
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
Ashish Saxena9.3K views
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit... von Tammy Bednar
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 Bednar225 views
The Very Very Latest in Database Development - Oracle Open World 2012 von Lucas Jellema
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
Lucas Jellema2.5K views
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB) von Guido Schmutz
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 Schmutz26.6K views
Oracle ADF Architecture TV - Design - Task Flow Transaction Options von Chris Muir
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
Chris Muir1.1K views

Destacado

Developing High Performance and Scalable ColdFusion Application Using Terraco... von
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
794 views52 Folien
Predicting Defects in SAP Java Code: An Experience Report von
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
1.5K views58 Folien
Cpl IT Salary Survey Q1/Q2 2016 von
Cpl IT Salary Survey Q1/Q2 2016Cpl IT Salary Survey Q1/Q2 2016
Cpl IT Salary Survey Q1/Q2 2016Cpl Jobs
7.3K views8 Folien
Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ... von
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
3.4K views50 Folien
Sap java von
Sap javaSap java
Sap javalargeman
620 views38 Folien
The new ehcache 2.0 and hibernate spi von
The new ehcache 2.0 and hibernate spiThe new ehcache 2.0 and hibernate spi
The new ehcache 2.0 and hibernate spiCyril Lakech
2.1K views55 Folien

Destacado(20)

Developing High Performance and Scalable ColdFusion Application Using Terraco... von ColdFusionConference
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 von tilman.holschuh
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
tilman.holschuh1.5K views
Cpl IT Salary Survey Q1/Q2 2016 von Cpl Jobs
Cpl IT Salary Survey Q1/Q2 2016Cpl IT Salary Survey Q1/Q2 2016
Cpl IT Salary Survey Q1/Q2 2016
Cpl Jobs7.3K views
Distributed Caching Using the JCACHE API and ehcache, Including a Case Study ... von elliando dias
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 dias3.4K views
Sap java von largeman
Sap javaSap java
Sap java
largeman620 views
The new ehcache 2.0 and hibernate spi von Cyril Lakech
The new ehcache 2.0 and hibernate spiThe new ehcache 2.0 and hibernate spi
The new ehcache 2.0 and hibernate spi
Cyril Lakech2.1K views
Adobe Experience Manager (AEM) - Multilingual SIG on SEO - Dave Lloyd von 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
Dave Lloyd3.8K views
Practical SAP pentesting workshop (NullCon Goa) von ERPScan
Practical SAP pentesting workshop (NullCon Goa)Practical SAP pentesting workshop (NullCon Goa)
Practical SAP pentesting workshop (NullCon Goa)
ERPScan1.9K views
Low latency Java apps von Simon Ritter
Low latency Java appsLow latency Java apps
Low latency Java apps
Simon Ritter7.4K views
Interoperability - LTI and Experience API (Formerly TinCan) von Nine Lanterns
Interoperability - LTI and Experience API (Formerly TinCan) Interoperability - LTI and Experience API (Formerly TinCan)
Interoperability - LTI and Experience API (Formerly TinCan)
Nine Lanterns 11.9K views
Adobe Experience Manager Vision and Roadmap von Loni Stark
Adobe Experience Manager Vision and RoadmapAdobe Experience Manager Vision and Roadmap
Adobe Experience Manager Vision and Roadmap
Loni Stark9.4K views
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB von 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
MongoDB6.8K views
AEM Sightly Template Language von Gabriel Walt
AEM Sightly Template LanguageAEM Sightly Template Language
AEM Sightly Template Language
Gabriel Walt47.6K views

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

Red Hat Agile integration Workshop Labs von
Red Hat Agile integration Workshop LabsRed Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop LabsJudy Breedlove
769 views86 Folien
Java one 2010 von
Java one 2010Java one 2010
Java one 2010scdn
355 views27 Folien
Hadoop Integration in Cassandra von
Hadoop Integration in CassandraHadoop Integration in Cassandra
Hadoop Integration in CassandraJairam Chandar
4.4K views15 Folien
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English) von
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
8.6K views35 Folien
Relevance trilogy may dream be with you! (dec17) von
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
1.2K views42 Folien
WebNet Conference 2012 - Designing complex applications using html5 and knock... von
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
1.6K views36 Folien

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

Red Hat Agile integration Workshop Labs von Judy Breedlove
Red Hat Agile integration Workshop LabsRed Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop Labs
Judy Breedlove769 views
Java one 2010 von scdn
Java one 2010Java one 2010
Java one 2010
scdn355 views
Hadoop Integration in Cassandra von Jairam Chandar
Hadoop Integration in CassandraHadoop Integration in Cassandra
Hadoop Integration in Cassandra
Jairam Chandar4.4K views
Camunda BPM 7.2: Tasklist and Javascript Forms SDK (English) von camunda services GmbH
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) von Woonsan Ko
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 Ko1.2K views
WebNet Conference 2012 - Designing complex applications using html5 and knock... von Fabio Franzini
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 Franzini1.6K views
Boost Development With Java EE7 On EAP7 (Demitris Andreadis) von Red Hat Developers
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 Developers1.9K views
Symfony2 - from the trenches von Lukas Smith
Symfony2 - from the trenchesSymfony2 - from the trenches
Symfony2 - from the trenches
Lukas Smith3.3K views
Smoothing Your Java with DSLs von intelliyole
Smoothing Your Java with DSLsSmoothing Your Java with DSLs
Smoothing Your Java with DSLs
intelliyole1.1K views
09 - express nodes on the right angle - vitaliy basyuk - it event 2013 (5) von Igor Bronovskyy
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 Bronovskyy410 views
Symfony2 from the Trenches von Jonathan Wage
Symfony2 from the TrenchesSymfony2 from the Trenches
Symfony2 from the Trenches
Jonathan Wage5.4K views
Bonnes pratiques de développement avec Node js von Francois Zaninotto
Bonnes pratiques de développement avec Node jsBonnes pratiques de développement avec Node js
Bonnes pratiques de développement avec Node js
Francois Zaninotto5.7K views
Java Configuration Deep Dive with Spring von Joshua Long
Java Configuration Deep Dive with SpringJava Configuration Deep Dive with Spring
Java Configuration Deep Dive with Spring
Joshua Long2.3K views
May 2010 - RestEasy von JBug Italy
May 2010 - RestEasyMay 2010 - RestEasy
May 2010 - RestEasy
JBug Italy1.3K views
Implementation of GUI Framework part3 von masahiroookubo
Implementation of GUI Framework part3Implementation of GUI Framework part3
Implementation of GUI Framework part3
masahiroookubo1.7K views
Backbone.js — Introduction to client-side JavaScript MVC von pootsbook
Backbone.js — Introduction to client-side JavaScript MVCBackbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVC
pootsbook3K views

Más de hwilming

Introduction Machine Learning - Microsoft von
Introduction Machine Learning - MicrosoftIntroduction Machine Learning - Microsoft
Introduction Machine Learning - Microsofthwilming
427 views21 Folien
A practical introduction to data science and machine learning von
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
472 views83 Folien
Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014 von
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
1.2K views28 Folien
Creating Mobile Enterprise Applications with Red Hat / JBoss von
Creating Mobile Enterprise Applications with Red Hat / JBossCreating Mobile Enterprise Applications with Red Hat / JBoss
Creating Mobile Enterprise Applications with Red Hat / JBosshwilming
1K views20 Folien
JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7 von
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
2.1K views7 Folien
JBoss EAP clustering von
JBoss EAP clustering JBoss EAP clustering
JBoss EAP clustering hwilming
2.1K views31 Folien

Más de hwilming(14)

Introduction Machine Learning - Microsoft von hwilming
Introduction Machine Learning - MicrosoftIntroduction Machine Learning - Microsoft
Introduction Machine Learning - Microsoft
hwilming427 views
A practical introduction to data science and machine learning von hwilming
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
hwilming472 views
Exploring Ceylon with Gavin King - JUG BB Talk - Belrin 2014 von hwilming
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
hwilming1.2K views
Creating Mobile Enterprise Applications with Red Hat / JBoss von hwilming
Creating Mobile Enterprise Applications with Red Hat / JBossCreating Mobile Enterprise Applications with Red Hat / JBoss
Creating Mobile Enterprise Applications with Red Hat / JBoss
hwilming1K views
JavaAktuell - Skalierbare Cluster-Topologien mit dem JBoss AS 7 von hwilming
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
hwilming2.1K views
JBoss EAP clustering von hwilming
JBoss EAP clustering JBoss EAP clustering
JBoss EAP clustering
hwilming2.1K views
JBoss AS / EAP Clustering von hwilming
JBoss AS / EAP  ClusteringJBoss AS / EAP  Clustering
JBoss AS / EAP Clustering
hwilming1.9K views
JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7 von hwilming
JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7
JavaAktuell - Hochverfügbarkeit mit dem JBoss AS 7
hwilming2.2K views
JPA – Der Persistenz-­Standard in der Java EE und SE von hwilming
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
hwilming3.3K views
Optimierung von JPA-­Anwendungen von hwilming
Optimierung von JPA-­AnwendungenOptimierung von JPA-­Anwendungen
Optimierung von JPA-­Anwendungen
hwilming4K views
Aerogear Java User Group Presentation von hwilming
Aerogear Java User Group PresentationAerogear Java User Group Presentation
Aerogear Java User Group Presentation
hwilming1.1K views
The Gear you need to go mobile with Java Enterprise - Jax 2012 von hwilming
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
hwilming494 views
Need(le) for Speed - Effective Unit Testing for Java EE von hwilming
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
hwilming1K views
Need(le) for Speed - Effective Unit Testing for Java EE von hwilming
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
hwilming1.3K views

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