Wednesday, June 25, 2014

Red Hat JBoss Fuse Service Works Workshop - Part 3 Lab 1 Switchyard Step 0

Our Fuse Service Works workshop continues this week.  The workshop is designed to get you started quickly and easily on a project with Fuse Service Works.  We will go through the concepts and components of Service Component Architecture, Service Lifecycle Management and Business Transaction Monitoring.

Today we will go through building the Switchyard application.

The workshop series will be split into five postings and will concentrate on creating the switchyard application, moving the deployment through Service Lifecycle Management from development through production and monitoring the services through the Business Activity Monitoring.   The Home Loan Application will be our application that we will use during the series.  Now onto Part 3 of the Fuse Service Works Workshop.

Overview of the workshop
  • Part 1 - Environment Setup 
    • http://planet.jboss.org/post/red_hat_jboss_fuse_service_works_workshop_part_1_environment_setup
  • Part 2 - Lab Introduction
    • http://planet.jboss.org/post/red_hat_jboss_fuse_service_works_workshop_part_2_lab_introduction
  • Part 3 - Lab 1 Switchyard - This Week Step 0
    • Get familiar with the development environment
    • Application design and implementation
    • Hands on experience with important SwitchYard principles
  • Part 4 - Lab 2 Service Lifecycle Management 
    • Gain experience with service governance workflows in Fuse Service Works
    • Become familiar with the Design-Time Governance and S-RAMP consoles
    • Manage a service through the dev, qa, stage, and production tasks
    • Learn Service Lifecycle Management principles
  • Part 5 - Lab 3 Business Activity Monitoring
    • Gain experience with Runtime Governance capabilities in Fuse Service Works
    • Become familiar with Service Activity Monitoring and reporting
    • Become familiar with Policy Enforcement
The code for our series is located on Github - https://github.com/jboss-switchyard/learning/tree/master/summit2014

Switchyard

SwitchYard is a component-based development framework focused on building structured, maintainable services and applications using the concepts and best practices of SOA. It works with Apache Camel to provide a fast, simple, flexible integration runtime with comprehensive connectivity and transports. A uniform application model augments Apache Camel, joining Java EE, BPM, rules, orchestration, and routing into a cohesive development model and runtime. Common functionality and cross-cutting concerns - validation, transformation and policy - are isolated from business logic and handled declaratively. This ensures consistency and eliminates duplication, offering developers a clear view of the structure and relationships of services in an integration application.

http://switchyard.jboss.org/

Now on to Home Loan Application.  Our Lab will be in 7 steps.

Step 0: Getting Started
Step 1: Component Service
Step 2: Component Reference
Step 3: Camel Routing
Step 4: Reference Binding
Step 5: Transformation
Step 6: Service Binding
Step 7: Implementing RESTful status service

Step 0 - Getting Started


Let's import the lab 1 project and introduce key editor concepts.  First lets start JBoss Developer Studio.  Next we want to select a workspace such as the one shown below.







The example shown here was used in the Summit 2014 lab.


Next let's import the existing lab 1 project.  NOTE: Please make sure that you read the Gotchas from the lab environment setup.














