I know that I'm taking a risk, pitting the differing OS religions against each other, but I would like professional opinions about hosting a servlet container. In my case the container is set, we will be using Tomcat. But what is in question is the hosting operating system. We have administrators experienced in Windows Server 2003. We have developers experienced in Solaris, OSX, and Linux. There is no warring between these groups, just a question of who will ramp up through the learning curve necessary to use the OS that they are unfamiliar with. So given all the cooperative spirit, we are struggling with how to find the most efficient path.
I think the most efficient thing would be to host it on the same platform you are developing the code on. If you are developing on Windows, host on Windows. If you are developing on Linux, host Linux.
Doing it that way will eliminate a whole slew of potential cross-platform related bugs when you go from development to production, and it will make it so any extraneous utility scripts you write for production can work in the development environment, and vice-versa.
Can't give you a scientific breakdown but it may not matter that much which one you choose. We use Linux to host Tomcat and have never had a problem. It may come down to who is going to maintain the server. Since it might be the administrator then go with what the admin is comfortable with. I don't think the developers have to worry too much about the platform.
I work on a Windows workstation but deploy to a Linux server. It is mostly trouble free.
Update: But I agree with @Spike Williams though about avoiding the headache of the cross platform bugs.