1.4.1 should work (there are no API differences we would use), although 1.4.2 is highly recommended. The Sun 1.4.1 JVMs contained a lot of bugs in the networking code related to nio that made it pretty much useless. I don’‘t know if Apple’‘s JVM contains the same bugs (I would suspect so since they use the Sun source as a base for their implementation but they could have fixed the networking code). I currently use a Mac so could test if we do go with an nio based solution. I’'m hoping that Apple will sync up with 1.5 when it is released this fall/winter.
In fact, we may leapfrog and require 1.5 because the one major drawback to 1.4’‘s nio is you can’'t easily support SSL over nio. jdk 1.5 will contain a generic SSLEngine class that allows you to turn any stream into an SSL stream, thus allowing us to use SSL with nio streams.
I watched the Apple 1.4.1 effort closely (being a Mac user) and it was pretty painfully slow. However, they claim that a lot of the work was in creating a patch so that new versions of the jvm can be quickly ported. Being that they haven’‘t ported 1.4.2 over I don’‘t know what the truth really is. Maybe too busy with Panther? I’‘m hoping that means 1.5 will be out on Apple quickly. In any case, since I work on OSX, it’'s definitely one of the platforms I want to support. So whatever is available on OSX will probably be the absolute minimum requirement (currently 1.4.1). Perhaps 1.4.1 supported unless you want SSL in which case you need 1.5. That seems reasonable to me since big open servers may not want SSL, and if you are stuck on 1.4.1 and want SSL you can always use an SSL accelerator box to convert the SSL streams to plain streams to the server itself. Would something like that be reasonable?
(I too am waiting anxiously to see the G5 xserve. It’'s on my radar!)