Friday, October 11, 2013

SAP NW Gateway with Fuse and DV

Travel Triage v1.0

The Travel Triage Reference Implementation v1.0 shows the integration of Red Hat JBoss Data Virtualization, Red Hat JBoss Fuse, SAP NetWeaver Gateway and MySQL.  The Android application communicates with Fuse through MQTT and with Data Virtualization through REST.

The demo architecture is described in this diagram-



Section 1 - Red Hat JBoss Developer Program

The JBoss developer program allows developers to download the Enterprise Software from Red Hat to try for free without having to purchase a subscription.  The developer can create , deploy and test applications in a development environment before purchasing subscriptions for the production environment.  For this Reference Architecture you can download the same products at-

Data Virtualization 6 - http://www.jboss.org/products/datavirt.html
Fuse 6 - https://www.jboss.org/products/fuse.html
JBDS 7 - https://www.jboss.org/products/jbds.html
JBDS Core and Integration Stack - http://www.jboss.org/tools/download

Section 2 - Red Hat JBoss Fuse 6 Overview and Integration to SAP NetWeaver Gateway

JBoss Fuse is composed of several community projects - Apache ActiveMQ, Apache CXF, Apache Karaf and Apache Camel.  We will highlight Apache ActiveMQ and Apache Camel.

Apache Camel is a integration framework based on Enterprise Integration Patterns.  Camel allows you to define routing and mediation rules in a variety of domain-specific languages (DSL). Camel exposed many component implementations via Uniform Resource Identifier (URI).  One of those components are the SAP NetWeaver Gateway component.  The sap-netweaver componenet integrates with the SAP NetWeaver Gateway using HTTP transports.  In this demonstration the camel route with the Spring DSL to get a command from a file, use it with the sap-netweaver component and then use the results.

Apache ActiveMQ is the open source messageing and integration pattern server.  ActiveMQ supports a variety of Cross Language Clients and protocols.  In this demonstration we are using the MQTT protocol.  MQTT is a lightweight machine-to-machine (M@M) publish and subscribe messaging protocol.

Section 3 - Red Hat JBoss Data Virtualization 6 Overview and Integration to SAP NetWeaver Gateway

Data Virtualization allows applications to use data from multiple, heterogenous data stores.  Through abstraction and federation, the data is accessed and integrated in real-time across distributed data sources copying or moving data from its system of record.  Teiid is the community project that is the basis for Data Virtualization.

In our demonstration we are using MySQL and SAP NetWeaver Gateway as the datasources and expose them as one datasource to the application.

Section 4 - Developer Resources

Slides from SAP Workshop -http://www.slideshare.net/opensourcementor/sap-webinarbriefingsep2013final

Using MQTT with Fuse and Android - /2013/10/red-hat-jboss-mq-and-iot.html
  with code - https://github.com/kpeeples/a-mq-android-mqtt

Using the Camel SAP NetWeaver Gateway with Fuse - /2013/10/using-camel-sap-netweaver-gateway.html
  with code - https://github.com/kpeeples/Fuse-sap-netweaver-gateway-component

Travel Triage Code - https://github.com/kpeeples/sap-partner-outreach