2015-03-13 20 views
0

我已經看到與使用多個數據庫(所有在同一臺服務器上),一個JNLP Java桌面應用程序一個奇怪的問題,它會在打開數據庫連接(Microsoft SQL Server)時拋出這些java.net.SocketPermission「」server.domain.com:1433「錯誤,但只有很少,並且只能在一個特定的代碼段中連接到一個特定的數據庫(以及我的意思是「數據庫」,而不是一個特定的「表」)。從來沒有發生過與連接到該服務器上的其他任何數據庫的連接(它有大約二十個數據庫和數千個表)。間歇java.net.SocketPermission」‘server.domain.com:1433’錯誤?

我從來沒有真正能夠抓住它自己的計算機上,但我們(不特定的用戶,它改變)打一次大約每3-4周的用戶。

我真的不知道該找這個東西。盡我所能,我已經確認了權限和代碼。我應該尋找另一類問題嗎?

回答

0

如果數據庫連接在被調用的JavaScript操作的結果的方法開始,這將迫使安全提示。然後,如果用戶「取消」提示,連接將被拒絕,導致此錯誤。

解決方案是強制初始數據庫連接在覈心Java應用程序啓動時出現,而不是「根據需要」,因爲有時第一個需要是JavaScript動作的結果......這不僅避免了錯誤的可能性,同時也消除了用戶生活中令人討厭的安全提示。