Sun Java System Application Server 9.1 Update 1-9.1 Update 2 版本說明

ASQuickStartup 中斷了 SocketChannel.keyFor(),傳回空值,而非 SelectionKey (問題追蹤代碼 3027)

說明

在數個選擇器上註冊 SocketChannel 時,執行 socketChannel.keyFor(lastRegisteredSelector) 會傳回 Null,而非 SelectionKey

解決方案

此問題與 JDK 錯誤 6562829 相關,預計在 6.0 U3 中修正。Application Server 9.1 Update 1 中已經提供了解決方法,以便在呼叫 keyFor API 之前展開選擇器。這樣,將繼續使用 keyFor,直至修正了 JDK 錯誤。