【发布时间】:2017-08-18 10:41:07
【问题描述】:
我有一个使用 Derby 网络服务器连接到 Derby 数据库的应用程序,该服务器已作为 Netbeans IDE 之外的独立进程启动。
当我在 IDE 中运行我的应用程序时(我没有从“服务”选项卡启动网络服务器,因为它已经在运行)观察到以下情况:-
应用程序成功连接到服务器。
后续数据库访问失败并出现错误
Internal Exception: java.sql.SQLNonTransientConnectionException: The connection was refused because the database MyAppDB was not found. Error Code: 40000
Netbeans 中的 persistence.xml 显示 JDBC 连接的以下内容:-
jdbc:derby://localhost:1527//Users/David/Desktop/DerbyDatabases/MyAppDB
[大卫测试]
然而,Netbeans 中的 xml 源代码显示如下:-
jdbc:derby://localhost:1527/MyAppDB
我可以通过更改 persistence.xml 源(在 Netbeans 中)以显示以下 JDBC 连接来解决此问题:-
jdbc:derby://localhost:1527//Users/David/Desktop/DerbyDatabases/MyAppDB
现在一切正常,应用程序运行良好:-)
但是!!!
只要我告诉 Netbeans 执行清理和构建项目,它就会将 JDBC 连接恢复为:-
jdbc:derby://localhost:1527/MyAppDB
在运行应用程序时,它无法再访问 Db 并出现与上述相同的错误。
请注意,如果我通过“服务”选项卡打开连接从 Netbeans 运行网络服务器,则不会出现这些问题。这对我没有好处,因为我想部署应用程序。
你们中有人知道这里发生了什么吗? - 我确定这是我的一个简单错误。
谢谢。
【问题讨论】: