We note that BugID: 4674826 is fixed in 142 release. However, java.net.Socket checks for old-style impls like this: private void checkOldImpl() { if (impl == null) return; // SocketImpl.connect() is a protected method, therefore we need to use // getDeclaredMethod, therefore we need permission to access the member try { AccessController.doPrivileged(new PrivilegedExceptionAction() { public Object run() throws NoSuchMethodException { Class[] cl = new Class[2]; cl[0] = SocketAddress.class; cl[1] = Integer.TYPE; impl.getClass().getDeclaredMethod("connect", cl); return null; } }); } catch (java.security.PrivilegedActionException e) { oldImpl = true; } } However, my understanding is that this will exclude inherited methods on the impl. In our instance we have a BSocketImpl that inherits from ASocketImpl where only ASocketImpl has the appropriate connect() method. java.net.Socket therefor wrongly assumes that it is an old-style impl. *** (#1 of 1): 2004-08-27 22:42:02 PDT ###@###.### *** Last Edit: 2005-08-10 06:57:10 PDT ###@###.###
|