Really treat String as primitive type: don't give a presenter chance for additional conversions.
1.1 --- a/boot/src/main/java/org/netbeans/html/boot/impl/JavaScriptProcesor.java Wed Dec 17 18:09:12 2014 +0100
1.2 +++ b/boot/src/main/java/org/netbeans/html/boot/impl/JavaScriptProcesor.java Wed Dec 17 21:37:30 2014 +0100
1.3 @@ -392,7 +392,6 @@
1.4 return;
1.5 }
1.6 final TypeElement selfType = (TypeElement)m.getEnclosingElement();
1.7 - final TypeMirror stringType = processingEnv.getElementUtils().getTypeElement("java.lang.String").asType();
1.8
1.9
1.10 source.append("\n public java.lang.Object ")
1.11 @@ -421,7 +420,7 @@
1.12 source.append(sep);
1.13 ++cnt;
1.14 final TypeMirror t = ve.asType();
1.15 - if (!t.getKind().isPrimitive() && !processingEnv.getTypeUtils().isSameType(t, stringType)) {
1.16 + if (!t.getKind().isPrimitive() && !"java.lang.String".equals(t.toString())) { // NOI18N
1.17 source.append("Object");
1.18 convert.append(" if (p instanceof org.netbeans.html.boot.spi.Fn.FromJavaScript) {\n");
1.19 convert.append(" arg").append(cnt).
2.1 --- a/json-tck/src/main/java/net/java/html/js/tests/Bodies.java Wed Dec 17 18:09:12 2014 +0100
2.2 +++ b/json-tck/src/main/java/net/java/html/js/tests/Bodies.java Wed Dec 17 21:37:30 2014 +0100
2.3 @@ -193,7 +193,7 @@
2.4 public static native String problematicCallback();
2.5
2.6 @JavaScriptBody(args = { "sum" }, javacall = true, body =
2.7 - "return sum.@net.java.html.js.tests.Sum::all(ZBSIJFDCLjava/lang/String;)(false, 1, 2, 3, 5, 6, 7, 'A', 'TheEND');\n"
2.8 + "return sum.@net.java.html.js.tests.Sum::all(ZBSIJFDCLjava/lang/String;)(false, 1, 2, 3, 5, 6, 7, 32, 'TheEND');\n"
2.9 )
2.10 static native String primitiveTypes(Sum sum);
2.11
3.1 --- a/json-tck/src/main/java/net/java/html/js/tests/JavaScriptBodyTest.java Wed Dec 17 18:09:12 2014 +0100
3.2 +++ b/json-tck/src/main/java/net/java/html/js/tests/JavaScriptBodyTest.java Wed Dec 17 21:37:30 2014 +0100
3.3 @@ -342,7 +342,7 @@
3.4
3.5 @KOTest public void primitiveTypes() {
3.6 String all = Bodies.primitiveTypes(new Sum());
3.7 - assert "All:1 34567.08.0".equals(all) : "Valid return type: " + all;
3.8 + assert "Ahojfalse12356.07.0 TheEND".equals(all) : "Valid return type: " + all;
3.9 }
3.10
3.11 @KOTest public void problematicString() {