该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-03-04
leadyu 写道 如果是远程数据源,你就不能配数据库驱动作为driver-class参数值。
这个文档里有说明的呀,你可以配置应用中获取连接的类作为这个参数值,比如我们的项目配置:com.telecom.dao.ConnectionManager 项目内通过com.telecom.dao.ConnectionManager.getConnection()从jndi获取连接。 没有这种类啊,getconnection()这个方法如果不是很老的程序或自己封装的东西,已经很不常见了,spring都是用datasource啊,直接配datasource或者其子类没什么反应啊, |
|
返回顶楼 | |
发表时间:2008-03-04
我的意思说,可以配置类似的类,jwebap会对你配置的类中所有返回connection的方法进行监控。
所以,你可以尝试,配置spring的datasource 同时要保证用的是jwebap_0.5.8_all_3.zip,才能对父类进行注入 |
|
返回顶楼 | |
发表时间:2008-03-04
spring的datasource实现都是建议用在测试环境下的,而且spring拿到的都是容器的javax.sql.DataSource的实现,比如我在tomcat下拿到的就是org.apache.dbcp.BasicDataSource,在was下可能就是was的datasource的实现,有没有在这种环境下成功的例子,我觉得我的环境应该是比较很典型的情况.
|
|
返回顶楼 | |
发表时间:2008-03-04
我出这个问题
Caused by: java.lang.ClassCastException: org.jwebap.plugin.jdbc.TraceDetectConnection cannot be cast to oracle.jdbc.driver.OracleConnection at oracle.jdbc.driver.OracleDriver.connect_$proxy(OracleDriver.java:345) ... 54 more |
|
返回顶楼 | |
发表时间:2008-03-04
heaven 写道 spring的datasource实现都是建议用在测试环境下的,而且spring拿到的都是容器的javax.sql.DataSource的实现,比如我在tomcat下拿到的就是org.apache.dbcp.BasicDataSource,在was下可能就是was的datasource的实现,有没有在这种环境下成功的例子,我觉得我的环境应该是比较很典型的情况.
你这样说,我有点明白了,不管你用什么datasource实现,容器总是把datasource发布在命名服务里面的吧。 你的应用里面总有代码封装了,从jndi取datasource的代码,最终返回connection的类。 |
|
返回顶楼 | |
发表时间:2008-03-04
zbird 写道 我出这个问题
Caused by: java.lang.ClassCastException: org.jwebap.plugin.jdbc.TraceDetectConnection cannot be cast to oracle.jdbc.driver.OracleConnection at oracle.jdbc.driver.OracleDriver.connect_$proxy(OracleDriver.java:345) ... 54 more 这个问题,我会尽快检查,可能是由于oracle驱动,内部有私有方法也返回Connection,而connect()方法内部去cast这个Connection(已经被jwebap代理过了),所以cast失败。 |
|
返回顶楼 | |
发表时间:2008-03-04
leadyu 写道 heaven 写道 spring的datasource实现都是建议用在测试环境下的,而且spring拿到的都是容器的javax.sql.DataSource的实现,比如我在tomcat下拿到的就是org.apache.dbcp.BasicDataSource,在was下可能就是was的datasource的实现,有没有在这种环境下成功的例子,我觉得我的环境应该是比较很典型的情况.
你这样说,我有点明白了,不管你用什么datasource实现,容器总是把datasource发布在命名服务里面的吧。 你的应用里面总有代码封装了,从jndi取datasource的代码,最终返回connection的类。 我的应用里真的没有,相信很多人也没有,所有的数据库操作都是回调实现的,不直接拿连接,spring应该也是用javax.sql.DataSource#getConnection(),对了Spring是有一个封装,印象里是DataSourceUtils.getConnection(javax.sql.DataSource datasource),和你说的应该也不太一致吧? |
|
返回顶楼 | |
发表时间:2008-03-04
leadyu 写道 zbird 写道 我出这个问题
Caused by: java.lang.ClassCastException: org.jwebap.plugin.jdbc.TraceDetectConnection cannot be cast to oracle.jdbc.driver.OracleConnection at oracle.jdbc.driver.OracleDriver.connect_$proxy(OracleDriver.java:345) ... 54 more 这个问题,我会尽快检查,可能是由于oracle驱动,内部有私有方法也返回Connection,而connect()方法内部去cast这个Connection(已经被jwebap代理过了),所以cast失败。 我刚才看了oracle驱动的源码,确实如我猜测的那样,这个bug,我明天发布jwebap_0.5.8_all_4.zip,请关注。 |
|
返回顶楼 | |
发表时间:2008-03-04
我配置只监听方法和http的: 生成字节码错误:null java.lang.ClassNotFoundException: byte at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204) at org.jwebap.bytecode.asm.MethodUtil.getClass(MethodUtil.java:62) at org.jwebap.bytecode.asm.MethodUtil.parseTypeToClass(MethodUtil.java:34) at org.jwebap.bytecode.asm.MethodUtil.findMethod(MethodUtil.java:18) |
|
返回顶楼 | |
发表时间:2008-03-04
jwebap发布0.5.8的第4次修正版本——jwebap_0.5.8_all_4.zip,解决了jdbc监控,解决对驱动私有方法的错误处理bug。
请关注。 |
|
返回顶楼 | |