当我输入SQL驱动程序名称或数据库服务器脱机时,我得到以下异常,基本上是任何SQLException。
我无法确定UndeclaredThrowableException的来源。 SqlMapClientTemplate中的第194行是:
logger.debug("Obtained JDBC Connection [" + springCon + "] for iBATIS operation");
这是跟踪:
java.lang.reflect.UndeclaredThrowableException $Proxy59.toString(Unknown Source) java.lang.String.valueOf(Unknown Source) java.lang.StringBuffer.append(Unknown Source) org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemplate.java:194) org.springframework.orm.ibatis.SqlMapClientTemplate.executeWithListResult(SqlMapClientTemplate.java:249) org.springframework.orm.ibatis.SqlMapClientTemplate.queryForList(SqlMapClientTemplate.java:296) org.springframework.orm.ibatis.SqlMapClientTemplate.queryForList(SqlMapClientTemplate.java:290)
我的一些阅读指向某种类型的类加载问题?我无法弄清楚$ Proxy的引入位置?
答案 0 :(得分:1)
$Proxy59
类必须是springCon
变量的类型。它是一种JDK代理类型,可能由Spring框架引入,作为真实连接的包装器。我知道一个池连接提供程序返回通过代理抑制close()
方法的连接(因为连接是池,调用close不是客户端的任务)。
也许代理的toString()
方法的处理程序抛出一个已检查的异常,这可以通过代理机制实现,但不允许。
您是否记录了任何其他异常,可能在此之前直接记录,或者作为异常原因提及?