我使用CRUD
+ EJB
使用JPA
服务器制作了JBoss
个应用程序,效果非常好。但我无法run JPQL
从持久性文件中查询netbeans。请在下面找到配置。
JBoss 7数据源:
<datasource jta="true" jndi-name="java:/jboss/darshan" pool-name="com.discusit.darshan_darshan-ejb_ejb_1.0PU" enabled="true" use-ccm="false">
<connection-url>jdbc:postgresql://localhost:5432/darshan</connection-url>
<driver-class>org.postgresql.Driver</driver-class>
<driver>postgresql</driver>
<security>
<user-name>darshan</user-name>
<password>darshan</password>
</security>
<validation>
<validate-on-match>false</validate-on-match>
<background-validation>false</background-validation>
</validation>
<statement>
<share-prepared-statements>false</share-prepared-statements>
</statement>
</datasource>
persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="com.discusit.darshan_darshan-ejb_ejb_1.0PU" transaction-type="JTA">
<jta-data-source>java:/jboss/darshan</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties/>
</persistence-unit>
</persistence>
请注意,我可以自动完成我的桌子,但是当我跑步时,我发现以下错误。
java.lang.Exception:您需要添加持久性提供程序库 要么投影类路径,要么在Netbeans中注册为Ant库
或
java.lang.Exception:您需要指定数据库连接或 persistence.xml中的数据源。
如果您需要任何其他信息,请与我们联系。
答案 0 :(得分:0)
确保服务选项卡下的服务器中有valid instance of your application server
(您的案例JBoss)。
Properties -> Run : Select your server (JBoss)
。
确保您在“服务”选项卡下的“数据库”中拥有valid Database connection
架构(确保它具有与应用程序服务器中的数据源配置中相同的凭据)。
确保您的persistence.xml中已有added your entity classes
。
下载您的JPA提供程序库,并从
将其添加到您的项目中 Properties -> Libraries : Add Library
。
如果你使用maven:
只需添加JPA provider
(确保您在运行JPQL期间未包含此标记 "<scope>provided</scope>"
,但在编译之前将其添加,因为您的应用程序服务器将提供它。)
希望它能奏效。