Dave Fletcher has a report on his blog about some of the technical choices by Utah State IT departments. He reports Brad Brown at ABC is pushing .NET while other departments are moving toward more Linux (which, with the Mono project could still be using .NET, of course). I think this is instructive.
Brad runs one of the most heavily retail environments in State government. He's got stores and a warehouse. Most of his infrastructure is built on Windows because the business driver, supporting retail operations, pushed them in that direction. In that environment, it makes perfect sense to invest in .NET on the back-end. There's tremendous leverage there.
I've long held that large organizations are going to have a difficult time saying "we're a .NET shop" or "we're a J2EE shop." Most IT organizations are going to be both. The beautiful part is that it just doesn't matter. With SOAP and WSDL, I can integrate a .NET app just as easy as I can integrate a J2EE app. So, I think Dave's right about standards, but I think the State can move beyond thinking about a standard on development platforms and get to a true reference profile that says "no matter what development platform you use, here's the standards you'd better be prepared to support."
An example of why this works is TCP. Back in the day, there were big arguments about what hardware to buy based on what network you used. Now we buy any hardware and know it will talk to the network. TCP solved these problems at one level in the network stack. Web services does the same thing further up the stack. We have the freedom to stop talking about .NET vs. J2EE vs. Whatever. That's a good thing.