Top Latest Bugs in Java

This is a list of the top these bugs with the most votes. This list is compiled on a daily basis, on sun bug database

1. Semantics of external process is not defined in JLS

Description: By default, the child process's stdout and stderr are redirected to parent process. If parent process does not read the pipe, the child process will block when pipe is full.

2. Java2D incorrectly renders objects with large coordinates

Description: Java2D behaves incorrectly (and very unpredictably) when rendering objects with large coordinates.

3. ClassLoader.loadClass() throws java.lang.ClassNotFoundException: [Ljava.lang.String; in JDK 6.0

Consider this simple test program:

public class Test {

public static void main(String[] args) throws Exception {
String[] s = new String[] { "123" };
String clName = s.getClass().getName();
test.class.getClassLoader().loadClass(clName);
}
}

This runs fine on JDK 1.5, but throws this exception on JDK 6.0.

4. Method.invoke access control does not understand inner class scoping

Running the following program, which should succeed, results in an IllegalAccessException.

import java.lang.reflect.*;

public class TestPrivateAccess extends Object {
TPAInnerClass inner = new TPAInnerClass();

private void privateMethod() {
System.out.println("private method.");
}

class TPAInnerClass extends Object {
void dynamicInvoke() {
try {
Method method = TestPrivateAccess.class.getDeclaredMethod("privateMethod", new Class[] {});
method.invoke(TestPrivateAccess.this, new Object[] {});
}
catch (Exception e) {
e.printStackTrace();
}
}
}

public static void main(String[] argv) {
TestPrivateAccess tpa = new TestPrivateAccess();
tpa.inner.dynamicInvoke();
}
}

5. PermHeap bloat in and only in server VM

Description: With updating ClassLoader several times, jdk1.4.1_05 server VM will be down with an error java.lang.OutOfMemoryError.

Environment:
OS : Solaris8
MPU: sparcv9 processor 450 MHz * 2
Mem: 2048 Megabytes

Reproduction:
1. To unzip the attached tp.zip.
2. To change the direcotory to tp.
3. Set the JAVA_HOME variable viable in the script client.sh.
4. To type "sh client.sh" to launch the test program.
5. You will see the test program stop there and java.lang.OutOfMemoryError shown.
...

6. Lost newly entered data in the cell when resizing column width

JDK 1.6 java swing data in the cellis lost when column width is resized.