BizTalk360 – Heading to Copenhagen,Denmark

We launched BizTalk360 back in May 2011, since then we were constantly presenting the capabilities of BizTalk360 in various cities in Europe (apart from our regular online meetings). Our next stop is Copenhagen, Denmark (21st September, 2011). Details of the event can be found here http://www.dbug.dk/files/biztalk%20brugergruppe%20september%202011.pdf if you are in Copenhagen and doing something with Microsoft BizTalk server, then please try to attend and see for yourself, what BizTalk360 can offer. In this session we’ll presenting stuff, that’s present in our current release and some of the cool stuff we are working on for our October release.

Special thanks to Jan Eliasen, Microsoft BizTalk Server MVP, for making this happen.

Past Events Details:

1. May 2011, UK Connected Systems User Group London: http://ukcsbugmay2011.eventbrite.com/

2. June 2011, Sweden http://biztalkusergroup.se/

3. June 2011, The Netherlands.

Nandri
Saravana Kumar

Social:
Join us on @biztalk360 | http://facebook.com/biztalk360 | http://getsatisfaction.com/biztalk360

Windows Azure AppFabric SDK V1.5 September 2011 – Brokered Messaging is Live!

The Azure AppFabric Service Bus Brokered Messaging functionality has shipped to production, and is available in Azure data centers across the world. This means that we now have point-to-point queuing and publish-subscribe messaging available in the cloud in the form of Queues, Topics and Subscriptions. Be aware that there are substantial changes in the classes in the Microsoft.ServiceBus.Messaging namespace, which means I will have to re-record webcasts and repost blog posts.
I’ve spent quite a bit of time looking into the functionality of the new messaging capabilities and am very impressed with what I have seen in the CTP. IT’s great to see this make it to production.
If you want to download the SDK, it’shere. For an overview of the capabilities using the CTP bits I have some webcasts here.
If you have an AppFabric account you can log into the Service Bus section of your portal. There is some basic management functionality in the portal that allows you to create and delete queues, topics and subscriptions.
Queues can be created with various options for timeouts, queue size and options for duplicate detection, dead-lettering and sessions.
In the current release queues, topics and subscriptions are immutable, so once created it’s not possible to modify the properties. If you do need to change anything on a queue you will have to either delete and re-create the queue, or create a new queue with a different name.
As for the messaging API changes, after a quick glance I like the changes that have been made between the CTP and release versions, even though I’ve got to re-code all my demos for the release bits. Be aware that some of the sample documentation and code comments have not been updated to reflect the changes (I noticed this in the DeferredMessages sample) , so trust the code not the docs.

Windows 8, Metro and IE10: First impressions

I’ve just installed the Windows 8 Developer Preview. These are some first impressions:

Installation of the preview was quite smooth and didn’t take too long. It took a few minutes to extract the files onto a virtual image, but feature installation then seemed to happen almost instantaneously (according to the feedback on the screen). The installation routine then went into a preparation cycle that took two or three minutes. Then the virtual machine rebooted and after a couple of minutes more preparation, up came the licence terms page.

Having agreed to the licence, I was immediately taken into a racing-green slidy-slidy set of screens that asked me to personalize the installation, including entering my email address. I entered my work alias. I was then asked for another alias and password for access to Windows Live services and other stuff. There was a useful link for signing up for a Windows Live ID. I duly entered the information. Only on the next screen did I spot an option to not sign in with a Live ID. I didn’t try this, but I felt a bit peeved that the use of a Live ID had appeared mandatory until that point. I suspect the idea is to try to entice users to get a Live ID, even if they don’t really want one.

A couple more minutes of waiting, et voil%u00e0. The Metro Start screen appeared, covered in an array of tiles. Simultaneously I got an email (on my work alias) saying that a trusted PC had been added to my Live account. I clicked the confirmation link, signed into Windows Live and checked that my PC had indeed been confirmed. Then Alan started chatting, but that is a different matter.

