by community-syndication | Jun 22, 2009 | BizTalk Community Blogs via Syndication
I had a great time at Dev Days doing the pre-conference session on WF, WCF and Dublin. It’s always fun trying to present on beta technology, and there’s nothing like having the first demo crash Visual Studio to start the day. :) Thanks to all who attended, you can find the demos here.

by community-syndication | Jun 22, 2009 | BizTalk Community Blogs via Syndication
This afternoon I will be presenting a session about Web Oriented Architectures (WOA) at SOAWorld . The session explores the concepts behind real world architectures based on the principles of REST and how they represent an interesting alternative to traditional…(read more)
by community-syndication | Jun 20, 2009 | BizTalk Community Blogs via Syndication
Here are the steps to configure a dual computer setup where SQL Server and BizTalk are hosted on two separate computers.
Steps to configure SQL Server (just the pictures where not the default settings are chosen)
Steps to configure the BizTalk machine after the SQL Server is installed correctly (just the pictures where not the default settings are chosen)
by community-syndication | Jun 19, 2009 | BizTalk Community Blogs via Syndication
As you have probably noticed, the WCF Dev Center has changed quite a bit recently. If you are a returning visitor, you may be wondering where your favorite links went.
The driving principle behind the redesign is to better cater to the different audiences that visit our page.
In its previous format, the WCF Dev Center catered very well to the return visitor looking for fresh content. The various content feeds on the main page made it very easy to check back periodically and see new content.
However, our usage data shows that a lot of our traffic comes from first time visitors through search engines. Our redesign is an effort to present a friendlier face to those folks, and to help them find introductory materials.
The main page now has links to three main areas:
1) Get it: This page gives simple instructions for what you need to install to use WCF. It also gives links to additional WCF Tools that are available in the Windows SDK and how to download them.
2) Get Started: This page has a streamlined set of content that we feel is most useful for programmers just getting started with WCF. As part of this, we are introducing a new series of “Learning WCF Tutorials”.
3) Learn More: This page is the portal into all of the available learning resources and community content. If you miss the old site, you might want to just bookmark this page as it is now the “one-stop shop” for experienced WCF programmers.
There are also two feeds on the main page:
1) The “WCF Highlights” area where we will make important announcements such as Beta releases, important new content, and conference events.
2) The “What’s New” feed which will be a fast moving feed combining blog entries from the WCF Team Blog, syndicated MVP blogs, and the Social Network Bookmarking.
Please let us know what you think of the new design and make suggestions for any future improvements you’d like to see.
by community-syndication | Jun 19, 2009 | BizTalk Community Blogs via Syndication
Last week we introduced the new Workflow Tracking features in .NET 4.0. In this post we’ll do a deep dive into tracking profiles and explain how to use them to track workflow execution in a flexible way.
Tracking Profile Overview
Tracking profiles let you subscribe to events that are emitted by the runtime when the state of a Workflow instance changes. Depending on your monitoring needs you may craft a profile that is very coarse, subscribing to a small set of high level state changes on a Workflow. On the other hand you may create a very granular profile whose output is rich enough to reconstruct the execution later. Tracking profiles can satisfy these extreme scenarios and anything in between.
Tracking profiles manifest themselves in one of two ways. You can create tracking profiles programmatically in .NET or configure them as XML elements in the <system.serviceModel> section of a standard .NET configuration file. This post covers configuration based profiles. Here is an example tracking profile in .NET 4.0 Beta 1:
<system.serviceModel>
<tracking>
<trackingProfile name="High_Level_Tracking_Profile">
<workflow>
<workflowInstanceQuery>
<states>
<state name="Started"/>
<state name="Completed"/>
</states>
</workflowInstanceQuery>
</workflow>
</trackingProfile>
</profiles>
</tracking>
</system.serviceModel>
Tracking Profile Structure
Tracking profiles are structured as declarative subscriptions to events, or tracking queries that let you “query” the Workflow Runtime for specific event records. There are a handful of query types that let you subscribe to different classes of events. Here are the most common query types that you can try out in .NET 4.0 Beta 1:
%u00b7 WorkflowInstanceQuery – Use this to track Workflow instance lifecycle changes like Started and Completed.
%u00b7 ActivityQuery – Use this to track lifecycle changes of the activities that make up a Workflow instance. For example, you may want to keep track of every time the “Send E-Mail” activity completes within a Workflow instance.
%u00b7 FaultPropagationQuery – Use this to track the handling of faults that occur within an activity. This event occurs each time a FaultHandler processes a fault.
%u00b7 UserTrackingQuery – Use this to track events that you define in your code activities. There will be a follow up to this post that shows you how to create user tracking records.
Variable Extractions
When tracking the execution of a Workflow it is often useful to extract data. This provides additional context when consuming the tracking records post execution. Tracking profiles make this easy. In .NET 4.0 you can extract variables from any activity in a Workflow. The following example activity query comes from the monitoring hands on lab that shipped with the WCF and WF samples for .NET 4.0 Beta 1. It shows how to extract the “StockSymbol” variable whenever the “GetStockPrice” activity completes.
<activityQueries>
<activityQuery activityName="GetStockPrice">
<states>
<state name="Closed"/>
</states>
<variableQueries>
<variableQuery variable="StockSymbol"/>
</variableQueries>
</activityQuery>
</activityQueries>
Annotations
Annotations in Workflow 4.0 let you arbitrarily tag tracking records with a value that can be configured after build time. For example, you might want several tracking records across several Workflows to be tagged with “Data Center” == “Contoso Data Center”. This makes it easy to find all records with this tag when querying tracking records later. To accomplish this, you would add an annotation to a tracking query like this:
<activityQueries>
<activityQuery activityName="GetStockPrice">
<states>
<state name="Closed"/>
</states>
<annotations>
<annotation name="Data Center" value="Contoso Data Center"></annotation>
</annotations>
</activityQuery>
</activityQueries>
What’s Next
In the next post in the series, we will talk about the extensibility of Workflow tracking in .NET 4.0. This topic will dive into the following concepts:
%u00b7 Programmatically emit your own tracking events by creating UserTrackingRecords.
%u00b7 Programmatically consume events within the runtime by creating custom TrackingParticipants.
%u00b7 Programmatically create tracking profiles in .NET.
by community-syndication | Jun 19, 2009 | BizTalk Community Blogs via Syndication
Other obligations have quieted down over the past two months and I’ve been able to get back to some voracious reading. I thought I’d point out a few of the books that I’ve recently knocked out, and let you know what I think of them.
SOA Governance. This is a book from Todd Biske and published […]
by community-syndication | Jun 19, 2009 | BizTalk Community Blogs via Syndication
Downloade thePresentation and Code
The Connecticut User Group organized a full day code camp event in Bloomfield, CT. The topic I presented on was “RESTFul Services and Silverlight”. The presentation was organized around the following main topics:
Web Services via SOAP
RESTFul Services
Creating a WCF RESTFul Service
Consuming a Custom WCF RESTFul Service in Silverlight
The attached slide deck will […]
by community-syndication | Jun 18, 2009 | BizTalk Community Blogs via Syndication
I was asked to present at the BizTalk Users Group in Sweden on June 4th. I presented on the new enhancements to the Windows Application Server role known as Dublin.
The two sessions are now online on Channel 9. The first session is a walk-through of the value proposition of Dublin and Workflow Services. The second session is a little deeper dive into tracking and monitoring.
Details on each session are below.
Session 1: Inside the Windows Application Server Enhancements known as Dublin (1/2)
Abstract: In this session we will review the features of the Windows Application Server Enhancements code named Dublin. This session will show how to use new and enhanced concepts in the .Net 4.0 framework to empower Services hosted in Windows allowing users insight into service health and activity.
Session 2: Inside the Windows Application Server Enhancements known as Dublin (2/2)
Abstract: This session takes a deeper dive into Windows Application Server Enhancements by looking in detail at the hosting of a Workflow Service. This will cover reviewing a web service aggregator Workflow Service, setting up custom tracking, monitoring running services, and import and export of applications.
One of the top question I receive is when can I get the code for Dublin? Microsoft stated at TechEd US 2009 they planned for a public beta of Dublin around the PDC 09 timeframe.
Enjoy and please post any comments or questions.
by stephen-w-thomas | Jun 18, 2009 | Stephen's BizTalk and Integration Blog
Recently I was asked to present at the BizTalk Users Group in Sweden. I had a great time and was welcomed nicely by my Swedish friends.
I presented on the new enhancements to the Windows Application Server role code named Dublin.
I presented two 35 minutes sessions covering a lot of the same material talked about at the recent TechEd in Los Angeles, CA.
The two sessions are now online and available for everyone to watch. The first session is essentially the value proposition of using Dublin and Workflow Services and the second session is a deeper dive into custom tracking and monitoring.
The top question I get is when can I get the code for Dublin? Microsoft stated at TechEd they planned for a public beta of Dublin around the PDC 09 timeframe.
Enjoy and please post any comments or questions.
Session 1: Inside the Windows Application Server Enhancements known as Dublin (1/2)
Abstract: In this session we will review the features of the Windows Application Server Enhancements code named Dublin. This session will show how to use new and enhanced concepts in the .Net 4.0 framework to empower Services hosted in Windows allowing users insight into service health and activity.
Session 2: Inside the Windows Application Server Enhancements known as Dublin (2/2)
Abstract: This session takes a deeper dive into Windows Application Server Enhancements by looking in detail at the hosting of a Workflow Service. This will cover reviewing a web service aggregator Workflow Service, setting up custom tracking, monitoring running services, and import and export of applications.
by community-syndication | Jun 18, 2009 | BizTalk Community Blogs via Syndication
Let me share a quick story. We’ve been using BizTalk Server 2006 for a couple of years now at my company. We recently upgraded to R2, and I was excited to get the opportunity to work with WCF… so a few months ago I created my first WCF service. Things worked about like what I […]