1 of 123 | Geneva supports OASIS WS-Trust, SAML - Last week at the PDC 2008, Microsoft released the public beta of “Geneva”. “Geneva” is three things: Geneva Server. This is a security token service (STS), as defined in the OASIS WS-Trust specification. This thing issues and transforms claims, manages user access, and enables automated federation. Geneva Framework. This is a managed (.NET) Framework that helps developers build claims-aware applications and services, that connect to the STS. You can use it to process claims on either side of an authorization transaction (requestor or responder). Windows CardSpace Geneva. This is just an extension of the CardSpace thing in Windows y......
2 of 123 | Such a deal! MSDN for startups - Today Microsoft announced BizSpark: http://www.microsoftstartupzone.com/bizspark This program gives ISV startup with less than USD$1m in annual revenue (lower amounts for some other countries - for example it's just USD$250k for Egypt) free access to MSDN subscriptions. Nice. You get Visual Studio, Expression, VSTS, SQL Server, BizTalk Server, SharePoint Server, Windows Server - all you need to build a software app on the Microsoft application platform. There are some requirements: you have to be a software startup, privately held, and there's the revenue limit. If you don't qualify for that deal, there are others that may work for you. Here's a summary : ......
3 of 123 | REST in WCF: Varying response content type based on HTTP Request Headers - Damian Mehers made a comment on my blog post from April, but I felt it was worth a full reblog. Damian's used the same WCF extensibility points I used to produce some boilerplate that varies the response content type from JSON to XML, based on the Accept or Content-Type header of the GET request. He extends WebHttpBehavior to return an IDispatchMessageFormatter that does either JSON or XML. class WebHttpBehavior2Ex : WebHttpBehavior { protected override IDispatchMessageFormatter GetReplyDispatchFormatter(OperationDescription operationDescription, &n......
4 of 123 | Eclipse tools for Silverlight and .NET - There is now an Eclipse project, Eclipse4SL, to produce tools that work with Microsoft Silverlight. See Neil Hutson's blog post for some details. For those of you who have day jobs and find it hard to keep up with all the code-names and product names coming out of Microsoft, Silverlight is the name a cross-browser, cross-platform, and cross-device plug-in for rich interactive applications for the Web. Huh? Break it down: Silverlight is a browser plug-in: Runs in IE, Firefix, Opera, and more. As a plug-in, Silverlight provides a runtime, which is at it's core, .NET based. It is a lightweight version (subset) of the .NET Framework. When you write de......
5 of 123 | WSDL-First in WCF, versus WSDL-First in ASMX - I wanted to point something out regarding the WSDL-First stuff I posted yesterday. This is a look at the interface generated by the SvcUtil.exe tool for WCF. [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] [System.ServiceModel.ServiceContractAttribute(Namespace="urn:Microsoft.Search", ConfigurationName="Ionic.Samples.Webservices.Sep21.IResearchServiceSoap")] public interface IResearchServiceSoap { [System.ServiceModel.OperationContractAttribute(Action="urn:Microsoft.Search/R......
6 of 123 | WSDL-First development with WCF - A couple days ago I mentioned that you could do WSDL-First development with WCF, but I didn't go into detail as to how that would work. Somebody asked, so I guess I'll describe the specific steps. I want to use a real scenario, so for a WSDL, I will use the WSDL that Microsoft defines for Microsoft Office Research Services. Wait, did you get that? Microsoft Office defines a WSDL for Research Services. Any Microsoft Office program, Office 2003 or Office 2007, can call out to any service that implements the given Research Service wire contract. Office programs are web services clients. Ok, we're all clear on that, right? And this it may be counter intuitive for some people. The clie......
7 of 123 | Flatten your WSDL with this Custom ServiceHost for WCF - Yesterday I mentioned using a custom service host to flatten the WSDL that is generated by a WCF service. This is something Christian showed us all how to do a long while ago, to improve interoperability between WCF-implemented services and consumers written on other technology stacks. Flattening WSDL is important for Interop purposes becausse many tools don't digest modular WSDL very well. When I say modular WSDL, I mean WSDL that imports other WSDL's or XSDs. I realized that I had never actually published the code for my custom WCF service host that flattens WSDL. So here it is. using System; using System.Collections; using System.Collections.G......
8 of 123 | Custom Config file for a WCF Service hosted in IIS - I am constantly developing new WCF services to try out various techniques, ideas, scenarios. Many times for these quickie WCF applications I will just use a text editor to write the code. As you know there are multiple options for hosting your WCF services. For these quick apps, I will typically write a simple custom console host for the WCF service, what is sometimes called "self-hosting" the WCF service. You've seen some form of this boilerplate code many times: public static void Main() { string addressRoot= "http://localhost:5555/"; string endpointSuffix= "MyWcfService"; string endpointAddress= addre......
9 of 123 | How to Build REST apps on .NET using WCF - There's a new screencast series on building services using the WCF part of .NET. The first few are already available. The one is basic, the next couple cover REST: How to build a WCF Service using Visual Studio 2008, and .NET 3.5. (10 minutes) Creating a HI-REST GET Service with WCF 3.5 sp1 (15 minutes) Consuming a HI-REST GET Service From Silverlight 2 (Beta 2) How to Shape the URI in REST services built on WCF There will be more to come, too, covering Content Negotiation, Atom, and more. Stay tuned! ...
10 of 123 | REST Q & A - enough already - Tim Bray at Sun has some questions and comments on REST. First, let me say that the religious wars over WS-* and REST seem to be generated by a very small number of people who have a very large amount of spare time. Don't these people have things to do? Can it possibly be enlightening or helpful for anyone at this time to read Mr Tim Bray's opinion, once again, that XSD and WSDL are "lousy and malformed"? Really? Wait, let's read four other "Thinkers" who chime in with their own artfully crafted prose stating their position on how much they dislike XSD. This is all utter baloney. While one class of people will debate endlessly about the number of angels tha......
11 of 123 | HOW TO: Configure the jakarta Tomcat connector for IIS (serve JSP from IIS) - Steve Sfartz offers a tip for configuring the Tomcat connector on IIS, to allow IIS and Tomcat to run from the same domain. This will allow numerous interop scenarios, one of which is to allow IIS to serve Silverlight apps while the Tomcat engine can serve JSP and Servlets. ...
12 of 123 | Oslo sessions at PDC 2008 - https://sessions.microsoftpdc.com/public/sessions.aspx "Oslo": Managing Software + Services Applications Presenter: Oliver Sharp Increasingly, applications will consist of services that run both on-premises and in the cloud. Learn how Microsoft is simplifying the deployment and management of Software + Services applications. Hosting Workflows and Services in "Oslo" Presenter: Ford McKinstry "Oslo" builds on Windows Workflow (WF) and Windows Communication Foundation (WCF) to provide a feature-rich middle-tier execution and deployment environment. Learn about the architecture of "Oslo" and the features that simplify deployment, management, and tro......
13 of 123 | Changing of the Guard: AXIS out, JAXWS in - I have come to a conclusion: I no longer want to deal with the hassle that has become Apache AXIS. Back in the day, when interconnecting Java to .NET was still novel, I started using Apache SOAP. I was looking for something simple and easy, something that would allow interconnection without a ton of pain. Apache SOAP was that thing. But Apache SOAP was brittle. It had scads of problems with xsi:type and SOAP Section 4 encoding. I needed something more flexible, something easier. Then came Glue from The Mind Electric. Glue was the easier, more flexible web services stack. It was simple. It worked. It was actively maintained. Gra......
14 of 123 | Connecting to Exchange using JAX-WS, part 1 - Yes, it is possible to Connect to Exchange using JAX-WS The fear and trepidation I had when considering the effort to connect a Java application to Exchange Server 2007 was well founded. It wasn't easy. I'm going to spoil the ending and tell you, yes, it is possible to connect Java apps to Exchange Server via Web services, and you can do it securely and with good performance and reliability. But it took some starts and stops to make it happen. Warning: Old Guy Reminiscing Ahead Back a few years, I was a technical marketing guy for the Microsoft platform, and my main role Was talking to customers. One of the things I talked with customers about often, was interop. Pretty much every cus......
15 of 123 | Connecting Java to Exchange over WebDAV, with Apache HttpClient - P.Normal { FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt; FONT-FAMILY: "Calibri","sans-serif"; } Earlier I mentioned a Java Exchange Connector I had seen, and in that post I also said that I had some code that connected from Java to Exchange Server via WebDAV. Some people have asked for the code, so here it is. I use a set of Apache libraries to make this possible: Apache Commons HttpClient for the Java SSL client capability, and Apache Jakarta Slide for the WebDAV piece. As you may have heard, Slide was discontinued as a project a while ago. So maybe you are thinking, Slide? What good is that code if it depends on an abandoned Apache library?. A reasonable point. Honestly thoug......
16 of 123 | What is Scalability? Do I have Extreme Requirements? - Can I turn my Volvo into an F1 Racer? I am a fan of auto racing. I started following racing way, way back. At the low end of the spectrum, anyone with a car can get started racing in autocrosses and track days, for not very much money. At the other end of the spectrum, the pinnacle of the sport, the very top, is Formula One. It's a racing series in which teams field two cars, and they can spend hundreds of millions of dollars for a single season. The cars are very lightweight and produce over 850bhp of power from what engineers would call a "traditional" internal combustion engine, of 2.4 liters displacement. That by the way, is the same displacement engine used in my 199......
17 of 123 | .NET Terrarium - it's BAAAAAACK! - Remember Terrarium? It was a .NET 1.0 learning tool disguised as a game. Microsoft released a developer's kit, and and people built herbivores, carnivores, or plants and introduced them into a peer-to-peer, networked ecosystem where they interacted and sometimes competed for survival. There was a visual display element of course. It was kinda like SimCity crossed with a .NET Tutorial, all run on a peer-to-peer network. People had a ton of fun with it; there were competitions and Terrarium events, it really captured the attention of the community. Well,......... it's back! A fella by the name of Bill Simser has resurrected Terrarium, put it on C......
18 of 123 | Facebook Thrift, Google ProtoBufs, and Interop - Dare had an en-pointe analysis of the emergence of various new non-standarcd communications protocols, such as Facebook Thrift and Google Protocol buffers, and how they compare to the standards-based comms protocols like RSS, ATOM or even WS-*. Dare correctly points out that these tools can be useful if you tightly control the endpoints involved in the communication, and, if you're certain the set of communicating endpoints will never expand to include anything you don't tightly control (acquisition? partner?). After one is accustomed to fire and police protection, and very smooth roads, and storm sewers that keep the roads clear when it rains, it can be easy to......
19 of 123 | New WCF + WF blog: Endpoint - A New Blog started last week, aggregating WCF and WF topics. If you're like me you have really good intentions about reading blogs, you have your subscriptions all organized, you download the content through outlook daily... but then when it comes down to it, it's hard to keep up with reading them all. Now there's one blog to subscribe to for WCF and WF stuff. Endpoint. This one is run by my colleague, Cliff Simpkins, but it's not a one-man-show. He posts his own stuff, but he also aggregates content from other places and brings in guest posters. This should be really good....
20 of 123 | Questions on Interoperability? Check the Forums ! - Microsoft has migrated its interop discussion forum to a new forum engine. Find it at: http://forums.community.microsoft.com/en-US/interopconversations/threads/ There you can ask questions on Vista print drivers, .Docx interop, Web services interop, .NET-to-Java interop, Mainframe interop, VPN interop, and many many other topics. Though I don't believe there is a guaranteed level of service (in terms of time-to-respond), there's a team of people dedicated to monitoring these forums and answering questions or getting questions to the people who can answer them. Worth a look if you have interop questions. ...
21 of 123 | Microsoft System Center will manage Linux apps and assets - In case you missed it, this is from 6 weeks ago, on a Port25 post from Sam Ramji: Today, Bob Muglia and Brad Anderson announced that System Center will have the ability to deliver automated management across heterogeneous IT environments, such as UNIX and Linux. What I see as a best practice for commercial and community engagement with open source technology plays a big part in this. Specifically, Microsoft will deliver an agent infrastructure and management packs (MPs) for monitoring Linux and UNIX platforms for System Center Operations Manager 2007. Early partners like Xandros and Quest are delivering cross-platform MPs for MySQL and Apache, and Oracle, respectively. Microsoft and N......
22 of 123 | Open Source and Interoperability - Open. Source. Is. Not. Interoperability. Ted Neward is an entertaining and talented writer, not to mention a stand-up guy, and a first-rate technogeek. But that doesn't mean he is always right. I was just reading and old post of his which I missed during my unscheduled sabbatical, in which he writes: They [Microsoft] need to have an interoperability story that developers can believe in, which means some kind of open-source-friendly play, I still, still totally do not get why Interop and Open Source are used so interchangeably, by so many people. Often by people whose viewpoints I respect, such as the esteemed Mr Neward. Or if not used interchangeably, why t......
23 of 123 | Java Exchange Connector and EWSJ - Just saw this on TheServerSide.com. The Exchange Web Services for Java (EWSJ - what happened to the 4?). It's a Java class library that uses the Apache AXIS web services stack to connect connects to Microsoft Exchange Server 2007, via the published and supported Exchange Web Services interfaces. What you can do with this is connect to Exchange 2007 from any Java app. A good example is when building an HR or group scheduling app, in Java. (While I love .NET, not everyone has seen the light! and some poor developers are relegated to using Java even for new applications.) In the scenario where you write in Java and the enterprise messaging stan......
24 of 123 | Updated site for BizTalk Server - We've updated the BizTalk Server web site, it looks pretty nice. I think the 3D warped spiderman web graphic thingy is going to sell a lot of enterprise software! ;) Seriously, though, the content is quite good. I think it's remarkable that we have so many customers – you can read about 'em there on the site. It's nice to be able to tout the Gartner Magic Quadrant recognition. For those who don't know, Gartner's an industry analyst and a couple weeks ago they updated their view of Microsoft as a provider of Enterprise Application Server technology. We were pleased with their analysis. The linked content off the BizTalk site is good to......
25 of 123 | I have a dream! C# Code Completion in Emacs (csense, dabbrev, etc) - No good options here. I know, dabbrev does some neat things. But it pales in comparison to real code completion as you get in Visual Studio, or, I think, even SharpDevelop. I checked out a module called csense that a lone developer hacked together last year. The goal of the project looked simple, focused, valuable: real code completion in Emacs for C# !!! Whoohoo!!!!! but The implementation looks incomplete There are no docs I couldn't even figure out how to initially install it nobody is using it; there were 33 downloads and I think I was about 8 of them. I couldn't figure out how to configure it or what the various vars did, without wading in knee deep in......
26 of 123 | Getting flymake.el to work with C# modules - Emacs, since a while back, ships with a package called flymake.el, that defines a minor mode. When you enable this mode, flymake more-or-less continuously compiles the module you;re working on, checking for syntax errors. Out of the box, flymake does not work with C# compiles on Windows. Here's what I added to my .emacs file to make it work for me. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; flymake minor mode ; ; Flymake is built-in to emacs. It more-or-less continually compiles an ; active buffer when the minor mode is enabled. It also flags broken lines ; in the compile as you type. ; ; This is a set of tweaks of flymake for C......
27 of 123 | Emacs is better than Visual Studio as a C# Development Tool?!! - I recently spent some time fiddling with my setup of emacs on Windows. I use emacs for lots of stuff; just now I optimized my setup for development of C# apps. I knew of the JDEE, which has been around for a long time. JDEE is the Java Development Environment for Emacs; it used to go by the moniker of JDE. It has code completion (aka "intellisense"), compiling tools (ant I think), syntax highlighting, an "immediate window" (BeanShell) for evaluating Java expressions right now, that kind of thing. There was a copycat project launched in 2001 called CSDE (C# Dev Env for Emacs). It sounded like a great idea, but it is now stale as 3-day old doughnuts, not having been updated since early 2......
28 of 123 | MSBuild script for compiling all .cs files into a single assembly (DLL or EXE) - I love Visual Studio, but sometimes I build code using no graphical IDE - just the .NET Framework SDK. I wrote an article not long ago describing how to build a WCF Service using .NET 3.5, and just the SDK. I've always been a makefile weenie, but msbuild is the new build tool - it really makes sense to me. One of the things that took a little effort for me was figuring out the msbuild script I wanted. Basically I wanted to just compile all the C# code contained in a directory, into a single assembly (EXE or DLL). As I build out an idea, I often will iterate rapidly on an app - introducing and removing C# files as it makes sense to me, and I want the build scri......
29 of 123 | Varying Content-Type according to the URL in a WCF REST Service - My buddy Justin wrote about how to set the Content-Type headers in a WebGet method in a WCF REST app. Doing this would allow each WebGet method to specify its own Content-Type at runtime. After I summarized how to build a WCF REST app in a post a couple weeks ago, Kyle Beyer asked if there was a way to avoid hard-coding the Content-Type in the WebGet attribute on the method. One question ... Do you know of a way to get a WCF service to honor the 'Content-Type' HTTP header instead of hard coding the content type via an attribute on the method? I would really like to create a service that has a single set of methods which returns JSON/XML based on the HTTP header(s) ... sugge......
30 of 123 | Whatever happened to WSRP? (psst: I'll give you a hint, it rhymes with BEST, and you can do it on a mattress) - Remember when the Java vendors used to advocate WSRP as a way to accomplish Interop? I never thought much of WSRP as a tool for implementing interop, and I went on the record with that. Web services (without the RP add-on), and REST are what people are using for interop, and that really makes sense to me. I love it when I'm right. :) PS: the WSRP FAQ on the OASIS website was last updated in 2004. *Yawn*. ...
31 of 123 | Where were we 3 years ago? "Java apps don't interop with apps built on MS technology." - Ha! I wrote recently about the history of .NET Interop in the industry, and how perceptions in the industry have changes so much. I was looking for some old benchmark code (dirty little secret - I do not use a project management and code versioning system, but the more code I write, and the older I get, the more i need one. . . hmmm, do you think I could get a deal on Visual Studio's Team Foundation Server? hee hee) anyway while I was looking for the old code, I came upon a text file containing an dialogue from an old javalobby thread, from May 2005. I participated in the thread as part of the run-up to JavaOne 2005, in which Microsoft was participating formally, with a......
32 of 123 | A Look back at the History of .NET Interop - Check out the last few weeks worth of blog posts here. One on .NET and Google's Social Graph API. Another on .NET connecting to OpenID. Another on JSON, another on JMS. When I started this blog, there were people out there who knew, they were certain, that .NET apps could not connect to systems built with non .NET technology, or could not connect to systems built with non-Microsoft technology. This was accepted as fact. I spoke with customers daily who accepted this view as the truth. It was looney. I spoke with these people, explained that .NET could connect to the system they had running in their data centers right then, and they did not believe......
33 of 123 | Standalone JSON library in .NET on CodePlex - As you know, because you are such a FAITHFUL reader of this blog, there is new JSON support on WCF for version 3.5. The way you get JSON though, would be only through a service interface. But what if, for whatever reason, you cannot use .NET 3.5 (like maybe the corp standard where you work is still on .NET 3.0), but you still want to play with JSON on the wire. Now there's a easy-to-use standalone JSON library for .NET on CodePlex. http://james.newtonking.com/pages/json-net.aspx Check it out! ...
34 of 123 | I updated the WCF Wikipedia page - Check it out. The prior version had a bunch of things that were unclear, inaccurate, incomplete, or just plain goofy. http://en.wikipedia.org/wiki/Windows_Communication_Foundation If you no likey, let me know or, better, update it yourself! Just make sure you get it right!...
35 of 123 | Java/XML Binding Options? WebSphere prefers JAXB 2.0... - I'm looking to put together more Java and .NET interop samples. If any of you have any particular requests, let me know. One of the key areas for interop I'm looking at is XML serialization. Today I was scanning the web looking for insight into the leading Java-to-XML binding frameworks. For those of you who are .NET literate but not Java literate, "XML data binding" is the term Java people (and maybe programmers for other platforms too) use for what we .NET-heads call "XML Serialization". According to my unofficial count, there are, let's see... ah...roughly..... a zillion different options. XStream, XMLBeans, JAXB, JiBX, Castor, Zeus, Q......
36 of 123 | The WCF Samples have been updated - The WCF samples published by Microsoft were updated in early March 2008. Download the samples here....
37 of 123 | Tilkov on doubting REST - Stefan Tilkov has written an article addressing doubts about REST, it's posted on InfoQ. He delivers a top-10 list of weaknesses of REST, and then proceeds to address each one. These are things like, lack of tools support, lack of a formal contract language (WADL isn't real (not yet anyway)), it only works with HTTP, and there's no support for transactions, reliability or pub/sub. The things Stefan says in the article are all very reasonable, and I can't really disagree. Some of the "doubts" he raises and then dismisses seem to be negligible, ot not even valid. For example, "Who would actually want to expose so much of their application’s implementation internals?". ......
38 of 123 | .NET and Java Interop over Web services - using JMS! - Earlier this month, Syscon published an article that describes how to interconnect .NET and Java apps via a web services programming model, but using JMS as part of the connectivity infrastructure. I just saw it today. The solution relies on ActiveMQ. The key capability of ActiveMQ that makes this all possible is that it exposes both a Java and a .NET API. The Java side is JMS and the .NET side is i-don't-know-what. In any case, because the Java app and the .NET app can both put and get messages to the ActiveMQ queue, there is interconnectivity. The web services aspect sweetens the deal by providing WSDL-based interface definition, and the goodness that com......
39 of 123 | How to Build a REST app in .NET (with WCF) - My prior post talked about how NOT to write a REST app in .NET. I mentioned WCF as the preferred option. In this post, I'll describe the steps for how you should do it. Some background First up, you should use WCF to build your REST app. WCF is the Windows Communication Foundation. (Microsoft has such a strong penchant for creating acronyms, that there are web sites dedicated solely to cataloging them. ) WCF is part of the .NET Framework, first added in .NET 3.0. WCF is used by applications developers when building apps that communicate, whether using REST, SOAP, or something else. These days, most applications need to communicate. The basic metaphor in WCF is that services receive a......
40 of 123 | Get Smart on WCF - Joe Stagner posted a good list o links for learning WCF. A good first stop on your journey. http://www.joeon.net/post/2008/03/windows-communication-foundation---65-links-to-make-you-an-expert!.aspx ...
41 of 123 | SAP Enterprise Services Explorer for .NET (Visual Studio) does WCF - via http://dedjo.blogspot.com/2008/03/localization-fix-for-sap-esa-explorer.html SAP just released a sneak preview of an add-in for Visual Studio 2005 that they call "SAP Enterprise Services Explorer for Microsoft .NET ". It feels like a misnomer to me, because it's not for .NET, which is the name of the programming framework. It's for Visual Studio, which is the name of the tool. But lots of people use those names interchangeably, I take it. So there you have it. Based on my read, the tool allows a developer to query the SAP Service Registry, and then generate, for .NET applications, web services proxy classes, that enable .NET apps to connect to the services. Th......
42 of 123 | WADL and WSDL and REST, oh my! - Hernan Garcia made an interesting comment on my post of yesterday: For REST, there is an alternative to the WSDL in SOAP and it is WADL. Good point Mr Garcia - The adoption and practical utility of WADL is worth watching. The question for me becomes whether WADL+REST is actually better than WSDL+SOAP, or just different. Whether REST has succeeded to the extent that it has, in spite of lack of WSDL-like tools, or in fact, because of the lack of WSDL-like tools? Is the appeal of REST that there is no single set of tools, which thus limits the possibility to be overcome by galloping complexity, as some have characterized WS-*? All interesting. I......
43 of 123 | Another SOAP and REST discussion, Same Result - Catching up with some reading, I was looking through the SDTimes issue from January 1st (yes, I know, it is now February. Cut me some slack!). In it, Sanjiva Weerawarana, CEO of WS02, has a guest editorial column about your favorite subject and mine: REST versus SOAP. Nothing really new, to me anyway, in that editorial, but Mr W articulates the issues well. In short, neither REST nor SOAP is the answer to every need, neither REST nor SOAP are automatic solutions. WSDL is not the greatest, but it is better than the nothing we get with REST. And so on. The bottom line, says Weerawarana, is that both REST and SOAP, properly applied, can play a role in......
44 of 123 | Interop Examples (Java, .NET, XML, AXIS) are Temporarily Unavailable - The examples that are usually available at http://dinoch.dyndns.org:7070 and http://dinoch.dyndns.org:8080 , primarily showing interop between Java and Microsoft .NET, are temporarily unavailable. These examples used AXIS, JBoss, and a bunch of other Java technology to interop with .NET and even MS-Office. I am having some network problems. I hope to resolve them soon. My apologies for the inconvenience. ...
45 of 123 | .NET Framework 3.5 and Visual Studio 2008 have been released - On Monday this week, the .NET Framework v3.5 and Visual Studio 2008 were publicly released. The .NET Framework v3.5 includes some nice new capabilities in the communications stack, specifically REST support, support for JSON or XML serialization, and ATOM & RSS Syndication support. There's also some nice integration between WCF and ASPNET AJAX - where an AJAX page can act as a client to a WCF service that uses REST + JSON. Concurrent with the .NET Framework v3.5, we've also released Service Pack 1 (sp1) for the .NET Framework 2.0, and sp1 for the .NET Framework 3.0. The Service Packs are strict subsets of the v3.5 capability. Special note: these SP1's......
46 of 123 | SOAP? REST? Whichever you choose, WCF is the right framework - There's a new paper by David Chappell that is worth checking out. Entitled "Dealing with Diversity: Understanding WCF Communication Options in the .NET Framework 3.5", it discusses WCF and its applicability to REST as well as WS-* style communications. As you may know, there's been lots of discussion about whether SOAP-based or REST-style approaches to services interfaces are the right thing. If you're not familiar with the debate, here's the plot summary: that REST-style interfaces can be useful in basic scenarios, but if services-based applications demand things like reliabilility, transactions, forwarding, or message-based security, then SOAP with the coml......
47 of 123 | Microsoft launches new SOA Website - The new Microsoft SOA & Business Process website is up! And I am really pleased to see it. Mea culpa time: For a long time, we (Microsoft) have not effectively communicated with customers and partners about Service Oriented Architecture. That's why I'm so pleased to see this new website. By the way, the new website is up on this, the first day of the 2007 SOA & Business Process conference, happening on Microsoft's campus right now. I'm sitting in the keynote address as I type this. The event is sold out! There are 1000 people here to learn about the Real-World approach to SOA that is enabled by the Microsoft application platform. Why were we so bad at communicating? Have a ......
48 of 123 | The SOAP-over-JMS spec and interop - In a previous post, I wrote about a WCF Channel for MQ that IBM is building. Some customers had asked about this project and its implementation, specifically around the interop implications if other JMS providers, other than MQ that is, were used in an environment. To be clear the WCF Channel for MQ is ... how can I put this? for MQ. It is not an approach that particularly facilitates interop among JMS providers. That would best be addressed by a spec that focuses at a different level, say AMQP. AMQP as I understand it, is a queue-to-queue protocol that would facilitate interop between queue providers, and I believe that would be true whe......
49 of 123 | Interop between ASMX and WCF Services - My esteemed colleague, Kevin, is working on a project where the customer has a bunch of ASP.NET (ASMX) web services, and they are looking at migrating to WCF. The customer's goal is simplicity: in stage 1, they'd like to keep their ASMX files, keep the IIS hosting, but add a .svc file to also host the service also in WCF. In stage 2, they'd like to turn off the ASMX endpoint and use only the WCF (.svc) endpoint. All this while keeping the existing client code unchanged: no new code, no re-compile, nothing. A .NET app with a web service stub generated from wsdl.exe should be able to talk to the new service hosted in WCF. This ought to be pretty simple, right? Kevin found an MSDN article on......
50 of 123 | Custom WCF Channel for IBM MQ - IBM have shipped an early version of a Custom WCF Channel for MQ. The dev team in Hursley contacted me to solicit feedback. It's apparently pretty simple now, supporting only SOAP one-way messaging, but they say if there is sufficient interest and feedback, they will consider developing it further and perhaps adding it to the MQ product (as they did with the MQ Classes for .NET, and other stuff). Out of the box, WCF includes support for queued transport, over MSMQ, which is the