软件开发JDBCSQL Server

IBM WebSphere Message Broker 7.0中sqlserver 的jdbc错误

请教 通过命令配置sql server的jdbc 的怎么配置的,为什么配置出来不对啊
mqsicreateconfigurableservice MB7BROKER -c JDBCProviders -o sqlserver -n
connectionUrlFormat,connectionUrlFormatAttr1,description,jarsURL,portNumber,serverName,type4DatasourceClassName,type4DriverClassName -v
"jdbc:sqlserver://127.0.0.1:1433; DatabaseName=jbq_sbk,jbq_sbk,Simplified Database Routing Sample
Database,D:sqljdbcsqljdbc4.jar,1433,127.0.0.1,com.microsoft.sqlserver.jdbc.SQLServerXADataSource,com.microsoft.sqlserver.jdbc.SQLServerDriver"

mqsideleteconfigurableservice MB7BROKER -c JDBCProviders -o sqlserver

mqsireload MB7BROKER -e default

java节点代码:
Connection conn=getJDBCType4Connection("sqlserver",JDBC_TransactionType.MB_TRANSACTION_AUTO);
//Connection conn=getJDBCType4Connection("TTT",JDBC_TransactionType.MB_TRANSACTION_AUTO);
Statement statement;

statement = conn.createStatement();
Statement statement2 = conn.createStatement();
ResultSet resultSet = statement.executeQuery("select w from tb_test");
int r=0;
System.out.println("输出结果集:====================================开始");
while (resultSet.next()) {
r++;
statement2.executeUpdate("insert into tb_to_test(w) values('"+resultSet.getString("w")+"')");
}
System.out.println("输出结果集:====================================结束");
} catch (Exception e) {
e.printStackTrace();
String s = e.getMessage();

File f = new File("c:1.txt");
try {
FileOutputStream fos = new FileOutputStream(f);
fos.write(s.getBytes());
fos.flush();
fos.close();
} catch (IOException e1) {
// TODO 自动生成 catch 块
e1.printStackTrace();
}

}

报错为:
 
[BIPmsgs:6231]BIP6231E: 节点中发生错误:Broker 'MB7BROKER'; Execution Group 'default'; Message Flow 'test_sqlserver'; Node 'Java 计算'; Node Type 'Test_sqlserver_Java 异常详细信息: message: com.microsoft.sqlserver.jdbc.SQLServerConnectionPoolDataSource stack trace: [java.net.URLClassLoader.findClass(URLClassLoader.java:434)
com.ibm.broker.classloading.JavaResourceClassLoader.findClass(JavaResourceClassLoader.java:146)
com.ibm.broker.classloading.SharedClassLoader.findClass(SharedClassLoader.java:162)
java.lang.ClassLoader.loadClass(ClassLoader.java:660)
java.lang.ClassLoader.loadClass(ClassLoader.java:626)
com.ibm.broker.jdbctype4.jdbcdbasemgr.JDBCType4Connection.createXAConnection(JDBCType4Connection.java:180)
com.ibm.broker.jdbctype4.jdbcdbasemgr.JDBCType4Connection.getT4NodeConnection(JDBCType4Connection.java:1137)
com.ibm.broker.jdbctype4.localtrxn.JDBCType4SinglePhaseTrxnHandler.getConnection(JDBCType4SinglePhaseTrxnHandler.java:246)
com.ibm.broker.jdbctype4.connfact.JDBCType4ConnectionFactory.getConnection(JDBCType4ConnectionFactory.java:155)
sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
java.lang.reflect.Method.invoke(Method.java:611)
com.ibm.broker.plugin.MbNode.getJDBCType4Connection(MbNode.java:1551)
sqlserver.com.Test_sqlserver_Java.evaluate(Test_sqlserver_Java.java:26)
com.ibm.broker.javacompute.MbRuntimeJavaComputeNode.evaluate(MbRuntimeJavaComputeNode.java:232)
com.ibm.broker.plugin.MbNode.evaluate(MbNode.java:1469)] 
节点生成错误消息。 
如果您无法确定问题的起因,请与 IBM 支持中心联系。 : Problem encountered obtaining JDBC connection


请教是因为什么啊?

附件:

附件图标sqljdbc_4.0.2206.100_chs.tar.gz (2.19 MB)

附件图标sqljdbc_4.0.2206.100_chs.exe.zip (4.03 MB)

参与18

17同行回答

