1.1 --- a/ko4j/src/main/java/org/netbeans/html/ko4j/FXContext.java Thu Jan 09 15:03:34 2014 +0100
1.2 +++ b/ko4j/src/main/java/org/netbeans/html/ko4j/FXContext.java Thu Jan 09 20:39:23 2014 +0100
1.3 @@ -42,9 +42,11 @@
1.4 */
1.5 package org.netbeans.html.ko4j;
1.6
1.7 +import java.io.ByteArrayOutputStream;
1.8 import java.io.Closeable;
1.9 import java.io.IOException;
1.10 import java.io.InputStream;
1.11 +import java.io.InputStreamReader;
1.12 import java.util.concurrent.Executor;
1.13 import java.util.logging.Logger;
1.14 import net.java.html.js.JavaScriptBody;
1.15 @@ -73,7 +75,7 @@
1.16 this.browserContext = browserContext;
1.17 }
1.18
1.19 - @JavaScriptBody(args = {}, body = "return true;")
1.20 + @JavaScriptBody(args = {}, body = "if (window) return true; else return false;")
1.21 private static boolean isJavaScriptEnabledJs() {
1.22 return false;
1.23 }
1.24 @@ -148,7 +150,22 @@
1.25
1.26 @Override
1.27 public void loadJSON(final JSONCall call) {
1.28 - LoadJSON.loadJSON(call);
1.29 + if (call.isJSONP()) {
1.30 + String me = LoadJSON.createJSONP(call);
1.31 + LoadJSON.loadJSONP(call.composeURL(me), me);
1.32 + } else {
1.33 + String data = null;
1.34 + if (call.isDoOutput()) {
1.35 + try {
1.36 + ByteArrayOutputStream bos = new ByteArrayOutputStream();
1.37 + call.writeData(bos);
1.38 + data = new String(bos.toByteArray(), "UTF-8");
1.39 + } catch (IOException ex) {
1.40 + call.notifyError(ex);
1.41 + }
1.42 + }
1.43 + LoadJSON.loadJSON(call.composeURL(null), call, call.getMethod(), data);
1.44 + }
1.45 }
1.46
1.47 @Override
1.48 @@ -158,7 +175,16 @@
1.49
1.50 @Override
1.51 public Object toJSON(InputStream is) throws IOException {
1.52 - return LoadJSON.parse(is);
1.53 + StringBuilder sb = new StringBuilder();
1.54 + InputStreamReader r = new InputStreamReader(is);
1.55 + for (;;) {
1.56 + int ch = r.read();
1.57 + if (ch == -1) {
1.58 + break;
1.59 + }
1.60 + sb.append((char)ch);
1.61 + }
1.62 + return LoadJSON.parse(sb.toString());
1.63 }
1.64
1.65 @Override