NetBeans无法找到org.postgresql.ds.PGSimpleDataSource驱动程序

时间:2014-10-01 17:29:54

标签: java postgresql netbeans jdbc glassfish

我安装了玻璃鱼,并设置了JDBC连接池和资源(隐藏了密码,显而易见!):

<jdbc-connection-pool datasource-classname="org.postgresql.ds.PGSimpleDataSource" res-type="javax.sql.DataSource" name="FYPPool">
  <property name="User" value="Matt"></property>
  <property name="DatabaseName" value="Matt"></property>
  <property name="LogLevel" value="0"></property>
  <property name="BinaryTransfer" value="true"></property>
  <property name="Ssl" value="false"></property>
  <property name="ServerName" value="localhost"></property>
  <property name="ProtocolVersion" value="0"></property>
  <property name="Url" value="jdbc:postgresql://localhost/?loginTimeout=0&amp;socketTimeout=0&amp;prepareThreshold=5&amp;unknownLength=2147483647&amp;tcpKeepAlive=false&amp;binaryTransfer=true&amp;disableColumnSanitiser=false"></property>
  <property name="ReceiveBufferSize" value="-1"></property>
  <property name="TcpKeepAlive" value="false"></property>
  <property name="SendBufferSize" value="-1"></property>
  <property name="SocketTimeout" value="0"></property>
  <property name="PortNumber" value="5432"></property>
  <property name="LoginTimeout" value="0"></property>
  <property name="UnknownLength" value="2147483647"></property>
  <property name="PrepareThreshold" value="5"></property>
  <property name="Password" value="******"></property>
</jdbc-connection-pool>
<jdbc-resource pool-name="FYPPool" jndi-name="jdbc/FYP"></jdbc-resource>

我可以正常ping连接池。

在NetBeans中,我在&#34; Services&#34;下添加了一个新驱动程序。标签指向我放在玻璃鱼lib中的罐子:/Applications/NetBeans/glassfish-4.0/glassfish/lib/postgresql-9.3-1102.jdbc41.jar。注意:当我选择jar时,它会填充&#34; Driver Class&#34; org.postgresql.Driver的文本框与问题标题中的文本框不同,但是如果我单击文本框旁边的“查找”按钮,则会显示“#34;搜索驱动程序类&#34;使用进度条,然后在其下面有一个信息符号,表示&#34;驱动程序类缺失&#34;。如果我再次按下“查找”按钮,则会在选择jar后使用其中的值填充它。

然后我尝试从数据库创建一些实体类,因此我选择数据源作为我的jdbc/FYP资源,从这里有两种情况: 1.如果我运行了glassfish安装,那么错误&#34;数据源的驱动程序类的名称丢失了#34;出现 2.如果它没有运行那么错误&#34;无法找到驱动程序org.postgresql.ds.PGSimpleDataSource&#34;出现。

这第二种情况看起来很有意思,因为它找不到的驱动程序名称与创建JDBC连接池时设置的驱动程序名称相同,但与获取设置时的驱动程序类不同在NetBeans中注册驱动程序。

更有趣/奇怪的是,如果我在&#34;服务&#34;下创建一个新连接。 postgresql数据库的选项卡,并使用我创建的驱动程序,它可以创建一个连接,并找到绝对正常的表。

0 个答案:

没有答案