Java is open-source and widely supported. You can run Java applications on almost any architecture, which makes moving it easy, and hosting cheap. The Java platform can run several useful languages which don’t work with, or have been abandoned by, the .NET platform, such as Ruby and Python. The developer community for Java is also larger, which may make it easier to find talent in the future. Where .NET excels is in its integration with Microsoft tools and services. So if you need to use several other tools from them, you will probably have an easier time working with .NET.