2015-03-13 19 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动作的结果......这不仅避免了错误的可能性,同时也消除了用户生活中令人讨厌的安全提示。