ProxyMethodInterceptor doesn't handle finalize appropriately ------------------------------------------------------------
Key: GERONIMO-2204 URL: http://issues.apache.org/jira/browse/GERONIMO-2204 Project: Geronimo Issue Type: Bug Security Level: public (Regular issues) Components: kernel Affects Versions: 1.1 Reporter: David Jencks Assigned To: Dain Sundstrom Priority: Minor A user noticed that while debugging in eclipse (or idea with break-on-exceptions turned on) this method from ProxyMethodInterceptor throws UnsupportedOperationException when finalize is called on a proxy object: public final Object intercept(final Object object, final Method method, final Object[] args, final MethodProxy proxy) throws Throwable { ProxyInvoker gbeanInvoker; int interfaceIndex = proxy.getSuperIndex(); synchronized (this) { if (gbeanInvokers == null) { throw new DeadProxyException("Proxy is no longer valid"); } gbeanInvoker = gbeanInvokers[interfaceIndex]; } if (gbeanInvoker == null) { throw new UnsupportedOperationException("No implementation method: objectName=" + abstractName + ", method=" + method); } return gbeanInvoker.invoke(abstractName, args); } This appears to be harmless since the proxy doesn't implement finalize, but annoying. We could fix this by explicitly ignoring the finalize method in the code above, possibly by installing a suitable FinalizeInvoker, or by using a CallbackFilter with a Noop or SerizializableNoop callback (the strategy used by spring aop). Is this worth fixing? Which way would be best? -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira