# HG changeset patch # User Jaroslav Tulach # Date 1360958176 -3600 # Node ID 51ce6a73fcb20a2acff6f9b1f581bd4943263ca3 # Parent 341d8ed644df498e08ab9455cd0cfcd7a5e06c2b Return 404 for not found classes. Prepend ldCls loading function before standard path diff -r 341d8ed644df -r 51ce6a73fcb2 launcher/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java --- a/launcher/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java Fri Feb 15 20:09:36 2013 +0100 +++ b/launcher/src/main/java/org/apidesign/bck2brwsr/launcher/Bck2BrwsrLauncher.java Fri Feb 15 20:56:16 2013 +0100 @@ -48,6 +48,7 @@ import org.glassfish.grizzly.http.server.Request; import org.glassfish.grizzly.http.server.Response; import org.glassfish.grizzly.http.server.ServerConfiguration; +import org.glassfish.grizzly.http.util.HttpStatus; /** * Lightweight server to launch Bck2Brwsr applications and tests. @@ -491,12 +492,15 @@ + " var request = new XMLHttpRequest();\n" + " request.open('GET', '/classes/' + res, false);\n" + " request.send();\n" + + " if (request.status !== 200) return null;\n" + " var arr = eval('(' + request.responseText + ')');\n" + " return arr;\n" + " }\n" + " var prevvm = global.bck2brwsr;\n" + " global.bck2brwsr = function() {\n" - + " return prevvm(ldCls);\n" + + " var args = Array.prototype.slice.apply(arguments);\n" + + " args.unshift(ldCls);\n" + + " return prevvm.apply(null, args);\n" + " };\n" + "})(this);\n" ); @@ -546,6 +550,7 @@ } w.append("\n]"); } catch (IOException ex) { + response.setStatus(HttpStatus.NOT_FOUND_404); response.setError(); response.setDetailMessage(ex.getMessage()); }