bisubisu售后技术支持SYNNEX
http://technet.microsoft.com/en-us/library/ms378428(v=sql.110).aspx我查询了一下微软的网站,你尝试以下写法,如果不行,你再参考一下微软官方的其他写法:mqsicreateconfigurableservice MB7BROKER -c JDBCProviders -o sqlserver -n connectionUrlFormat,connectionUrlFor...显示全部
http://technet.microsoft.com/en-us/library/ms378428(v=sql.110).aspx

我查询了一下微软的网站,你尝试以下写法,如果不行,你再参考一下微软官方的其他写法:
mqsicreateconfigurableservice MB7BROKER -c JDBCProviders -o sqlserver -n connectionUrlFormat,connectionUrlFormatAttr1,description,jarsURL,portNumber,serverName,type4DatasourceClassName,type4DriverClassName -v "jdbc:sqlserver://127.0.0.1:1433;user=YOURNAME;password=YOURPASSWORD;DatabaseName=jbq_sbk,jbq_sbk,Simplified Database Routing Sample Database,D:\sqljdbc\sqljdbc_4.0\chs,1433,127.0.0.1,com.microsoft.sqlserver.jdbc.SQLServerXADataSource,com.microsoft.sqlserver.jdbc.SQLServerDriver"收起
IT咨询服务 · 2014-10-09
浏览2107
bisubisu售后技术支持SYNNEX
非常抱歉,我只接触过ORACLE的相关配置,SQL SERVER没接触过。我再查查资料,再回复你显示全部
非常抱歉,我只接触过ORACLE的相关配置,SQL SERVER没接触过。

我再查查资料,再回复你收起
IT咨询服务 · 2014-10-09
浏览2021
hehlhehl软件开发工程师elane
回复 15# bisu 换了顺序错误也一样,应该是有什么地方来添加UserDefined  类型的属性,才可以加上user/password。请问你的jdbc配置页面是怎么样的,能不能做一个成功的示例看下呢。 oracle的jdbc是没问题的,因为连接字符串里就有user/password。但是sqlserver连接字...显示全部
回复 15# bisu

换了顺序错误也一样,应该是有什么地方来添加UserDefined  类型的属性,才可以加上user/password。请问你的jdbc配置页面是怎么样的,能不能做一个成功的示例看下呢。 oracle的jdbc是没问题的,因为连接字符串里就有user/password。但是sqlserver连接字符串里只有数据库名,没有user,所以一直报用户''登录失败,想来根本就没有读到mqsisetdbparms MB7BROKER -n jdbc::mySecurityIdentity -u mysa-p mysa里的用户名密码。请教啊,这个问题查了很多资料,也做很多测试,一直没搞定啊收起
软件开发 · 2014-10-09
浏览2108
bisubisu售后技术支持SYNNEX
你调整一下配置顺序:--配置命令--创建配置服务(Oracle JDBC)mqsicreateconfigurableservice MB7BROKER -c JDBCProviders -o sqlserver -n connectionUrlFormat,connectionUrlFormatAttr1,description,jarsURL,portNumber,serverName,type4DatasourceClassName,type4Drive...显示全部
你调整一下配置顺序:

--配置命令
--创建配置服务(Oracle JDBC)
mqsicreateconfigurableservice MB7BROKER -c JDBCProviders -o sqlserver -n connectionUrlFormat,connectionUrlFormatAttr1,description,jarsURL,portNumber,serverName,type4DatasourceClassName,type4DriverClassName -v "jdbc:sqlserver://127.0.0.1:1433; DatabaseName=jbq_sbk,jbq_sbk,Simplified Database Routing Sample Database,D:\sqljdbc\sqljdbc_4.0\chs,1433,127.0.0.1,com.microsoft.sqlserver.jdbc.SQLServerXADataSource,com.microsoft.sqlserver.jdbc.SQLServerDriver"
--设置安全标识(数据库连接用户及密码)
mqsisetdbparms MB7BROKER -n jdbc::sqlmySecurityIdentity -u mySa -p mySa
--将安全标识挂接到配置服务
mqsichangeproperties MB7BROKER -c JDBCProviders -o sqlserver -n securityIdentity -v sqlmySecurityIdentity
--重启代理
mqsireload MB7BROKER -e default收起
IT咨询服务 · 2014-10-09
浏览2032
hehlhehl软件开发工程师elane
回复 13# bisu 这个user,password无效,报错为: C:Program FilesIBMMQSI7.0bin>mqsichangeproperties MB7BROKER -c JDBCProvider s -o sqlserver -n user -v sa BIP8984W: 未找到可配置服务的对象名“JDBCProviders : sqlserver : user”。 用户试图删除或修改不存在或对于 Use...显示全部
回复 13# bisu

