diff -r fb83f58ece66 -r 82bb83b955b6 ko-bck2brwsr/src/main/java/org/apidesign/html/ko2brwsr/BrwsrCntxt.java --- a/ko-bck2brwsr/src/main/java/org/apidesign/html/ko2brwsr/BrwsrCntxt.java Fri May 03 10:27:06 2013 +0200 +++ b/ko-bck2brwsr/src/main/java/org/apidesign/html/ko2brwsr/BrwsrCntxt.java Thu May 16 14:10:02 2013 +0200 @@ -20,9 +20,12 @@ */ package org.apidesign.html.ko2brwsr; +import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; +import java.util.logging.Level; +import java.util.logging.Logger; import net.java.html.json.Context; import org.apidesign.html.json.spi.ContextBuilder; import org.apidesign.html.json.spi.FunctionBinding; @@ -61,9 +64,19 @@ R r = new R(); if (call.isJSONP()) { String me = ConvertTypes.createJSONP(r.arr, r); - ConvertTypes.loadJSON(call.composeURL(me), r.arr, r, me); + ConvertTypes.loadJSONP(call.composeURL(me), me); } else { - ConvertTypes.loadJSON(call.composeURL(null), r.arr, r, null); + String data = null; + if (call.isDoOutput()) { + try { + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + call.writeData(bos); + data = new String(bos.toByteArray(), "UTF-8"); + } catch (IOException ex) { + call.notifyError(ex); + } + } + ConvertTypes.loadJSON(call.composeURL(null), r.arr, r, call.getMethod(), data); } }