void service()

in browser/src/main/java/org/netbeans/html/presenters/browser/Browser.java [658:700]


        void service(Request rqst, Response rspns) throws IOException {
            final String methodName = server.getParameter(rqst, "name");
            server.setContentType(rspns, "text/javascript");
            Writer w = server.getWriter(rspns);
            if (methodName == null) {
                if (initialize(rspns)) {
                    return;
                }
                // send new request
                Object obj = take(rspns);
                if (obj == null) {
                    LOG.log(Level.FINE, "Suspending response {0}", rspns);
                    return;
                }
                final String s = obj.toString();
                w.write(s);
                LOG.log(Level.FINE, "Exec global: {0}", s);
            } else {
                List<String> args = new ArrayList<>();
                String body = server.getBody(rqst);
                for (String p : body.split("&")) {
                    if (p.length() >= 3) {
                        args.add(URLDecoder.decode(p.substring(3), "UTF-8"));
                    }
                }
                String res;
                try {
                    LOG.log(Level.FINE, "Call {0}", methodName + " with " + args);
                    res = presenter.js2java(methodName,
                        args.get(0), args.get(1), args.get(2), args.get(3)
                    );
                    LOG.log(Level.FINE, "Result: {0}", res);
                } catch (Exception ex) {
                    res = "error:" + ex.getMessage();
                }
                if (res != null) {
                    w.write(res);
                } else {
                    w.write("null");
                }
            }
            w.close();
        }