Have a look @ the paper named:"J2EE and .NET: A Comparison" by this
site: http://isavix.com ! it may give u some idea.
I'm not telling this 'cause here is a Java EE group but Java
Technology has gone a long way through these enterprise needs.
putting new J2EE 5.0 spec upgrades away you still find many
frameworks and tools to overcome your enterprise problem.
Java has its own Persistance models which you won't find on
Microsoft Technologies. J2EE applications are SURE more scalable
than the other partner. Security issues are more answered at Java
side ( you can rely more on Linux than Windows ), you have tons of
libraries and tools to use ( mostly opensource so reducing your
costs ) and there's a good transaction support. Java's performance
in some cases realy is the matter when .Net has no ( as i know )
known performance problems and Microsoft's .Net has more support in
some cases to Java's OpenSource frameworks...
I'd choose Java if charasteristics
like "persistance", "transactional
processes", "scalablity", "reliability" and "security" realy was the
key!