Ben's profileMS Innovations BlogPhotosBlogListsMore ![]() | Help |
|
|
July 01 Certifications in ReverseOver the past week I have taken and passed two certification exams, 70-503: WCF, and 70-529: Distributed Application Development. Rather than take the exams in the .NET framework version order of 70-529 then 70-503 for .NET 2 and then 3.5, I decided to take them in reverse. Here are a couple quick observations of this unlikely certification journey. Hopefully it is humorous:
- After studying all of the way to implement interfaces with WCF, it was much easier to understand what was going in WSE 3.
- Sometimes when working with WSE a few years ago I would scratch my head and wonder why it had to work that way or how round-about some of the exposed APIs were and how difficult it was to get my head around the concepts.
- I am very glad that the WCF bindings and BindingElements are organized so much better than the WSE SOAP Extension Types and Policy assertion types.
- If you do this unlikely certification path, of taking tests from most recent backwards, you can use this approach as a test strategy. :)
- During the 70-529 exam, I tried to figure out how the WSE APIs must have evolved in order to be the WCF APIs, and then I could answer the questions based on much more WCF experience. It was a funny endeavor.
- Ben May 14 WebSphere on Windows (WOW)Microsoft recently conducted some interesting studies on running WebSphere on Windows. Their research is published at the website http://www.websphereloveswindows.com/, which has an intro splash that looks more like a flash-based Valentine's card than anything else. I recommend clicking the "Skip Animation" link and digging into the research information. This is a compelling study to consider running Windows for WebSphere applications rather than IBM OSes and Unix variants.
I look at this information as being another step forward, similar to announcements like integrating PHP with Windows Azure data resources (see http://phpazure.codeplex.com/).
The Stock Trader sample download that was used in the benchmarks for the study includes some very interesting code from a WCF perspective. I recommend everyone explore this sample for more information about the study.
Thanks, April 28 More BizTalk 2009 Install Guide Info UpdatesI checked in the Windows Server 2008 English BizTalk 2009 pre-requisites redistributable and it DOES now include the ADOMD v10 install. Yahoo!
So after exploring the new information available on BizTalk 2009, I noticed that the whole SQL Server Notification Services documentation story has been updated dramatically. I had posted a few days ago about how the link from the 2009 Beta install guide for SSNS went to a version from SQL 2005 RC1 did not provide enough files and resulted in lots of errors. Now the documentation sends you to a Microsoft support site where you can download the missing SQL dependency files (SMO among them): http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=953752. This should be a huge improvement - this should enable BAM Alerts to work without needing to install a secondary SQL 2005 instance. The result of my configuration research shows there is more than one supportable configuration for using SSNS - either as a scaled down version or on a separate SQL 2005 instance.
For the last couple of months I have been playing with BizTalk 2006 R2 on Windows Server 2008 and SQL 2008 to get a better understanding of software compatability between these products. I had posted on the gap of information about what server roles and features would be necessary to use BizTalk in a Windows Server 2008 environment. Fortunately, the recently released BizTalk 2009 install guide for Windows Server 2008 does mention the required roles and features for Windows Server 2008 under the section describing what should be installed with IIS. The install guides have now been split up by OS, but there is unfortunately not one for installing onto Windows 7 - perhaps we will have to wait for this to be released later. :)
It looks like the updated documentation does not include any mention of the two separate BizTalk 2009 RFID install images - one bundled with the BizTalk server software, and one as a separate ISO. The separate ISO has a lot more samples on it so be sure to get the separate ISO too. Both are available on MSDN. April 27 BizTalk 2009 RTW (Release to World)I just found out that the BizTalk 2009 release has been extended to the general public: http://seroter.wordpress.com/2009/04/27/quick-thoughts-on-formal-biztalk-2009-launch-today/. I have been posting on various issues with the RTM version. It looks like the 2009 install guides can now be found at
http://go.microsoft.com/fwlink/?LinkID=128383 - the link was reset and it connects successfully. Additionally, the install guides now mention ADOMD v10 so please stop using the Beta install guide - it has now been replaced. I will be posting here soon about whether the updated prerequisites CAB includes ADOMD v10 and some other details I have been working on from the RTM version. Interestingly, the MSDN downloadable version is still from 4/6/09 (when the RTM release occurred) so it does not look like there has been an updated build; just updates of the supporting files. If I notice anything in the install guides or the other support files, I will be sure to post about it here. Thanks, April 16 BizTalk 2009 RFID - new WCF Endpoint BehaviorI was looking around in BizTalk 2009 RTM trying to find new features that have been mostly undocumented and found one today! It looks like there is a new endpoint behavior that comes with the BizTalk 2009 RFID installer for use with RFID events. The WCF-Custom adapter properties does not really give you the ability to edit the endpoint's array of events so I opened up a WCF Service Application to explore it more. The following blog post gives an example of how to build a WCF service that takes advantage of this new endpoint adapter: http://blogs.msdn.com/krishg/archive/2009/04/13/epcis-support-in-biztalk-rfid-2009-part-1.aspx. Here is a screenshot of the WCF Service Configuration Tool (it is right in the middle):
![]() I did a little reading on the blog post mentioned above to find out that this endpoint behavior basically is like an event pipeline or event bus for working with RFID in a standards-based way. Previously, you could work with BizTalk RFID using an event-sinks approach and then connect the dots and add decision logic using the Business Rules Engine. Custom events with EPCIS can be implemented and exposed on a WCF service and called on the basis of a event chain based on device events or programmatic .NET code. One of the examples in the BizTalk RFID help file shows using REST behaviors to interact with the service that exposes EPCIS events. This is really interesting because it provides a way to interact over WCF events with the BizTalk RFID infrastructure. Since .NET 3.5 WCF services can be exposed from a WF, this development makes it a very interesting development because RFID-workflows could be created. I am still learning about the BizTalk RFID capabilities, but thought this was worth blogging on.
There seem to be some interesting new areas to learn about with the advances in BizTalk RFID provided with the 2009 release.
Thanks, April 15 Getting BAM Alerts to Work on SQL 2008With the release of BizTalk 2009 RTM, I wanted to have a development VM to do all of the latest and greatest in BizTalk development. So I decided to build a VM with SQL 2008, BizTalk 2009, and all of the adapters I could pull together. I used the BizTalk 2009 beta install guide and installed SQL Server Notification Services (SSNS) 2005 RC1 which was the version linked to the beta install guide. When I tried to configure BAM Alerts (which depends on SSNS), I got an error, then another error and I realized there must be a gap in the 2009 beta install guide. Since a 2009 RTM install guide has not been released, I was stuck trying to figure out a way to get BAM Alerts to work. BAM Alerts configures fine on SQL 2005, but due to SQL 2008 not including SSNS, there is a cliff you can fall off trying to get BAM Alerts to work properly. This post describes the errors I received and the final workaround I came up with to get BAM Alerts to configure properly and work on a server with BizTalk 2009 and SQL 2008.
When I used the SSNS 2005 RC1 version, I started encountering errors that indicated there must be other dependencies that this install relied on. Here is the first error I was getting while configuring BAM:
![]() The main error here is "Could not load file or assembly 'Microsoft.SqlServer.Smo, Version=9.0.242.0' ...". So I tried copying all of these SQL 2005 assemblies to my VM and then dropped them in the GAC. Then I tried to configure the BAM Alerts again and got this message:
![]() The main error here is "This SQL version (10.0) is not supported.". So obviously at this point I was steaming mad - what is the problem here? I did some searching on the nscontrol.exe named in the error and found this http://download.microsoft.com/download/f/4/e/f4e80c76-3b69-4a42-a90b-79aeaca1177d/ReadmeSQL2005SP3NotificationServices.htm which mentions that there are 3 dependencies of SSNS and all must be loaded in order for SSNS to function properly. I tried download all three but still could not get BAM Alerts to configure properly. At this point I realized the next option to try would be to install a named SQL 2005 instance because SSNS really requires the 9.0 database version to work properly. This turned out to be what worked for me. I later found out that in order for BAM Alerts to configure properly, all of the BAM databases have to be on the same SQL instance so you need to have the SQL 2005 database services there anyway in order for BAM to all configure properly. Below I give the final install order if you want to use BAM Alerts with SQL 2008.
Final successful install order:
VM Base: Windows Server 2003 R2 SP2, SQL 2008, VS 2008 (minus SQL Express) installed in this order.
VM Diff:
April 09 BizTalk 2009 RTM Install Guide MissingFor anyone that is downloading the BizTalk 2009 RTM from the MSDN downloads, you may have found that the Installation Guide.htm on the image refers to http://go.microsoft.com/fwlink/?LinkId=128383, which is the location of the BizTalk 2006 R2 guides. This link should be updated soon. As far as I know, no new installation guide has been released yet so your best guide is the 2009 Beta install guide download from https://connect.microsoft.com/site/sitehome.aspx?SiteID=218.
Once I hear about a new version of the install guide I will post more about this. Good luck to everyone trying out BizTalk 2009 RTM.
Thanks, April 08 BizTalk 2009 RTMWell I guess I missed the launch party - BizTalk 2009 is now available for MSDN subscribers. I reported a lot of bugs during the BizTalk 2009 Beta and TAP releases so it will be interesting to see if people encounter any of these. Thanks to my friend Thiago Almeida for pointing out the ADOMD 10 error (http://connectedthoughts.wordpress.com/2009/04/06/biztalk-2009-rtm-prerequisites/). I had seen this during the TAP version and unfortunately it looks like a final bug.
The following screenshot shows what you will see if you install BizTalk 2009 in an environment with SQL 2005:
![]() This error is due to the installer needing the SQL 2008 version of ADOMD, v10. I have downloaded ADOMD v10 from SQL 2008 and run it on a SQL 2005 instance to get the BizTalk 2009 installer to work. Hopefully this will be resolved soon. There may be a couple of other issues out there too.
It is exciting to see the launch of the new product and it will be exciting to see people talking about this new version of BizTalk!
Thanks! March 27 BizTalk 2009 on Dev 10 Part 2I was able to play with BizTalk 2009 Beta on Dev 10 a little more and had some advice. When I installed earlier, I had not seen that the Developer Tools and SDK was grayed out and this was the reason the .btproj extension had not been installed properly. I eventually realized that on the VS 2010 CTP VPC, VS 2008 BIDS did not have VS 2008 SP1 so this was required to get the BizTalk 2009 Beta VS extensions to install at all.
With the VS extensions for BizTalk installed correctly, I was still not able to open BizTalk 2009 projects using VS 2010. For some reason the VS extensions are just not being applied to VS 2010.
Here is my updated install order to get BizTalk to work with as much as possible:
So I still wanted to answer a few questions. I was able to add a BizTalk 2009 project to TFS 2010 through VS 2008 w/ Team Explorer 2008 and view the source code in VS 2010, I was just not able to open the BizTalk projects. Here is a screenshot from VS 2010 with the BizTalk files in source control in TFS 2010:
So this is good because it means it is possible to upgrade to TFS 2010 without affecting BizTalk solutions. VS 2008 will just need to remain in order to keep editing BizTalk 2009 projects. The other question I had was whether a BizTalk 2009 project can reference a .NET 4.0 assembly. VS 2008 SP1 cannot create .NET 4.0 versioned projects, so the reference would have to be a GAC or file reference rather than a project reference. I created a .NET 4.0 assembly from VS 2010 and referenced some v4.0.11 assemblies and recompiled. Then I tried referencing the assembly in my BizTalk project in VS 2008. It looks like it is possible to reference a .NET 4 assembly from VS 2008 for a BizTalk project but I was unable to build it successfully. Here is the message I got when adding the reference:
After trying to compile I realized it was not possible to reference a .NET 4 assembly from Visual Studio 2008 SP1 (yet). I also tried referencing an M project using the latest Oslo January CTP SDK and was not able to successfully. So the good news is that you can migrate your TFS investment ahead of BizTalk and the BizTalk files will still check-in and import successfully. My next task will be to see how well the new ALM features of BizTalk 2009 translate over to working on TFS 2010. Thanks, BizTalk 2009 on Dev 10 (VS 2010)Today I was working on a project for a client and was unsure about compatibility between Visual Studio 2010 and BizTalk 2009. BizTalk 2009 is going to be released soon and it seemed like a natural question to wonder if the VS 2010 / .NET 4 CTP (http://www.microsoft.com/downloads/details.aspx?FamilyId=922B4655-93D0-4476-BDA4-94CF5F8D4814&displaylang=en) would work with this. This CTP has been out for around 5 months but I had not had a chance to try the BizTalk 2009 install on it. I used the 2009 Beta install and got some mixed results. Here is the high-level results:
Some obvious questions I am wondering about are given below. I will be researching and checking on these more:
Thanks, March 16 BizTalk Performance Guides vNextOne of the themes I have been blogging on for a while is the relationship of BizTalk Server 2006 R2 and Microsoft's 2008 product stack including Windows Server 2008, SQL 2008, and Visual Studio 2008. As everyone should know, the 2008 product stack is not supported with BizTalk Server 2006 R2. Over the past couple of weeks I have learned that some of the BizTalk Server Performance Optimization Guide articles (starting at http://msdn.microsoft.com/en-us/library/cc558617.aspx) should not be applied to Windows Server 2008 BizTalk implementations due to some performance differences between Windows Server 2003 R2 and Windows Server 2008. Even though it is a best practice to avoid unsupported environment configurations, I know for a fact there are quite a few organizations that have BizTalk 2006 R2 running with Windows Server 2008. I recommend against this configuration on production boxes due to the supportability issues, but it is very valuable from a BizTalk vNext perspective especially if you are working on a BizTalk 2009 migration plan.
So what is the result of following the performance guide in an unsupported configuration of BizTalk 2006 R2 and Windows Server 2008? Well, the guide was made with the assumption that Windows Server 2003 was being used, so the optimizations made specifically for that OS will not be the best ones for 2008. So watch out for OS tuning parameters or options in the guide because these will not always be the best ones for Windows Server 2008. Microsoft will be releasing an updated performance optimization guide a couple weeks after BizTalk 2009 is released under RTM. So if you are working in a high performance BizTalk environment and want to migrate to Windows Server 2008 then I would wait to deploy your applications until after the new optimization guide is released because the newer guide will include optimizations for Windows Server 2008.
But wait, what if you want to use BizTalk 2006 R2 in the unsupported configuration in production? Unfortunately, I have not heard the configuration will ever be supported, but I would still wait for the updated optimization guide so you can at least optimize the OS settings. If I uncover any other snafus or gotchas of using the updated performance guide in the unsupported configuration, I will be sure to let you know about them. :)
Thanks,
February 18 Simplify the Install Experience of the BizTalk SAP AdapterDuring a recent project I was using the BizTalk SAP Adapter to interact with a custom BAPI that was exposed as an RFC. In order to get the Add Adapter Service Wizard in BizTalk to work properly, I had to install all of the SAP dependency libraries on the BizTalk server. I was amazed at how complicated this whole process was. There are a couple things I would like to do in this blog post:
I wonder if the reason Microsoft is not able to provide a redistributable of these SAP components is due to SAP licensing restrictions. In any case, these directions will help you simplify the complexity of the SAP adapter dependencies' install and dramatically improve the install experience after you get all of the files downloaded.
Thanks,
February 08 Operations Management for BizTalk published in BizTalk HotrodI just found out the latest BizTalk HotRod to hit the web (February 2009) does include an article I did on Systems Center Operations Manager (SCOM) and BizTalk. Go here to get a copy of the article: http://biztalkhotrod.com/Documents/BizTalk%20HotRod%20Magazine%20Q1%202009.pdf. This is my first published article so it is exciting for me. This is partially based on my Operations Management for BizTalk presentation from about a year ago.
Thanks, January 15 Updated Cloud SDKs OutI just got an email from the Windows Azure team that there are new SDK versions for the Windows Azure offerings. Unfortunately, SQL express is still listed as the database version for the fabric storage client. One cool improvement is the addition of a role in the platform for Silverlight.
Here are links to the updated (January 2009 CTP) SDKs:
There is a rainbow in the cloud! :) January 07 Cloud Development QuickstartI have been learning about working with Windows Azure for the past two weeks and have run into my share of challenges. Getting up to speed with the tools has taken quite a bit of work and there have many pitfalls towards getting an environment running to work with the Cloud. In this post I am going to mention some things I have done to get a cloud environment rolling so that others can use this as a guide.
First, you need to get all of the relevant software together to use Windows Azure. Here is an install list I went through to have everything to get started. This is helpful because the .NET Services SDK that was released after PDC has updated functionality. Some of what I have done for my environment is a little outside of the setup directions but was the most useful for me:
Then there is some additional configuration to do to get the Azure SDK to use your SQL Server instance other than SQL Express which is the default. A few posters had mentioned this technique but there were a few missing steps. Follow these steps to get the Azure SDK to use your local SQL 2008 instance (or a different one):
<connectionStrings>
< <add key="ClientSettingsProvider.ServiceUri" value="" /> </appSettings>
< developmentStorageConfig><services> <service name="Blob" url="http://127.0.0.1:10000/"/> <service name="Queue" url="http://127.0.0.1:10001/"/> <service name="Table" url="http://127.0.0.1:10002/" dbServer="localhost" dbName="developmentstoragedb"/> </services> </developmentStorageConfig>
Then you will need to get the Azure codes so that the two administration sites work for testing in the cloud. After you get the code and validate them then you can associate your accounts with Windows Live Ids. Finally you will be able to access the Cloud administration sites. Unfortunately, there are 2 different cloud administration sites so be prepared to spend some time getting used to the user interfaces. Here are the starting links for the 2 cloud administration sites: https://lx.azure.microsoft.com for Windows Live and http://portal.ex.azure.microsoft.com for .NET Services. Understanding that there are two different cloud administration sites can be hard at first. The Azure MMC provides a simpler interface for working with the .NET Services administration so this is strongly recommended as well.
Next you should start learning about the Cloud using the brief MSDN documentation like the Quick Lap around Windows Azure Tools for Visual Studio (http://msdn.microsoft.com/en-us/library/dd203059.aspx). This will get you started on the Cloud development samples as well as actually deploying services to the Microsoft Cloud.
I wanted to mention one site I have been following for Cloud news is http://www.azurejournal.com. This site provides some really helpful information across the new Cloud industry especially considering Amazon's Cloud offerings and recent Windows Azure updates. Once you get your hands dirty with the Cloud setup, I have found that getting a broader awareness of the Cloud industry pretty helpful.
The capabilities provided with the Cloud platform are enormous, but unfortunately the ramp up to using them at this point is steep. This blog post provided a checklist of things to do to get rolling on an environment for working with Cloud services. Let me know if you have any questions with this information. Thanks!
December 29 WCF-SQL Adapter Modernizes BizTalk SQL Adapter CapabilitiesIn my spare time I have been playing and testing all of the latest released capabilities of BizTalk Server 2009. During some of my time I have been working with the new WCF-SQL adapter that exposes a new WCF binding, SqlBinding, as part of the latest Adapter Pack. If you have ever worked with the BizTalk SQL adapter you know that the wizard in Visual Studio frequently caused problems and unfortunately these shortcomings were never adequately addressed in a service pack or updated release. Usually it was required that you just take a working example of the SQL adapter and then manually modify it to work with your database objects. More often than not you probably just avoided the SQL adapter completely and worked with the database through ADO.NET calls in an orchestration or custom pipeline. Now with the updated Adapter pack the WCF-SQL adapter finally modernizes the SQL adapter experience and gives you a stabile and very functional environment for interacting with SQL via an adapter. This article will highlight some of its capabilities and provide a walkthrough of the new WCF-SQL adapter wizard. All of my testing has been with the BizTalk 2009 Beta loaded on a Windows Server 2003 box with Visual Studio 2008 (including SP1) installed. I installed the BizTalk Adapter Pack found at https://connect.microsoft.com/content/content.aspx?ContentID=10580&SiteID=218. To add a schema based on the WCF-SQL adapter, open or create a BizTalk project in Visual Studio 2008 and right-click on the project. Clcik on the Add New Item > Add Generated Items as shown below: Then after the window loads you should see the following window: Click on "Add Adapter Metadata" and then click "Add". This will open up a general window that is used for several different adapters. After installing the BizTalk Adapter Pack V2, you should see an item listed in the listview called WCF-SQL. You should also see the older SQL item listed as well as any other Adapter Pack or Line-of-Business (LOB) adapters. You will need to enter a SQL server name and database in the combo boxes below the listview. I entered my local SQL Server instance and my BizTalkMgmtDb as seen in the screenshot below: You do not need to enter a port for this adapter so just leave this one blank and click Next. The following screen shows the form that is loaded next to help you determine which SQL objects to include in the WCF-SQL schema. If you worked with the previously mentioned rudimentary SQL adapter in BizTalk, at this point you would be presented with the option of entering a command text or a single SQL object name for the wizard to use to generate the schema. But the WCF-SQL adapter wizard provides database object browsing and filtering to further simplify the task of schema generation. The following screenshot shows the form when it is initially loaded: If you merely want to use the database you specified earlier in the wizard, click the configure button and then click OK to generate the default URI of mssql://.//?. Then click Connect to connect to the database specified. This will enable the bottom half of the screen where you can expand the categories of database objects and then find one or more objects to select. It is also possible to select a different database and/or configure additional database connectivity properties via the Configure button's window. Below is an image of the Configure button's window with the SSO database details specified: I have found that it is not possible to specify "(local)" for the SQL instance name as shown above so do not try this. Below is the form changed to allow selecting from several of the SSO databases's tables: The "Search in Category" box in the middle of the form provides a way to filter the list of database objects. I have found that it is possible to use wildcards in this box by the percent character "%" but not by the asterisk - "*". Once you have selected objects to generate a schema for, click OK. Visual Studio will generate a schema and a related code class as well. The designer experience provided by the WCF-SQL adapter wizard is a huge step forward for the creation of BizTalk SQL schemas. December 11 BizTalk Dream MachineI have been playing with the new features of BizTalk 2009 and have been finding a few bugs. But some of what is available with this release is awesome. For example, due to Visual Studio 2008 integration you can reference a WCF Service library from your BizTalk project. You can also reference a project that uses LINQ so will be able to use LINQ indirectly in a BizTalk map. Another cool thing is that you can reference a WF library from your BizTalk project. This makes it possible to call a WF method directly from BizTalk and potentially move logic over to a WF process from BizTalk. I have not tried running a workflow from the BizTalk host but that will be the next thing to try. I have not seen any new BizTalk orchestration shapes for calling WF activities or workflows either.
The new UDDI functionality included with the BizTalk 2009 beta is a little buggy at this point but the functionality seems to be a big step forward. More details on this soon.
Lots of the wish list ideas I have had for where BizTalk could be going are things I am testing right now. Check back here as I find new features as part of the beta.
Thanks, December 08 BizTalk Server 2009 Public Beta Released TodayToday Microsoft released the public beta of the next version of BizTalk, BizTalk Server 2009 and it is available for download at the Microsoft Connect site - http://connect.microsoft.com/site/sitehome.aspx?SITEID=218. The latest version of the Microsoft ESB Guidance was also released at the same time and is available at the same CodePlex location - www.codeplex.com/esb. There are quite a few updated BizTalk features with this release and I will be showcasing some of these features in the next couple days.
There were a couple of installation gotchas that I noticed initially with BizTalk 2009. I worked with BizTalk 2009 during the Microsoft TAP program a few weeks ago and have already installed it once. The 2009 TAP install did not require you to run Visual Studio 2008 SP1 but the new BizTalk release does require this so be sure to do this before running the installer. The 2009 install will add the Visual Studio extensions to Visual Studio 2008 so that you can now include your .NET 3.5 projects right alongside BizTalk projects.
The developer tools will not be enabled as an install option without Visual Studio 2008 SP1. Since BizTalk 2009 is in beta you will want to report any issues to Microsoft as part of the feedback link on the BizTalk 2009 connect site or report it at the MSDN forums under BizTalk - http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1470&SiteID=1.
The ESB Guidance no longer includes JMS features so you if you have been using JMS subscriptions with the ESB Guidance, do not upgrade at this time if you want to continue using JMS.
Thanks, December 03 SharePoint Workflow ServicesI was working recently on a SharePoint Workflow project and was exploring some of the Office SDK samples. The latest Office SDK (http://www.microsoft.com/downloads/details.aspx?familyid=6D94E307-67D9-41AC-B2D6-0074D6286FA9&displaylang=en) includes samples that were built for VS 2005 but you can convert nearly all of these over to work with VS 2008 using the .NET conversion wizard. I was exploring one of these samples and found some code that worked with IWorkflowModificationService and then realized that there are at least 4 workflow services exposed by the SharePoint workflow host. The IWorkflowModificationService (as documented at http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.workflow.iworkflowmodificationservice_members.aspx) has just a single exposed method for EnableWorkflowModification(). This method performs some of the same functionality that that the activity shape Microsoft.SharePoint.Workflow.EnableWorkflowModification performs. Then I noticed that in the workflow designer in VS 2008 this activity actually has an InterfaceType which referes to IWorkflowModificationService. Interestingly, when I clicked the ... on this part of the property box the object explorer filtered my referenced assemblies by ExternalDataExchangeAttribute and gave me the filtered window as seen below:
![]() The items listed above are the four available workflow services provided with the SharePoint Workflow host. For this reason a considerable number of the built-in SharePoint activities are just wrappers that work with the workflow services. This was a very interesting find for me because it helps me to understand the way that workflow services are working under the surface the SharePoint workflow host.
While I was looking at the MSDN documentation for IWorkflowModificationService I also found there is good documentation for these other workflow services including ISharePointService, ITaskService, and IListItemService. Because these are exposed you can quickly come up with the implementation behind most of the built-in SharePoint activities.
Thanks,
November 20 Major BizTalk Incomatibility - IIS 7 and WCF Publishing WizardOn my current project the client has been dabbling with BizTalk 2006 R2 in a very unsupported configuration with Windows Server 2008, and SQL 2008. In previous posts I talked about Windows Server 2008 and some challenges installing BizTalk on this OS. Generally, Windows Server 2008 behaves well for BizTalk. SQL 2008 has behaved well and has not presented any problems for BizTalk other than the fact that it does not include Notification Services so you must install this optional component from the installer included with SQL 2005. This post describes some new difficulties I have identified when using BizTalk Server 2006 R2 with IIS 7.
Working in the unsupported environment has been very interesting because it has identified that there are issues with BizTalk's WCF integration on Windows Server 2008. Windows Server 2008 includes IIS 7 which has been overhauled extensively. Several issues have been identified with IIS 7 and BizTalk Server 2006 R2:
- It is possible to run the BizTalk WCF Publishing Wizard through completely to create a .svc WCF endpoint and a virtual directory to host the WCF service but by default IIS 7 is not configured to support the .svc extension. In order to setup the .svc extension, use the IIS 7 directions at http://msdn.microsoft.com/en-us/library/ms752252.aspx.
- When running the BizTalk WCF Publishing Wizard sometimes IIS 7 will get dumped out completely. From time to time running the wizard the web.config at c:\Inetpub\wwwroot and all of the virtual directories in this folder get removed during the time that the WCF Publishing wizard is running. For this reason, I strongly recommend you backup the web.config in the web root and all virtual directories stored under the web root before running the WCF Publishing wizard on a box that includes IIS 7. If you just registered the .svc handler and IIS 7 gets dumped out you will need to create it again. Due to this issue, I also strongly recommend that if you need to work with HTTP or IIS related adapters, use Windows Server 2003 R2 with IIS 6 rather than Windows Server 2008 with IIS 7.
- The BizTalk WCF Publishing Wizard may require additional permissions when run on Windows Server 2008 than on Windows Server 2003 due to the secure by default nature of IIS 7. I identified issues with the NetMSMQ binding and MEX-only endpoints created with the BizTalk WCF Publishing Wizard in which permissions must be loosened while the wizard is running although they may be tightened afterwards.
Thanks,
|
|
|