0

在使用 spring 通过 JNDI 连接到 Advantage Databse 时,我遇到了一些问题。

我尝试使用以下代码连接 Advantage 数据库。

<bean id="peopleSoftDataSource" destroy-method="close" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    < property name="driverClassName" value="com.extendedsystems.jdbc.advantage.ADSDriver"/>
    < property name="url" value="jdbc:extendedsystems:advantage://localhost:6262/test/test.add;User=testuser;Password=testuser"/>
< /bean>

好像是通过 JNDI 连接一样,登录失败时出现异常。我不知道为什么它不能通过 JNDI

applicationcontext.xml configuration

< bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"><br/>
    < property name="jndiName" value="peopleSoftDataSource" /><br/>
    < property name="resourceRef" value="true" /><br/>
< /bean>

server.xml configuration

< Resource driverClassName="com.extendedsystems.jdbc.advantage.ADSDriver" maxActive="4" maxIdle="2" maxWait="5000" name="jdbc/PeopleSoft"
removeAbandoned="true" type="javax.sql.DataSource" url="jdbc:extendedsystems:advantage://localhost:6262/test/test.add;User=testuser;Password=testuser;" />

请有人帮助解决上述问题。

4

2 回答 2

0

我找到了解决方案,现在工作正常。

我们必须提供如下路径

< 资源驱动程序ClassName="com.extendedsystems.jdbc.advantage.ADSDriver" maxActive="4" maxIdle="2" maxWait="5000" name="jdbc/PeopleSoft" removeAbandoned="true" type="javax.sql.DataSource " url="jdbc:extendedsystems:advantage://localhost:6262;catalog=C:/ProfitMaker/ASIPlays/asipm.add;user=asiadsuser;password=asiadsuser"/>

而不是下面

< 资源驱动程序ClassName="com.extendedsystems.jdbc.advantage.ADSDriver" maxActive="4" maxIdle="2" maxWait="5000" name="jdbc/PeopleSoft" removeAbandoned="true" type="javax.sql.DataSource " url="jdbc:extendedsystems:advantage://localhost:6262/test/test.add;User=testuser;Password=testuser;" />

谢谢,里希

于 2013-10-23T12:33:21.740 回答
0

我不熟悉使用 JNDI,但是,我注意到两个 xml 配置文件之间的数据源名称存在差异。一个有“peopleSoftDataSource”,另一个只有“peopleSoft”。这可能是问题吗?

于 2013-10-21T15:27:21.910 回答