Of course, Oracle’s Virtual Box (and my Dell notebook) haven’t quite mastered the art of touch yet. For non-touch users a scroll bar appears at the bottom of the Metro UI. I had a moment’s innocent fun pretending to swipe the screen with my finger while actually scrolling with the mouse. Ah, happy days. Then I discovered that the scroll wheel on my mouse does the equivalent of finger swiping on the Start page.

I opened up IE10. Wow! I thought IE9’s minimal chrome story was amazing. IE10 shows how far short IE9 falls. There is no chrome. Nothing. Nadda. Of sure, there is an address box and some buttons. They appear when needed (a right mouse click without touch) and disappear again as quickly as possible. It’s the same with tabs which have morphed, in the Metro UI, into a strip of thumbnails that appear on demand and then get out of the way once you have made your selection. Click on a new tab and you can navigate to a new page or select a page from a list of recents/favourites. You can also pin sites to ‘Start’, which in this case means that they appear as additional tiles on the Start screen. I played for a minute and then I suddenly experienced the same rush of endorphins that hit me the first time I opened Google Chrome a few years back. Yes, sad to say, I fell in love with a browser! A near invisible browser. A browser that is IE for goodness sake! A browser that does what so many wished IE would do years ago. It gets out of your way.

Do you like traditional tabs? That’s not a problem, because the good-ole desktop is just a click (or maybe a tap or a swipe) away. There is even a useful widget on the now-you-see-me/now-you-don’t address bar that takes you to desktop view. It is a bit of a one way trip, and results in a new IE frame opening on the desktop for the current page. On the desktop, IE10 looks just like IE9. It is, however, significantly more accomplished, and has closed much of the remaining gap between IE9, the full HTML5 spec and some of the additional specifications that people incorrectly term ‘HTML 5’. Microsoft has more than doubled its score on the (slightly idiosyncratic) HTML5 Test site (http://html5test.com/) and now just pips Opera 11.51, Safari 5.1 and Firefox 6 to the post for HTML5 compliance (it beats Firefox by just2 points, although it is 1 point behind if you take bonus points into consideration) by that measure, although it still falls behind Google Chrome 13.

Pinning caused me some issues which I suspect are simply bugs in the preview. Having pinned a site, every time I went into the Metro version of IE10, I found that I couldn’t click on links, hide the address bar, view tabs, etc. I eventually had to kill my IE10 processes to get things working properly again. I noticed that desktop and Metro IE10 processes appear with slightly different icons in the radically redesigned task manager.

One slight mystery here is that the beta of 64-bit Flash worked fine in Desktop view but not in Metro. No doubt this will long since have become a matter of history by the time all this stuff ships.

For a few minutes, I was rather confused about the apparent lack of a proper Start menu in the desktop view. If you click on Start, you go back to the Metro Start page. And then the obvious dawned on me. In effect, the new Metro Start screen is simply an elaboration of the old Start menu. In previous version, when you click Start, the menu pops up on top of the desktop. It is quite rich in previous versions, and allows you to start applications, perform searches for applications and files or undertake various management and administrative tasks. Windows 8 is really not very different. However, the Start menu has now morphed into the new Metro Start page which takes up the whole screen. Instead of a list of pinned and recent applications, the Start screen displays tiles. Move the mouse down to the bottom right corner (I don’t know what the equivalent touch gesture is), and up pops a mini Start menu. Clicking ‘Start’ takes you back to the desktop. Click on ‘Search’ to search for applications files or settings. The settings feature is really powerful. In fact, in Windows 7, searching for likely terms like ‘Display’ or ‘Network’ also returns results for settings, but you get far more hits in Windows 8. The effect is rather like ‘God Mode’ in Windows 7.

The mini Start menu is available in the desktop as well. In this case, if you click ‘Search’, the search panel opens up on the right of the screen and results then open up to take over the rest of the screen. As I experimented, I found that while things were fairly intuitive, the preview does not always work in a totally predictable fashion. I also suspect that the experience is currently better for touch screens than for traditional mice (I note Microsoft is busy re-inventing the mouse for a Windows 8 world – see http://www.microsoft.com/hardware/en-us/products/touch-mouse/microsite/). This is hardly surprising given that Windows 8 is clearly in an early state and is unfinished. I suspect the emphasis to date has been on touch, and not on mouse-driven equivalents.

Once I grasped the essential nature of the Metro Start page and its correspondence to the Start menu is earlier versions of Windows, I began to feel far more comfortable about the changes. Sure, all the marketing hype is about the radical new UI design features. However, this really is just the next stage of the evolution of the familiar Windows UI. Metro is absolutely fabulous as a tablet UI (better than iOS/Android IMHO, which after all, are really just the old ‘icons on a desktop’ approach with added gestures), and I think it will actually be quite good for desktops, once it is complete. I note, though, that people have already discovered the registry hack to switch Metro off (see http://www.mstechpages.com/2011/09/14/disable-metro-in-windows-8-developer-preview/), and I think MS would be wise to offer this as a proper setting in the release version. I anticipate, though, that I will not be switching Metro off, even on a non-touch desktop.

Shutting down presented a little difficulty. I am used to using the Start menu to do this (the classic ‘Start’ to stop conundrum in Windows). I couldn’t find a ‘Shut Down’ command on the Start screen. I eventually did Ctrl-Alt-Delete (or rather, Home-Del in Oracle Virtual Box) and then found a Shut Down option at the bottom left of the screen.

Booting the VBox image takes 20 seconds on my machine. 20 seconds! I’ll say that again. 20 seconds!!!! Yes, 20 seconds, just about exactly. That’s on a virtual machine on my notebook. On the host, it would be significantly faster. This is Windows like we have never known it before. Frankly, it is the ability to boot fast and run Windows happily on ARM devices (I’ll have to take that on trust as I haven’t yet seen it for real) that are the really important changes. Almost more important than the Metro UI. The nay-sayers and trolls say it can’t be done. I think Microsoft has done it, though.

My last foray into Windows 8 this evening was to launch Visual Studio 2011 Express and have a quick peek at the templates for Win8 development. I have a lot to explore.

The say first impressions are the most important. When I saw the on-line video of Windows 8 a couple of months back, I almost fell off my chair in surprise. Now I have got my hands on an early version I am really quite impressed. Like everyone else, I couldn’t see how Microsoft could possibly compete against Apple and Google in the tablet space. Now…well…I look forward to seeing if and how Apple and Google will respond. If it is true, as Steve Ballmer states, that Microsoft had 500 thousand downloads of the preview in less than 24 hours, then tectonic plates have already shifted and Microsoft is firmly on track to become a major contender in the tablet space. OK, that’s only one in every 14,000 people on the face of planet earth, and yes, the release version of Lion had double that number of hits in the first 24 hours. Nevertheless, it is a huge figure for an early technical preview of an operating system that won’t ship for another year. It means people are very, very keen to start developing for Metro (I know we are at SolidSoft). And if Windows 8 succeeds on tablets, what will that mean for Windows Phone which also uses the Metro concept? Don’t ever, ever underestimate Redmond.

Enfo Zystems is sponsoring a two day event focusing all on integration.

Welcome to Integration days 2011!

If you are in the integration space, you’ll find all kinds of interesting and valuable sessions in any of the four tracks; Strategy, Public, Microsoft and IBM. Each track has six sessions with speakers from both Enfo Zystems and other partner organizations such as Microsoft.

At Thursday evening, you’re invited for dinner with entertainment, which of course will be a great time to meet up with other integration geeks (such as myself)

And the best of all -It’s all free, so sign up now!

The event starts on the 13thof October and covers four tracks, each with six sessions. The Microsoft platform track will cover the following six sessions:

Microsoft BizTalk Server and Microsoft’s Middleware vision

BizTalk Server has been at the center of Microsoft’s Middleware platform for a number of years, to provide a rich set of capabilities for services and integration. AppFabric, both on-premise and on Windows Azure provides additional capabilities as well as some overlapping ones. So what is the strategy here, what is Microsoft up to long term and short term? How will this affect solutions you create and what opportunities will it create for your company? In this session, you will get the answers to these questions.
Presenter: Marcus Gullberg, PM Microsoft Sweden

Microsoft BizTalk Server & Windows Azure AppFabric

Microsoft’s Middleware platform is currently undergoing a change, which in turn offers different solutions with unique capabilities. What is available today, and how can we today make these solutions work together? This session will cover Microsoft BizTalk Server, Windows Server AppFabric and Azure AppFabric, to show how you can extend the reach of your integration platform outside your own domain.
Presenter: Mikael H%u00e5kansson, Solution Architect, Enfo Zystems

Windows Azure AppFabric Platform futures

Where is the future of Microsoft’s Middleware platform going? How will we design, build and monitor our solutions in the future? What capabilities will we have in our tool box? These and many other questions will be addressed in this session, which will focus on Microsoft Azure AppFabric Platform and emerging capabilities such as Composite Application, Access Control Center, Caching, ServiceBus Topics & Queues and other enhancements, and Integration.
Presenter: Johan Hedberg, Solution Architect, Enfo Zystems

Using AppFabric Cache to Maximize the Performance of Your Windows Azure and On Premises WCF Applications

Caching is an integral part of an overall scaling strategy. By properly utilizing caching you can radically increase the number of concurrent users your application can service. Much of the caching information available to users today only focuses on server side caching. Server side caching is important, we will cover it in this session, and we will show concrete techniques to maximize its effectiveness . However, this session will also cover client side caching techniques. Client side techniques are often overlooked in spite of the fact that in order to truly hit extreme scale those techniques are nearly always necessary and often end up being bolted on after the fact. After attending this session, the attendees will walk away with the concrete knowledge and code necessary to immediately improve their WCF application performance.
Presenter: Paolo Salvatori and Mikael H%u00e5kansson

Deep dive: How to integrate BizTalk Server with Windows Azure Service Bus Messaging

The Windows Azure AppFabric Service Bus and Windows Azure Connect are the foundation for building a new class of distributed and hybrid applications that span the cloud and on premises environments. The Service Bus is an Internet-scale Service Bus that offers secure, scalable and highly available connectivity and messaging capabilities. Windows Azure Connect provides a network-level bridge between applications and services running in the cloud and on-premises data centers. Windows Azure Connect makes it easier for an organization to migrate their existing applications to the cloud by enabling direct IP-based network connectivity with their existing on-premises infrastructure. In this session you will see how to integrate these technologies with BizTalk Server to create solid and cloud-ready solutions.
Presenter: Paolo Salvatori, Senior Program Manager Microsoft

Baseline for BizTalk Hands-on

Baseline provides a comprehensive framework that supports the design, development and maintenance of systems integration solutions. In this session we will provide a practical example of how to use the Baseline methodology and tools to refine project requirements into a working BizTalk solution – tested, documented and packaged, ready for deployment in BizTalk Server 2010. In the process we will use Baseline documents and the Baseline Portal to highlight the main strengths of Baseline.
Presenter: Martin Rydman and Mikael H%u00e5kansson

Blog Post by: wmmihaa

BizTalk Server 2010: Loading properties in custom pipeline components

Following the previous post, here is a second bit of wisdom. In the Load method of a custom pipeline component, only assign values retrieved from the property bag to your custom properties if the retrieved value is not null. Do not assign any value to a custom property if the retrieved value is null.

This is important because of the way in which pipeline property values are loaded at run time. If you assign one or more property values via the Admin Console (e.g., on a pipeline in a Receive Location), BizTalk will call the Load method twice – once to load the values assigned in the pipeline editor at design time and a second time to overlay these values with values captured via the admin console. Let’s say you assign a value to custom property A at design time, but not to custom property B. After deploying your application, the admin console will display property A’s value in the Configure Pipeline dialog box. Note that it will be displayed in normal text. If you enter a value for Property B, it will be displayed in bold text. Here is the important bit. At runtime, during the second invocation of the Load method, BizTalk will only retrieve bold text values (values entered directly in the admin console). Other values are will not be retrieved. Instead, the property bag returns null values. Hence, if your Load method responds to a null by assigning some other value to the property (e.g., an empty string), you will override the correct value and bad things will happen.

The following code is bad:

object retrievedPropertyVal;
propertyBag.Read(“MyProperty”, out retrievedPropertyVal, 0);

if (retrievedPropertyVal != null)
{
myProperty = (string)retrievedPropertyVal;
}
else
{
myProperty = string.Empty;
}

Remove the ‘else’ block to comply with the inner logic of BizTalk’s approach.

Biztalk Server 2010: Pipeline component fails with "Value does not fall within the expected range."

Here is a small snippet of BizTalk Server wisdom which I will post for posterity. Say you are creating a custom pipeline component with custom properties. You create private fields and a public properties and write all the code to load and save corresponding property bag values from and too your properties. At some point, when you deploy the BizTalk application and test it, you get an exception from within your pipeline stating, unhelpfully, that “Value does not fall within the expected range.” Or maybe, while using the Visual Studio IDE, you notice that values you type into custom properties in the Property List are lost when you reload the pipeline editor.

What is going on? Well, the issue is probably due to having failed to initialise your custom property fields. If they are reference types and have a null value, the PipelineOM PropertyBag class will throw an exception when reading property values. The Read method can distinguish between nulls and, say, empty strings, due to the way data is serialised to XML (e.g., in the BTP file). Here is a property initialised to an empty string:

<Property Name=”MyProperty”>
<Value xsi:type=”xsd:string” />
</Property>

Here is the same property set to null:

<Property Name=”MyProperty” />

The first is OK. The second causes an error and leads to the symptoms described above.

ALLWAYS initialise property backing fields in custom pipeline components. NEVER set properties to null programmatically.

BizTalk360 – What is the Roadmap?

We often hear this question from people asking our Roadmap, the honest answer is "We don’t have one".

Being a small company we can’t afford to have a lengthy business plan with long set of features.  Having big plans only scares people off, instead of doing things. We keep things simple, we work on 1 or 2 features at a time. Do it very well and make sure it works as promised.

We give demos to 1 or 2 customer a week consistently, and our future directions are mainly driven by those customer requests. When we hear something for the first time we ignore it (it’s true, we ignore it). When we hear the same thing second time, we make a note of it, and finally when we hear it third time that feature is definitely getting into our next release.

The other areas we concentrate is on reliability, we improve the quality of BizTalk360 on every release. Again, being a small company the last thing we want is to spend time diagnosing unknown issues raised by customers. It just puts lot of stress and pauses our regular routine, so we constantly improve the quality.

BizTalk360 now is a completely different product to the one we have planned 19 months ago. If we had spend time writing business analysis documents with all the feature sets, it probably would have taken us 6 months just to get us out of the ground. You probably won’t know, we have thrown away 2-4 months of our work, just because we understood it doesn’t add too much value and it simply bloats BizTalk360.

We wanted to solve real business problems faced by customers, we wanted to be as close as possible to reality. We wanted to make BizTalk360 a nice little solution, that addresses a niche problem for the Microsoft? BizTalk Server customers.

Workaround for Kerberos SSPI Context Errors in BizTalk

Workaround for Kerberos SSPI Context Errors in BizTalk

A couple weeks ago one of my clients was experiencing constant “Cannot generate SSPI Context” errors in BizTalk. These are Kerberos errors and they are extremely annoying because they happen constantly whenever you are trying to use any database function with BizTalk. These would fill up the event logs on my client’s server and was […]
Blog Post by: clineer

AppFabric Access Control Service Webcast – Using Social Identity Providers

I’ve started to take a look at the Azure AppFabric Access Control Service (ACS), and have started an ACS sectionon Cloud Casts. The first webcast looks at using social identity providers to provide authentication for websites. I’m going to focus on ACS for a bit and wait for the AppFabric messaging capabilities to be released before returning to them and looking in more detail. I have a few webcasts on AppFabric messaging here.