Navigate to the location of lab1 and make sure the pom.xml is checked for org.switchyard.training.summit2014.lab1.  This is making the assumption you have cloned the repository from github (https://github.com/jboss-switchyard/learning/tree/master/summit2014).  The lab1 folder contains the source. After importing the project go to the Project Explorer in the left frame and expand the lab1 project.

Let's first look at src/main/java.
Next Let's look at src/main/resources
Now Let's look at src/test/java
Switchyard allows you to unit test individual services in your applications as you build it.  For example Step1Test contains test methods which invoke CreditService directly to verify that it's behavior matches requirements.
Now Let's look at src/test/resources
Now Switchyard!
The Switchyard node provides two functions in the project explorer:

  • An outline style view of the application configuration (services, references, components, etc.)
  • Shortcut to the Switchyard visual application editor via a double-click
Looking at the visual editor:
Looking at the wiring in the visual editor:
Now let's examine the Button Bar.  The button bar is really convenient when interacting with the visual editor.  Just hover over the portion of the diagram you want to interact with and choose an option from the button bar.  This image provides a key to the more frequently used buttons on the button bar.  The properties button is used most by far, so definitely make a note of that one.  If the other buttons don't make sense now, don't worry they will soon.

Next Week we will continue with Step 1.











Introducing your JBoss Technology Evangelist

We have great news!  We now have additional JBoss Technology Evangelists to bring you more articles, demos, blogs, videos, etc.  I wanted highlight each one with their main focus areas along with some links for their work.

Eric Schabell - BRMS, BPM Suite


Kenny Peeples - Fuse Service Works and Data Virtualization


Christina Lin - Fuse and A-MQ


Thomas Qvarnstrom - EAP and Data Grid


Friday, June 13, 2014

Internet of Things with Red Hat and PrismTech

Red Hat and PrismTech have announced their collaboration on IoT this week.  PrismTech has become a Red Hat EMEA Advanced ISV Partner which enables PrismTech to embed Red Hat JBoss Fuse as part of its Vortex Intelligent Data Sharing Platform for the Intenet of Things(IoT). This will Provide customers with a robust, flexible and easy to use platform to connect IoT applications, data services and devices.

JBoss provides the foundation and infrastructure to enable for the Internet of Things to (a) reliably, safely and efficiently collect information (b) Integrate the information and (c) Analyze the information.

PrismTech’s Vortex is an efficient, secure and interoperable device-to-device and device-to-Cloud real-time data-sharing platform with more than 20 configurable end-to-end Qualities-of-Service (QoS).

Vortex Gateway plans to leverage Red Hat JBoss Fuse and its support for multiple protocols (MQTT, XMPP, AMQP, JMS), support for more than 100 connectors, and support for integrating with proprietary and Web Technologies such as W3C Web Services and RESTful Web Services, to seamlessly integrate with applications, services, and devices.

For more information regarding the announcement is at: http://www.businesswire.com/news/home/20140610005854/en/PrismTech-Collaborates-Red-Hat-Deliver-Connectivity-Solutions#.U5tHPvldWSq

Docker Download for Fuse Service Works

I have been working more with Docker and used the Docker images for the Fuse Service Works workshop for APAC RHTE. Docker gives us the capability to easily layer and/or link containers for easy to run demos. We have added a docker build file for Fuse Service Works on http://www.jboss.org/products/fsw/download/ in the download table. This is not a supported download but gives you an example to start using to become familiar with Docker. Keep watching for future updates on Docker and Fuse Service Works.




Docker Download for Data Virtualization



I have been working more with Docker and used the Docker images for the Data Virtualization workshop for APAC RHTE.  Docker gives us the capability to easily layer and/or link containers for easy to run demos.  We have added a docker build file for Data Virtualization on jboss.org/products/datavirt/download in the download table.   This is not a supported download but gives you an example to start using to become familiar with Docker.  Keep watching for future updates on Docker and Data Virtualization.




Data Virtualization and Big Data at APAC Tech Exchange - Day 3

This week was an awesome week at the Red Hat APAC Tech Exchange. More details are at apactechexchange.com. One of my sessions for Day 3 was a presentation and Demo on Gain Better Insight from Big Data Using JBoss Data Virtualization. Any feedback on the presentation is welcome so please send me an email or contact me on IRC at kpeeples.

The agenda for the presentation is:
  • Demystifying Big Data 
  • Data Virtualization: Making Big Data Available to Everyone 
  • Red Hat Big Data Strategy and Platform 
  • Real World Customer Example using Red Hat Big Data Platform 
  • Data Virtualization Roadmap 
  • Demo 
  • Q&A 
https://speakerdeck.com/kpeeples/big-data-and-data-virtualization




Using Fuse on OpenShift at APAC Tech Exchange - Day 3

This week was an awesome week at the Red Hat APAC Tech Exchange. More details are at apactechexchange.com. One of my sessions for Day 3 was a presentation and Demo on Fuse on OpenShift. Any feedback on the presentation is welcome so please send me an email or contact me on IRC at kpeeples.

OpenShift Online automates the provisioning, management, and scaling of applications so that you can focus on development and creativity. The newly created Red Hat JBoss Fuse 6.1 cartridge allows you to use Fuse and Fuse Fabric in the OpenShift Online public cloud. JBoss Fuse provides a full-featured, easy-to-use and intuitive framework for integration with extensive connectivity options to external applications.

You will learn:
  • How to install the Fuse cartridge. 
  • How to access and use the Fuse Management Console. 
  • How to deploy and test a Fuse bundle 
https://speakerdeck.com/kpeeples/using-red-hat-jboss-fuse-on-openshift




Thursday, June 12, 2014

Fuse Service Works with Docker Workshop at APAC Tech Exchange - Day 2

This week was an awesome week at the Red Hat APAC Tech Exchange.  More details are at apactechexchange.com.  One of my sessions for Day 2 was a 2 hour workshop on Fuse Service Works which includes using Docker.  It is hands on so take a look and give us some feedback so we can improve the workshop.  Read through the presentation and then get started with the FSW Workshop located on github.  Send me an email or contact me on IRC at kpeeples.


Lab 1: Switchyard Application
Get familiar with the development environment, Application design and implementation, and Hands on experience with important SwitchYard principles
Lab 2: Design Time Governance
Gain experience with service governance workflows in Fuse Service Works, Become familiar with the Design-Time Governance and S-RAMP consoles, Manage a service through the dev, qa, stage, and  production tasks, and Learn Service Lifecycle Management principles
Lab 3: Run Time Governance
Gain experience with Runtime Governance capabilities in Fuse Service Works, Become familiar with Service Activity Monitoring and reporting, Become familiar with Policy Enforcement

Presentation: https://speakerdeck.com/kpeeples/rhte-fuse-service-works-workshop

Data Virtualization with Docker Workshop at APAC Tech Exchange - Day 2

This week was an awesome week at the Red Hat APAC Tech Exchange.  More details are at apactechexchange.com.  One of my sessions for Day 2 was a 2 hour workshop on Data Virtualization which includes using Docker.  It is hands on so take a look and give us some feedback so we can improve the workshop.  Read through the presentation and then get started with the DVWorkshop located on github.  Send me an email or contact me on IRC at kpeeples.

Lab 1: Install and start the JBoss Data Virtualization Server
Lab 2: Install the tools and connect JBDS to the JBoss Data Virtualization Server
Lab 3: Create a project and Import Data Source
Lab 4: Create a Virtual Base Layer (VBL)
Lab 5: Create an Enterprise Data Layer
Lab 6: Create a Data Federation Layer
Lab 7: Create a Web Service
Lab 8: Virtual DataBase Deployment
Lab 9: Accessing Data Federation Layer through OData

Presentation: https://speakerdeck.com/kpeeples/rhte-data-virtualization-workshop



Wednesday, June 11, 2014

Gain control and use all your data security with data virtualization

Data Virtualization Webinar today at 11am EST

Data is the life blood of the enterprise. Do you feel comfortable with the amount of control you have over all of your data? Do you know who’s accessing it and when? Can you centrally set and control a consistent level of access across all data sources? If not, data virtualization can help.
New data sources are constantly being added, and the volume of data keeps increasing. Data virtualization lets you easily create departmental or audience-specific data marts so that applications have access to only the data they absolutely need. Because there's no moving or copying of the data required with data virtualization, there's only 1 source of the data to monitor and manage.

In this webinar, you’ll learn:
  • How data virtualization helps you implement a data firewall for secure data access.
  • How to implement centrally manageable data access policies regardless of data source type.
  • Role-based security, row/column masking, and extensive auditing capabilities.
Join Kimberly Palko, Red Hat JBoss product manager, and Blaine Mincey, Red Hat solution architect, to discuss how Red Hat® JBoss® Data Virtualization can provide consistent, secure data access for analytics across multiple, diverse data sources. This webinar includes real-world examples and a live demo.

APAC Red Hat Technical Exchange


Red Hat Tech Exchange is this week!

Yesterday I spoke on JBoss Middleware Security with Picketlink and KeyCloak.  I have included the presentation below. We are having a great time at the Red Hat Technical Exchange this week.  This year is a little different as it is a virtual event.  I will post all of my material as the week progresses.

Take a look at the agenda at http://apactechexchange.com/


Friday, June 6, 2014

Clearing out the S-RAMP Repository


I have been asked this question a couple of times so I wanted to share a tip on Fuse Service Works.  S-RAMP is a SOA Repository Artifact Model and Protocol which is based on the OASIS Standard. S-RAMP is a part of the Governance Package in Fuse Service Works to store artifact content and meta-data.  The repository contains a Atom based REST API.  Design-Time Governance integrates with S-RAMP.

This tip is to assist you in your development environment.  At times while doing development and trying out Fuse Service Works you may want to clear the repository.

To clean the repository then stop Fuse Service Works and run the following commands which will remove all dtgov and s-ramp data, resetting the system to an 'empty' state:
 rm -rf standalone/tmp  
 rm -rf standalone/data/h2  
 rm -rf standalone/data/modeshape  
Doing this while trying S-RAMP/DTGov should work fine.  But if you are doing more with RTGov and Switchyard then the best solution is probably to follow these steps:
1:  Install FSW6  
2:  Make a backup of "standalone/data"  
3:  Start up EAP, play around, etc...  
4:  Stop EAP, delete "standalone/data", replace with backup from #2  
5:  Rinse and repeat  
This should help you clean out the repository while giving Fuse Service Works a try.  I also included a video from Eric Wittmann below that goes through S-RAMP in detail.




Tuesday, June 3, 2014

Red Hat Deepens Collaboration with SAP with Fuse, Data Virtualization and Fuse Service Works


Red Hat and SAP lead customers to solutions in the cloud or on premise, driving excellent performance, scalability, and reliability.

Red Hat and SAP have released a news press article on their collaboration. You can read more on this at

http://www.redhat.com/about/news/press-archive/2014/6/red-hat-launches-red-hat-enterprise-linux-for-sap-hana

We wanted to extend that article and describe how the JBoss Middleware Products - Fuse, Fuse Service Works and Data Virtualization - can be used with SAP which illustrates the collaboration between the two companies and the solutions they provide. We have included a Presentation and Videos that go into this topic more in detail.

Data Virtualization and SAP
Data Virtualization can integrate with SAP in two ways:
  • Import an OData collection 
  • Import an entire OData service 

Also, Data Virtualization is an OData Consumer AND Producer. OData is:
  • Based on standards 
  • Database-like access to data 
  • ODBC for the Web 
  • No knowledge of SAP required 
  • REST-based Architecture 
    • GET, PUT, POST, DELETE 
    • Stateless 
  • OData v4 and OASIS Standard 
Fuse and SAP

Camel Netweaver Gateway Component

Camel 2.12 includes the SAP Netweaver Gateway component which is available in Fuse 6.1. The component uses the HTTP Transport and basic authentication. A SAP NetWeaver system account is required. The CamelNetWeaverCommand Mesasge Header is used by the producer which is mandatory.

The following dependency is required in the pom.xml:

<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-sap-netweaver</artifactId> <version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>

See the example at

http://www.ossmentor.com/2013/10/using-camel-sap-netweaver-gateway.html



Camel JCo Component

The JCO Camel Component which is included with Fuse 6.1 can be used for inbound and outbound communication with SAP. The Camel JCo Component:
  • JCo3 Based OSGi Enabled Camel Component
  • Enables Camel Routes to invoke RFM and BAPIs
  • Enables SAP Code to Invoke Camel Routes
  • Supports SAP Transaction
Also the demonstration from the video in the references below illustrates a Flight Booking Scenario.


Which solution is right for me?

Use Data Virtualization with SAP NetWeaver Gateway or Enterprise Services when Data integration is needed.

Use the Fuse SAP Camel Netweaver Gateway Component when a ESB and/or Messaging is needed.

Use the Fuse SAP JCo Camel Component when 1) Direct access to SAP NetWeaver and 2) Do not have or want SAP NetWeaver Gateway

References:
Fuse and SAP JCo Component Video
ttp://vimeo.com/user16928011/fuse-jco-sap
Fuse and SAP NW Gateway Blog
http://www.ossmentor.com/2013/10/using-camel-sap-netweaver-gateway.html
Summit 2014 Presentation covering Fuse, Data Virtualization, Fuse Service Works and SAP (Embedded below)
https://speakerdeck.com/kpeeples/fuse-data-virtualization-and-sap
SAP NW Gateway Collection into DV Video http://vimeo.com/user16928011/dvandsapcollection
SAP NW Gateway Service into DV Video http://vimeo.com/user16928011/dvandsapservcice