这个user,password无效,报错为:
C:Program FilesIBMMQSI7.0bin>mqsichangeproperties MB7BROKER -c JDBCProvider
s -o sqlserver -n user -v sa
BIP8984W: 未找到可配置服务的对象名“JDBCProviders : sqlserver : user”。
用户试图删除或修改不存在或对于 UserDefined 类型无效的可配置服务对象名称。
使用 mqsireportproperties 命令检查现有可配置服务的名称。然后修改外部资源的对象名
并再次发出命令。
BIP2087E: 代理 MB7BROKER 无法处理内部配置消息。
未能成功处理整个内部配置消息。
使用该消息后面的消息来确定故障原因。如果查看这些消息后还是无法解决问题,请与 IBM
支持中心联系。启用服务跟踪可能有助于确定故障起因。

BIP8036E: 接收到否定响应。
此命令将内部配置消息发送到代理,接收到的响应表明内部配置消息失败。
检查 WebSphere MQ 传送是否可用。 检查系统日志以获取进一步信息。

另外,我也试了很多方式,都不行,会不会是版本问题,添加不了UserDefined 类型的属性呢。(不是驱动问题)
你能否提供一个完整的例子,完整的配置命令,或者截图说明下呢
我的代码及错误为:
--配置命令
--创建配置服务(Oracle JDBC)
mqsicreateconfigurableservice MB7BROKER -c JDBCProviders -o sqlserver -n connectionUrlFormat,connectionUrlFormatAttr1,description,jarsURL,portNumber,serverName,type4DatasourceClassName,type4DriverClassName -v "jdbc:sqlserver://127.0.0.1:1433; DatabaseName=jbq_sbk,jbq_sbk,Simplified Database Routing Sample Database,D:sqljdbcsqljdbc_4.0chs,1433,127.0.0.1,com.microsoft.sqlserver.jdbc.SQLServerXADataSource,com.microsoft.sqlserver.jdbc.SQLServerDriver" 
--将安全标识挂接到配置服务
mqsichangeproperties MB7BROKER -c JDBCProviders -o sqlserver -n securityIdentity -v sqlmySecurityIdentity
--设置安全标识(数据库连接用户及密码)
mqsisetdbparms MB7BROKER -n jdbc::sqlmySecurityIdentity -u mySa -p mySa
--重启代理
mqsireload MB7BROKER -e default

--javaCompute节点代码
Connection conn=getJDBCType4Connection("sqlserver",JDBC_TransactionType.MB_TRANSACTION_AUTO);

--报错信息
[BIPmsgs:6233]BIP6233E: 节点中发生错误:Broker 'MB7BROKER'; Execution Group 'default'; Message Flow 'myMf'; Node 'myMsfService.Extract'; Node Type 'MyMfJava 建立到给定数据库 URL 的连接时发生问题:jdbc:sqlserver://127.0.0.1:1433; DatabaseName=master 异常详细信息: error message: 用户 '' 登录失败。 ClientConnectionId:774f3530-e872-492f-a27f-1d8cf353c634, SQLState value: S0001, vendor's error code: 18456, stack trace: [com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216)
com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:254)
com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:84)
com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2908)
com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2234)
com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41)
com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:2220)
com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696)
com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715)
com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1326)
com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991)
com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827)
com.microsoft.sqlserver.jdbc.SQLServerDataSource.getConnectionInternal(SQLServerDataSource.java:621)
com.microsoft.sqlserver.jdbc.SQLServerPooledConnection.createNewConnection(SQLServerPooledConnection.java:60)
com.microsoft.sqlserver.jdbc.SQLServerPooledConnection.(SQLServerPooledConnection.java:42)
com.microsoft.sqlserver.jdbc.SQLServerXAConnection.(SQLServerXAConnection.java:30)
com.microsoft.sqlserver.jdbc.SQLServerXADataSource.getXAConnection(SQLServerXADataSource.java:51)
com.microsoft.sqlserver.jdbc.SQLServerXADataSource.getXAConnection(SQLServerXADataSource.java:84)
com.ibm.broker.jdbctype4.jdbcdbasemgr.JDBCType4Connection.createXAConnection(JDBCType4Connection.java:238)
com.ibm.broker.jdbctype4.jdbcdbasemgr.JDBCType4Connection.getT4NodeConnection(JDBCType4Connection.java:1137)
com.ibm.broker.jdbctype4.localtrxn.JDBCType4SinglePhaseTrxnHandler.getConnection(JDBCType4SinglePhaseTrxnHandler.java:246)
com.ibm.broker.jdbctype4.connfact.JDBCType4ConnectionFactory.getConnection(JDBCType4ConnectionFactory.java:155)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
java.lang.reflect.Method.invoke(Method.java:611)
com.ibm.broker.plugin.MbNode.getJDBCType4Connection(MbNode.java:1551)
myMfpJava.com.MyMfJava.evaluate(MyMfJava.java:37)
com.ibm.broker.javacompute.MbRuntimeJavaComputeNode.evaluate(MbRuntimeJavaComputeNode.java:232)
com.ibm.broker.plugin.MbNode.evaluate(MbNode.java:1469)
com.ibm.broker.plugin.MbRoute._propagate(Native Method)
com.ibm.broker.plugin.MbRoute.propagate(MbRoute.java:87)
com.ibm.broker.soap.SoapExtractNode.routeToOperationLabelNode(SoapExtractNode.java:386)
com.ibm.broker.soap.SoapExtractNode.evaluate(SoapExtractNode.java:176)
com.ibm.broker.plugin.MbNode.evaluate(MbNode.java:1469)] 

