[Java][JavaScript] env.jsでHTTPのPOSTメソッドが実装されていない?

env.jsRhinoで利用できるwindowオブジェクトの実装.

とても便利に使わせていただいているのですが,どうもXmlHttpRequestのsend関数でHTTPのPOSTメソッドが実装されていない様子.

なので,POSTの部分だけとりあえず実装追加.
Rhinoでprotoype.js - みずぴー日記で変更された状態のenv.jsに対するdiffの形で

@@ -613,6 +613,11 @@
           for (var header in self.headers)
             connection.addRequestProperty(header, self.headers[header]);

+          if(self.method == "POST") {
+            connection.setDoOutput(true);
+            var ps = new java.io.PrintStream(connection.getOutputStream());
+            ps.print(new java.lang.String( data || "" ));
+          }
           connection.connect();

           // Stick the response headers into responseHeaders

こんな風にしてとりあえず動くようになった.

後でもう少し調べて報告しておこうかな.

ところで,env.jsで`file://`スキームのURLにPUTするとファイル書き込みができるって仕様はちょっと面白かった.