使用jtds 1.2.5稳定连接时出现此错误:“找不到消息属性prop.sokeepalive的消息资源”
起初,我使用的是1.2.2版本,但有此错误消息。 “获取jdbc连接时出错:USE数据库语句失败,因为旧客户端驱动程序无法识别数据库排序规则Serbian_Latin_100_CI_AS。请尝试升级客户端操作系统或将服务更新应用于数据库客户端软件,或使用其他排序规则。请参阅SQL Server。在线图书,以获取有关更改归类的更多信息。”
作为解决方案,我尝试使用1.2.5版本来获取开头提到的错误。
我在jtds文档中寻找提示,但无法解决问题。
有任何想法吗?
提前致谢。
最佳答案
尝试使用-Duser.language=en -Duser.region=US -Duser.country=US
选项运行客户端JVM。
这将切换到任何地方都支持的美国区域设置。
也许这种简单的解决方案在您的情况下是可以接受的。
至少,这可以表明问题是否出在我看来jtds包中当前语言环境缺少i18n消息资源包。
更新资料
尝试仅复制jtds.jar/net/sourceforge/jtds/jdbc/Messages.properties
并将其添加到classpath或作为net/sourceforge/jtds/jdbc/Messages_sr_RS.properties
添加到jtds.jar中。
一些解释性链接:
Message bundle choosing process
net.sourceforge.jtds.jdbc.Messages source
http://www.localeplanet.com/java/sr-RS/
更新2
无论如何,消息束选择过程应切换到默认提供的资源。
我的第二个猜测是jtds包的Messages.properties被一些同名的不相关文件遮盖了。
检查您的类路径。
您应该能够调试net.sourceforge.jtds.jdbc.Messages
以便确定正在发生的事情。
关于java - 创建JTD连接时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17965740/