2014-11-21 79 views
-2

试图连接到的Postgres数据库,上下文参数情况如下:弹簧连接在Postgres数据库

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" > 
<property name="driverClassName" value="org.postgresql.Driver"/> 
<property name="url" value="jdbc:postgresql://localhost:5432/****" /> 
<property name="username" value="****" /> 
<property name="password" value="****" /> 
</bean> 

上下文装载获取例外:

重度:上下文初始化失败 org.springframework。 beans.factory.BeanCreationException:错误 在ServletContext中定义了名称为'dataSource'的bean 资源[/WEB-INF/ApplicationContext.xml]:错误设置属性 值;嵌套的异常是 org.springframework.beans.PropertyBatchUpdateException;嵌套0​​PropertyAccessExceptions(1):PropertyAccessException 1: org.springframework.beans.MethodInvocationException:属性 'driverClassName'引发异常;嵌套的例外是 java.lang.IllegalStateException:无法加载JDBC驱动程序类 [org.postgresql.Driver]

我在该项目中的LIB Postgres的驱动程序,因为我可以检查类文件组织.postgresql.Driver。 Class.forName也给驾驶员级别带来了积极的结果。 我试过所有版本的postgres驱动程序,但仍然没有经过。

+0

你使用的是maven/gradle吗?你能发布你的pom/build文件吗? – Jigish 2014-11-22 01:37:25

回答

-1

我能够解决这个问题,当我将Postgres DB Jar添加到WEBINF/Lib中时,bean已经被创建,有些如何从JavaResource/Lib中拾取jar,就像我之前这样做的。

这个问题是一个特殊的情况,它在大多数地方都没有被回答,只是检查类路径不会是这个查询的正确答案。

0

确保将lib正确复制到打包并且该目录位于类路径中。

+0

这就是所有的检查,我有它与其他库,我使用Spring lib和commons lib与此一起,目录在classpath中。检查这是我使用Class.forName(“org.postgresql.Driver”),它证明了驱动程序在类路径中存在。任何其他线索,或检查我可以做什么? – 2014-11-21 22:33:32