我正在尝试在Postgres 9.2 db和Glassfish 4服务器上使用Netbeans 8开发EJB应用程序。
在glassfish管理面板中创建连接池和JDBC资源后,我无法使用数据源添加实体。 Netbeans仍然给我一个错误:
缺少数据源的驱动程序类的名称
我已经尝试过向项目中添加库了。我复制了postgresql-9.2-1002.jdbc4.jar和postgresql-9.2-1002.jdbc3.jar文件
C:\Program Files\glassfish-4.0\glassfish\domains\domain1\lib folder
。
屏幕截图:http://imageshack.com/a/img843/6884/w3ko.png
如果我使用之前创建的连接(在NB服务/数据库中)创建实体,它可以工作,但任何查询后的结果集都是空的。有什么想法吗?
这是我创建的连接池:http://imageshack.com/a/img838/8286/bkw8.png
这是我的persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="Esempio-ejbPU" transaction-type="JTA">
<jta-data-source>try_</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="javax.persistence.schema-generation.database.action" value="create"/>
</properties>
</persistence-unit>
</persistence>
答案 0 :(得分:9)
道歉直截了当,但我相信在这种特殊情况下,你都错了。应该做的是:
通过单击按钮添加属性上的每次添加以下属性(选择池名称并进行编辑后):
设置 JDBC资源[jdbc / your_pool_name]
保存所有内容(该按钮通常位于Internet浏览器的右上角)不要忘记JDBC资源始终连接到连接池。因此,请确保适合您。它们,JDBC连接池和JDBC资源通常位于服务器管理面板左窗格菜单中的JDBC下。 回到你正在做的事情,然后再试一次。另请注意,这适用于MySQL数据库管理系统。如果使用其他DBMS,您可能需要更改驱动程序类以及URL。 您可以在YouTube上找到更多相关信息[http://www.youtube.com/]。
我相信这就是答案。
答案 1 :(得分:2)
对我来说,问题是我向Glassfish添加了一个新的JDBC驱动程序JAR文件,但我没有将它添加到NetBeans。
第一步是将JAR文件复制到NetBean的EXT文件夹。对我来说,该文件夹是: “C:\ Program Files \ NetBeans 8.0.1 \ ide \ modules \ ext”
接下来,我们需要添加JDBC驱动程序,如下所述:
当我尝试创建“来自数据库的实体类”时,我在选择连接时仍遇到问题。在尝试了各种对我有用的事情之后:
答案 2 :(得分:1)
我这样解决了这个问题:
答案 3 :(得分:1)
Steps in Netbeans:
Go To-->Service Tab-->Right Click on Drivers-->New Driver--> Add your driver jar file here
Netbeans自动从JAR文件填充驱动程序详细信息。选中 Driver Class 值,该值将在Glassfish服务器连接池中使用。
Steps in Glassfish:
转到Glassfish管理面板
在JDBC连接池中,添加属性driverClass并粘贴在上一步中通过Netbeans Drivers选项卡注册的 Driver Class 的值。
答案 4 :(得分:0)
我遇到了同样的问题,所以:
首先,这不是Jboss或Glassfish的问题。它是Netbeans或Eclipse。
要解决此问题,请执行以下操作:
答案 5 :(得分:0)
将驱动程序jar文件添加到&#34; {$ installation_folder} \ NetBeans 8.0.1 \ ide \ modules \ ext&#34;为我解决了这个问题
答案 6 :(得分:0)
在我的情况下,我必须转到glassfish管理面板并将Derby连接池的驱动程序类(在JDBC资源下)更改为“ org.apache.derby.jdbc.ClientDataSource”
答案 7 :(得分:-1)
解决:这是一个连接池问题。在glassfish管理面板中创建一个驱动程序我没有遇到任何问题。
答案 8 :(得分:-1)
在连接池属性中,在URL属性中不要忘记“localhost”