暂无图片
我想在一个小程序或应用程序中使用 GBase JDBC,但是得到了异常
我来答
分享
郑小雯
2023-11-07
我想在一个小程序或应用程序中使用 GBase JDBC,但是得到了异常

SQLException: Cannot connect to GBase server on host:5258. 

 Is there a GBase server running on the machine/port you 

 are trying to connect to?

 (java.security.AccessControlException) 

SQLState: 08S01

 VendorError: 0 

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
三金先生

或许是因为用户正在运行 Applet,用户的 GBase server 安装时设置了 “--skip-networking”选项,或者是由于 GBase server 运行在防火墙之后。 Applet 仅能使网络连接返回运行 Web 服务器的机器,该 Web 服务器提供了 用于 Applet 的.class 文件。这意味着,要想使其工作,GBase 必须运行在相同 的机器上(或必须使某类端口重定向)。这也意味着,你无法通过你的本地文件 系统来测试 Java 程序,你必须将它们放在 Web 服务器上。 由于 Java 不支持 Unix Domain 套接字,GBase JDBC 只能使用 TCP/IP 与 GBase 通信。如果 GBase 启动时带有“--skip-networking”标志,或有防火墙, 与 GBase 的 TCP/IP 通信可能会受到影响。 如果 GBase 启动时设置了“--skip-networking”选项,用户可以在文件 /etc/gs.cnf 中把它注释掉。如果用户的 GBase server 在防火墙后,那么用户 需要修改防火墙配置,使得允许运行用户的 Java 代码的主机在 GBase 侦听的端口 (缺省为 5258)上给 GBase server 进行连接。

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