diff -r 86e61729f754 -r ff4983098f3f rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java Sun Nov 23 21:55:46 2014 +0100 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java Mon Dec 22 20:33:44 2014 +0100 @@ -1992,8 +1992,17 @@ while (indx < len) { char ch = params.charAt(indx); if (ch == '[' || ch == 'L') { + int column = params.indexOf(';', indx) + 1; + if (column > indx) { + String real = params.substring(indx, column); + if ("Ljava/lang/String;".equals(real)) { + pb.append("Ljava/lang/String;"); + indx = column; + continue; + } + } pb.append("Ljava/lang/Object;"); - indx = params.indexOf(';', indx) + 1; + indx = column; } else { pb.append(ch); indx++;