节点无法建立到给定数据库 URL 的连接。 

请与 WebSphere Message Broker 管理员联系。 : Problem encountered obtaining JDBC connection
收起
软件开发 · 2014-10-08
浏览2499
bisubisu售后技术支持SYNNEX
mqsichangeproperties 命令的 v参数,可以带user、password参数显示全部
mqsichangeproperties 命令的 v参数,可以带user、password参数收起
IT咨询服务 · 2014-09-30
浏览1988
hehlhehl软件开发工程师elane
回复 11# bisu 我的属性页面,不能点新建呢(IBM WebSphere MQ 资源管理器,版本:7.0)显示全部
回复 11# bisu
我的属性页面,不能点新建呢(IBM WebSphere MQ 资源管理器,版本:7.0)

QQ截图20140930135049.jpg

收起
软件开发 · 2014-09-30
浏览2084
bisubisu售后技术支持SYNNEX
数据源页面 ==>点击你配置的数据源 在数据源属性页面中,选择“定制属性”,在“定制属性”页面中选择“新建”显示全部
数据源页面 ==>点击你配置的数据源
在数据源属性页面中,选择“定制属性”,在“定制属性”页面中选择“新建”收起
IT咨询服务 · 2014-09-30
浏览2304
hehlhehl软件开发工程师elane
回复 9# bisu     我自己新建过用户的,也启用SQL SERVER混合身份验证方式,还是不行。错误主要是说 用户""登陆失败,这里的用户是个空的,根本就没有读得到这个用户。在另一个帖子里有看到websphere 8.5配置jdbc连接sql server 2008(http://www.webspherechina.net/c...显示全部
回复 9# bisu


    我自己新建过用户的,也启用SQL SERVER混合身份验证方式,还是不行。
错误主要是说 用户""登陆失败,这里的用户是个空的,根本就没有读得到这个用户。

在另一个帖子里有看到websphere 8.5配置jdbc连接sql server 2008(http://www.webspherechina.net/cl ... =0&page=1#pid308933):
“这里使用微软的的jdbc 4.0驱动.

1. 下载jdbc 4.0包、解压
2. 管理控制台添加jdbc提供源.连接池方式.
a.设置sqljdbc4.jar路径
b.复制auth\x86\sqljdbc_auth.dll到websphere\appserver\java\bin目录
3.添加jdbc数据源
4.为数据源添加自定义属性user与password两项

经上设置,测试连接成功。”
这里面第4点是添加自定义属性user与password两项,但是我用的7.0版本,添加不了这个自定义属性耶,请问怎么加啊?收起
软件开发 · 2014-09-29
浏览2354
bisubisu售后技术支持SYNNEX
你自己创建个新的sql server用户显示全部
你自己创建个新的sql server用户收起
IT咨询服务 · 2014-09-10
浏览2270

提问者

hehl
软件开发工程师elane

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2014-08-28
  • 关注会员:1 人
  • 问题浏览:13626
  • 最近回答:2014-10-09
  • X社区推广