use jdk5 compatible IOException constructor
Merge branch 'issue643' into 1.6.x