Sun Java System Application Server 9.1 Update 1 和 9.1 Update 2 发行说明

ASQuickStartup 中断了 SocketChannel.keyFor(),返回 null 而不是 SelectionKey(问题跟踪器 3027)

说明

在多个选择器上注册 SocketChannel 时,执行 socketChannel.keyFor(lastRegisteredSelector) 会返回 null 而不是 SelectionKey

解决方法

此问题与 JDK 错误 (6562829) 相关,希望在 6.0 U3 中得以修正。Application Server 9.1 Update 1 中已包括解决方法,因此,在调用 keyFor API 之前打开选择器。这样可使 keyFor 继续作用,直至 JDK 错误得以修正。