Microsoft SOA and BPM Conference Live Blog Monday
Day 2 of the course. Discovered Twitter last night but having problems with my account (currently cannot log in and can't reset password) so here goes. Last night, had a great dinner with Tim Rayburn and a bunch of BizTalk MVPs. Lots of great discussions. Aaron has been shuttling me around with Jon and Matt, so I am getting to spend great quality time with the Pluralsight guys. This course rocks BTW and I would highly recommend it!
- Today, we start with what’s New in BizTalk Server R2. I have to get much deeper in BizTalk so this is going to be great!
- I am really excited about the new WCF Adapters - should make writing adapters much easier and standard
- EDI baked into R2 will help a lot of my customers - huge in health care I have noticed, HIPAA
- WCF is Microsoft's distributed computing technology
- Similar to SOAP Adapter in 2004/2006 although WCF Adapter can run in-proc and get new protocols (TCP, Named Pipes, MSMQ) + WS-*
- EDI is a core feature of R2, no more Covast needed
- Support for both X12 and EDIFACT
- EDI never goes away!! We all want it to be "XML"
- Supplants HIPAA accelerator
- Over 8,000 EDI schemas (4.39 GB unpacked!!)
- Drummond Group certified AS2 (HTTP EDIINT)
- Implemented in the Pipeline - no Adapters
- EDI screens look scary :) Man, there is a lot of stuff!
- BAM = distributed infrastructure for declarative extraction of business/operational data
- Interceptors/API allow data extract
- Tools for viewing and Alerts
- Two new BAM Interceptors for WCF/WF
- They don't require code - config
- Enables declarative end-to-end business level tracking
- WCF LOB Adapter Pack - LOB Adapters built on new framework
- In other words Adapter != BizTalk Server
- Its callable via WCF Binding from anywhere - Adapter pattern to LOB based system
- Custom WCF binding
- SAP, Oracle, Siebel, TIBCO
- Can plug into R2, will ship as a separate SKU
- WCF LOB Adapter SDK
- BizTalk RFID - standalone product that is not dependent on any part of BizTalk Server 2006
- Includes Rules Engine component and various ways to connect
- Aaron is diving into WCF Adapters
- BizTalk has had Web Service support; just hasn't been that good; WSE3 support via Jesus Rodriguez who just sat next to me
- With WCF Adapters, can have "Services" with R2 and have BizTalk be a host!!!
- "Modern SOA" - offers full integration with WCF Runtime
- BizTalk will store WCF config info in the SSO db
- We're on the "RPC Interface" and REST thing again in discussion of WCF.................oh joy
- At least, we are using the Message class...
- Message GenericOperation(Message inputMessage);
- BizTalk uses this mechanism:
using System;using System.Collections.Generic;using System.Linq;using System.Runtime.Serialization;using System.ServiceModel;using System.Text;using System.ServiceModel.Channels; namespace GenericService{ [ServiceContract] public interface IService1 { [OperationContract(Action="*", ReplyAction="*")] Message GenericOperation(Message inputMessage); }}using System;using System.Collections.Generic;using System.Linq;using System.Runtime.Serialization;using System.ServiceModel;using System.Text; namespace GenericService{ [ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)] public class Service1 : IService1 { #region IService1 Members public System.ServiceModel.Channels.Message GenericOperation(System.ServiceModel.Channels.Message inputMessage) { return inputMessage; } #endregion }}
- WCF Adapters complete bridge between BTS and .NET Framework 3
- Jon is taking pictures of my back while in the row behind me :) Yes, I shaved my head....
- Freaking Twitter still won't reset my password correctly (: Its way behind, now I have requests for resets stacked up, crap...
- Wow! Not one line of code to create and host a WCF Service in BizTalk (over Named Pipe too) - Create send/receive port, select WCF Adapter as transport, configure adapter to control WCF settings (GUI) and presto!
- BizTalk R2 seems much easier and better host than IIS.... not same scenarios obviously....
- Can host WCF Adapters in-proc or out of proc
- Looks like Glenn Block is heading over here for lunch...cool
- No metadata because they are using generic contracts - receive locations inherently untyped - ok for some scenarios
- Use WCF Service Publishing Wizard to provide metadata
- I'll need to run through these scenarios ASAP....
- Also a command line version
- Security tab - Security "mode" is a required setting
- WCF-Custom and WCF-CustomIsolated allow you too really party...
- Lunch!
- YES! Jon is going to show how to use Astoria from BizTalk so we can have REST interface!
- EDM Designer of Northwind... Add WCF Service
- Don't need Service Contract.....
public class Northwind : WebDataService<NorthwindEntities>
[ServiceContract}public interface IUsingGet { [OperationContract(Action="*", ReplyAction="*")] Message Get(Message inMsg);}NetTcpBinding b = new NetTcpBinding();ChannelFactory<IUsingGet> cf = new ChannelFactory<IUsingGet>(b, ea);cf.Open();Message inMsg = Message.CreateMessage(MessageVersion.Default, "*", "Here is the message you will ignore");IUsingGet c = cf.CreateChannel();Message response = c.Get(inMsg);Console.WriteLine(response.GetReaderAtBodyContents()).ReadOuterXml(());-- Tell Encoder to not look for SOAPWhoop! Nice!
- Jon has a HttpVerbBehavior
- BizTalk RFID... RFID is poster child for enterprise connectivity...replacement for barcodes
- The pain of RFID... h/w adoption blockers, s/w adoption blockers, h/w s/w/ automation, "scary technology"
- Scenarios: Cattle tracking?
- http://bluecsushi.com/ - really cool! Not just supply chain
- BizTalk RFID is separate product - "middleware"
- Server and app services for interacting with devices and tag reads
- Management tools for devices and RFID business processes
- API for interacting with devices
- Last part of course - WCF and WF BAM Integration
- Almost all applications need business visibility
- Data warehouse is generally the final keeper of this data
- In a SOA world hardfer to coordinate
- BAM is a distributed infrastructure for declarative extraction of business data
- Includes tools for defining data extraction
- Interceptors and API to allow data to be extracted
- Interceptors enable aspect-oriented, hot-swappable tracking profiles
- Services for collection and aggregation
- Tools for viewing data
- Alert capability
- BAM Actvivity = named set of related data collection points
- checkpoint - the atom of a BAM activity
- R2 - BAM stuff now works with Office2007
- Workflow Foundation Interceptor
- IC is converted into Workflow TrackingProfile object
- Operations from IC map to workflow, activity & user track point
- End of day: Jon is going to do a crazy demo - there is no WF inside BizTalk yet despite 2 versions (06 and 06R2)
- WF needs a host too
- XLANG not the future
- So Jon developed a sample with some WF team members - SDK in a few weeks
- Workflow Library project for hosting WF workflows inside of BizTalk Server
- using DataContracts as the messaging metadata
- BTSReceive and BTSSend
- Contract property - IServiceContract, pick method, and data bind to a field
- Has to be signed and GAC'd to be run in BizTalk
- Right click - Generate Orchestration
- Generates BizTalk project with schemas based on WCF Contracts
- Orchestration is generated automatically
- Orchestration is the flow, workflow is the processing
- Right Click - Deploy
- Now can find Orchestration in BizTalk and pick Host and Port
- Start
- Add a Client project
- Add endpoint address and binding
- Call
- Cool! Will be an SDK sample
Comments