如何从tomcat';java中jdbc连接的s context.xml?
我们在struts2中开发了一个应用程序。使用的应用服务器是Weblogic。我们正在使用Sybase ASE数据库。我们使用普通JDBC连接到数据库 最近,我们在weblogic server中打开了加密。所以我们增加了3个属性如何从tomcat';java中jdbc连接的s context.xml?,java,tomcat,jdbc,sybase,bouncycastle,Java,Tomcat,Jdbc,Sybase,Bouncycastle,我们在struts2中开发了一个应用程序。使用的应用服务器是Weblogic。我们正在使用Sybase ASE数据库。我们使用普通JDBC连接到数据库 最近,我们在weblogic server中打开了加密。所以我们增加了3个属性 key="ENCRYPT_PASSWORD" value="true" key="JCE_PROVIDER_CLASS" value="org.bouncycastle.jce.provider.BouncyCastleProvider" key="RETRY_W
key="ENCRYPT_PASSWORD" value="true"
key="JCE_PROVIDER_CLASS" value="org.bouncycastle.jce.provider.BouncyCastleProvider"
key="RETRY_WITH_NO_ENCRYPTION" value="true"
weblogic服务器用于PROD环境。在weblogic中,它运行良好。但是我们使用Tomcat7.0进行本地开发。在tomcat中,我们将context.xml与以下标记一起使用
<Resource name="CONN.DS" auth="Container"
type="javax.sql.DataSource"
username="abc"
password="dfg"
driverClassName="com.sybase.jdbc4.jdbc.SybDriver"
url="jdbc:sybase:Tds:xyz:1234/DbName"
maxActive="10" maxIdle="4"/>
实际上,在weblogic中,通过添加上述3个属性,它可以正常工作。但是在tomcat中,我们使用context.xml。那么,在eclipse和tomcat中建立连接时,如何通过context.xml传递上述三个属性呢
目前,在第“ds.getConnection()
”行,它给出了错误信息:
'An exception occurred: org.apache.tomcat.dbcp.dbcp.SQLNestedException'
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
请告知。使用以下连接字符串:
jdbc:sybase:Tds:xyz:1234/DbName?ENCRYPT_PASSWORD=true&JCE_PROVIDER_CLASS=org.bouncycastle.jce.provider.BouncyCastleProvider&RETRY_WITH_NO_ENCRYPTION=true
此外,请检查这不起作用,因为它会出现以下错误:由于语法错误或其他异常,无法加载上下文的上下文配置。对实体“JCE_PROVIDER_CLASS”的引用必须以“;”结尾定界符。我还将&替换为“;”但仍然不起作用。当我用“;”替换“&”时,给出错误:无法创建PoolableConnectionFactory(JZ011:解析连接属性ENCRYPT_PASSWORD时遇到格式异常)。如果此配置字符串位于XML文件中,则必须将
&
替换为&代码>,因此它将成为jdbc:sybase:Tds:xyz:1234/DbName?ENCRYPT_PASSWORD=true&;JCE_PROVIDER_CLASS=org.bouncycastle.JCE.PROVIDER.BouncyCastleProvider&;使用\u NO\u ENCRYPTION=true重试\u这一答案非常有用
jdbc:sybase:Tds:xyz:1234/DbName?ENCRYPT_PASSWORD=true&JCE_PROVIDER_CLASS=org.bouncycastle.jce.provider.BouncyCastleProvider&RETRY_WITH_NO_ENCRYPTION=true