現在、私たちは再現できないファイル書き込み/エンコーディングの問題を経験しています。 実際には、同じ原因の可能性がある2つの問題があります。ファイルの先頭または末尾のジャンク文字
1)ベロシティテンプレートを使用してユーザーの要求に応じてアプリケーションを作成するアプリケーションがあります。しかし、そのアプリケーションのいくつかのインスタンスでは(同じサーバーで実行され、同じバージョンの同じライブラリを使用して)、ファイルに書き込まれるCSS文字列にいくつかのstange文字を付加します(UTF-8バイトの順序マークではありません)。
2)もう1つのアプリケーションでは、JARファイルが追加されたJARファイル(EARにあります)が配信されました。ほとんどの場合、同じアプリケーションがJavascriptファイルを正しく配信しており、まだその動作を再現できませんでした。サーバーの一時フォルダに書き込まれたファイルが何らかの形で破損している可能性があります。
どちらのアプリケーションも、同じまたは類似の原因になる可能性があるため、迷惑な文字がファイルに追加されるという事実が共通しています。
しかし、前にも述べたように、私たちはテストマシンや開発マシンでその動作を再現することができず、何が原因か分かりません(UTF- 8)。
OS:DebianのGNU/Linuxの5.0.4(lennyの) のJBoss:4.2.3.GA のJava:日JDK 1.5.0_17-B04
はここで、システム上のいくつかのより多くの情報です何が起こっているのか、私たちが探すことができるのか?
ありがとうございます。
編集:問題1のコードの
パート)
...
FileWriter fw;
try
{
String path = tConfigProperties.getProperty(VELOCITYPATHPARAM);
fw = new FileWriter(path + VELOCITYFILEPARM);
fw.write(sw.toString());//sw is a StringWriter passed to velocity for template processing
fw.close();
}
catch(IOException e)
{
//handle exception and display error message
}
問題2)私たちは、すべてのJSPでJavascriptをリンクされているので、私たちのJavaコードに問題があることはできません。
問題1の入力をもう一度チェックするための+1。 – Thomas