2012-01-15 11 views
0

GWTとGAE/Javaを使用してWebアプリケーションを構築しています。私はRPCコールの一つでonFailure(Throwable catch)を取得していたので、私はそれを印刷すると思っていました。GWT/GAE(Java):コードはjavacでビルドされますが、ant devmodeで実行すると失敗します。

CharArrayPrintStreamをラップしたPrintWriterでcaught.printStackTrace()を呼び出すコードを書きました。このコードは、ログに送信する予定でした。これはant javacでコンパイルされました。しかし、私はant devmodeで実行したときに、Throwable.printStackTrace()がPrintWriterを受け入れることができず、代わりにPrintStreamが必要であるというエラーが発生しました。これは(1)ant javacがコンパイルされ、(2)ThrowableのAPIがprintStackTrace()を呼び出してPrintStreamを渡すことができるので、これは非常に奇妙です。

私が考えることができるのは、devmodeとjavacが動作する(antファイルの読み込みには使用されていませんが、明らかな問題はありません)ライブラリのバージョンと、 java-to-javascriptコンパイラは正しくオーバーロードしていません。

私は古い学校に行き、ByteArrayOutputStreamをラップしたPrintStreamを使用しました。ここでも、これはant javacターゲットを使用してコンパイルされました。今回はさらに奇妙なエラーが発生しました。

00:00:46.700 [ERROR] Line 72: The method close() is undefined for the type PrintStream 

flush()と同じことが起こります。私は "ストリーム"と呼ばれるものがclose()またはflush()メソッドを持たないと信じられません。ここで何が起こっているのですか?


最新バージョンのOS X 10.6.8(x86)を実行しています。 16.0.912.63(公式ビルド・113337) $のJava -version Javaのバージョン "1.6.0_29" のJava(TM)SEランタイム環境(ビルド1.6.0_29-b11-402-10M3527) は、Java HotSpot: 私のブラウザは、Chromeがあります(TM)64ビットサーバVM(ビルド20.4-b02-402、混合モード) 私はgwt-2.4.0を使用しています。

答えて

関連する問題