<?xml version="1.0" encoding="gb2312"?>
<!-- generator="FeedCreator 1.7.2" -->
<rss version="2.0">
    <channel>
        <title>海波无痕</title>
        <description>海波无痕</description>
        <link></link>
        <lastBuildDate>Wed, 08 Sep 2010 11:41:17 +0800</lastBuildDate>
        <generator>FeedCreator 1.7.2</generator>
        <copyright>海波无痕</copyright>
        <item>
            <title>invoke spring proxy bean`s method</title>
            <link>http://www.ziki.cn/q/index.php/q-b_uuid-23.html</link>
            <description>&lt;font face=&quot;georgia,palatino&quot; size=&quot;2&quot; color=&quot;#000000&quot;&gt;import java.lang.reflect.InvocationTargetException;&lt;br /&gt;import java.lang.reflect.Method;&lt;br /&gt;&lt;br /&gt;import org.springframework.aop.support.AopUtils;&lt;br /&gt;import org.springframework.util.MethodInvoker;&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* &lt;br /&gt;* @author wangliang_gz@hotmail.com&lt;br /&gt;* @version 1.1.0&lt;br /&gt;*/&lt;br /&gt;public class MethodUtils {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static public Object invokeMethod(Object obj, String methodName,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Object[] args) {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (AopUtils.isJdkDynamicProxy(obj)) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (args == null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; args = new Object[0];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; int arguments = args.length;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Class parameterTypes[] = new Class[arguments];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; arguments; i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; parameterTypes[i] = args[i].getClass();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Class _targetClass = AopUtils.getTargetClass(obj);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Class[] _targetInterfaces = _targetClass.getInterfaces();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Method method = null;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; _targetInterfaces.length; i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; method = org.apache.commons.beanutils.MethodUtils&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; .getMatchingAccessibleMethod(_targetInterfaces[i], methodName,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; parameterTypes);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (method != null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (method == null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; method = org.apache.commons.beanutils.MethodUtils&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; .getMatchingAccessibleMethod(_targetClass, methodName,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; parameterTypes);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // AopUtils.invokeJoinpointUsingReflection(obj, method, args);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return java.lang.reflect.Proxy.getInvocationHandler(obj)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; .invoke(obj, method, args);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (Throwable e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; throw new RuntimeException(e);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; MethodInvoker invoker = new MethodInvoker();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; invoker.setTargetObject(obj);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; invoker.setArguments(args);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; invoker.setTargetMethod(methodName);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; invoker.prepare();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return invoker.invoke();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (ClassNotFoundException e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; throw new RuntimeException(e);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (NoSuchMethodException e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; throw new RuntimeException(e);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (InvocationTargetException e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; throw new RuntimeException(e);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (IllegalAccessException e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; throw new RuntimeException(e);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/font&gt;</description>
            <author>海波无痕</author>
            <pubDate>Thu, 14 Aug 2008 13:54:03 +0800</pubDate>
        </item>
        <item>
            <title>A JDBC pool connection leak was detected. </title>
            <link>http://www.ziki.cn/q/index.php/q-b_uuid-21.html</link>
            <description>&lt;div style=&quot;dispaly: block&quot;&gt;&lt;p&gt;f环境:WLsp3,hibernate3.1.3,spring1.2.7&amp;nbsp;&lt;/p&gt;&lt;p&gt;at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)&lt;br /&gt;&amp;nbsp;at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6458)&lt;br /&gt;&amp;nbsp;at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)&lt;br /&gt;&amp;nbsp;at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)&lt;br /&gt;&amp;nbsp;at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3661)&lt;br /&gt;&amp;nbsp;at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2630)&lt;br /&gt;&amp;nbsp;at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)&lt;br /&gt;&amp;nbsp;at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)&lt;br /&gt;Caused by: org.springframework.transaction.CannotCreateTransactionException: &lt;/p&gt;&lt;p&gt;Could not open Hibernate Session for transaction; nested exception is &lt;/p&gt;&lt;p&gt;org.hibernate.exception.GenericJDBCException: Cannot open connection&lt;br /&gt;&amp;nbsp;at org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:548)&lt;br /&gt;&amp;nbsp;at org.springframework.transaction.support.AbstractPlatformTransactionManager.&lt;/p&gt;&lt;p&gt;getTransaction(AbstractPlatformTransactionManager.java:282)&lt;br /&gt;&amp;nbsp;at org.springframework.transaction.interceptor.TransactionAspectSupport.&lt;/p&gt;&lt;p&gt;createTransactionIfNecessary(TransactionAspectSupport.java:225)&lt;br /&gt;&amp;nbsp;at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:89)&lt;br /&gt;&amp;nbsp;at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)&lt;br /&gt;&amp;nbsp;at org.springframework.aop.framework.&lt;/p&gt;&lt;p&gt;Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:643)&lt;br /&gt;&amp;nbsp;at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)&lt;br /&gt;&amp;nbsp;at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)&lt;br /&gt;&amp;nbsp;at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)&lt;br /&gt;&amp;nbsp;at java.lang.reflect.Method.invoke(Unknown Source)&lt;br /&gt;&amp;nbsp;at org.apache.tapestry.listener.ListenerMap.invokeTargetMethod(ListenerMap.java:257)&lt;br /&gt;&amp;nbsp;... 30 more&lt;br /&gt;Caused by: org.hibernate.exception.GenericJDBCException: Cannot open connection&lt;br /&gt;&amp;nbsp;at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:91)&lt;br /&gt;&amp;nbsp;at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:79)&lt;br /&gt;&amp;nbsp;at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)&lt;br /&gt;&amp;nbsp;at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29)&lt;br /&gt;&amp;nbsp;at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:307)&lt;br /&gt;&amp;nbsp;at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:109)&lt;br /&gt;&amp;nbsp;at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:134)&lt;br /&gt;&amp;nbsp;at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57)&lt;br /&gt;&amp;nbsp;at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1236)&lt;br /&gt;&amp;nbsp;at org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:515)&lt;br /&gt;&amp;nbsp;... 43 more&lt;br /&gt;Caused by: weblogic.jdbc.extensions.PoolLimitSQLException: weblogic.common.resourcepool.ResourceLimitException:&lt;/p&gt;&lt;p&gt;&amp;nbsp;No resources currently available in pool cp_ffp to allocate to applications, please increase the size of the pool and retry..&lt;br /&gt;&amp;nbsp;at weblogic.jdbc.common.internal.JDBCUtil.wrapAndThrowResourceException(JDBCUtil.java:203)&lt;br /&gt;&amp;nbsp;at weblogic.jdbc.pool.Driver.connect(Driver.java:161)&lt;br /&gt;&amp;nbsp;at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:507)&lt;br /&gt;&amp;nbsp;at weblogic.jdbc.jts.Driver.connect(Driver.java:139)&lt;br /&gt;&amp;nbsp;at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:305)&lt;br /&gt;&amp;nbsp;at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider&lt;/p&gt;&lt;p&gt;.getConnection(LocalDataSourceConnectionProvider.java:80)&lt;br /&gt;&amp;nbsp;at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:304)&lt;br /&gt;&amp;nbsp;... 48 more&lt;br /&gt;&amp;lt;2008-3-11 上午10时30分42秒 GMT&amp;gt; &amp;lt;Warning&amp;gt; &amp;lt;JDBC&amp;gt; &amp;lt;BEA-001074&amp;gt; &amp;lt;A JDBC pool connection leak was detected. &lt;/p&gt;&lt;p&gt;A connection leak occurs when a connection obtained from the pool was not closed explicitly by calling close() &lt;/p&gt;&lt;p&gt;and then was disposed by the garbage collector and returned to the connection pool. The following stack &lt;/p&gt;&lt;p&gt;trace at create shows where the leaked connection was created.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;[Null exception passed, creating stack trace for offending caller]&lt;br /&gt;&amp;nbsp;at weblogic.utils.StackTraceUtils.throwable2StackTrace(StackTraceUtils.java:28)&lt;br /&gt;&amp;nbsp;at weblogic.jdbc.wrapper.PoolConnection.finalizeInternal(PoolConnection.java:84)&lt;br /&gt;&amp;nbsp;at weblogic.jdbc.wrapper.PoolConnection_com_sybase_jdbc2_jdbc_SybConnection.finalize(Unknown Source)&lt;br /&gt;&amp;nbsp;at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)&lt;br /&gt;&amp;nbsp;at java.lang.ref.Finalizer.runFinalizer(Unknown Source)&lt;br /&gt;&amp;nbsp;at java.lang.ref.Finalizer.access$100(Unknown Source)&lt;br /&gt;&amp;nbsp;at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://forums.bea.com/thread.jspa?threadID=200035670&amp;amp;start=105&quot;&gt;&lt;font size=&quot;2&quot;&gt;http://forums.bea.com/thread.jspa?threadID=200035670&amp;amp;start=105&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;据查此错误是由于连接池内存泄露导致，更换到spring2.0.8错误消失&lt;/p&gt;&lt;/div&gt;</description>
            <author>海波无痕</author>
            <pubDate>Sat, 15 Mar 2008 01:49:10 +0800</pubDate>
        </item>
    </channel>
</rss>
