Well, I think that I need to write long article to lay down all .net shortcomings in the enterprise field. To sum it up to few lines Java is in the enterprise business for long time. at least from marketing point of view java target was enterprises while Microsoft try to target more low level and large audience. The long Java experience in the enterprise market ends up with many Java specs and implementations that solve existing need in the enterprise field. I don't think at all that Java as a language and development tool is better then .Net on the other hand I do think that Java as a set of solutions got much more to offer to the enterprise then .Net. I don't ask from Microsoft to fill all of those gaps but I do except from MS to be part of open source projects that will create .net implementation for enterprise needs.

I really concern because I don't see anyone in MS from the development teams (Not marketing stuff) that really see those shortcomings. For example I got a conversation about implementation of MVC in ASP.NET. MS guys try to argue that UIP (application block) is the right solution. They don't accept my arguments that controller should be separate from viewer. Now why on earth Java new studio creator should implement clear MVC implementation while I need to write my own?