0

SWF ファイルのバイナリを変更してユーザーに出力するサーブレットを作成しました。デフォルトでは、SWF は ZLIB によって圧縮されます。次に、インフレートし、バイナリを変更し、デフレートして結果を出力します。

すべてが Windows Server 2008 (2003 年も) 上で正しく実行されていました。現在、サーバーを Linux に変更する必要がありますが、このサーブレットが何らかの理由で破損した SWF ファイルを出力しています...何が問題なのですか? さらに興味深いのは、Windows と Linux のサーブレットのバージョンに違いがないことです。

java.util.zip パッケージに文書化されていない Linux 固有の動作はありますか?


私の Windows Server は (サーブレットが動作している場所):

  • Windows Server 2008 (6.0 - x86)
  • アパッチ 2.2.11
  • トムキャット 6.0.16.0 Java
  • JDK 1.6.0_12-b04


私のCentOSサーバーは(サーブレットが機能しない場所)です

  • CentOS 5.4 (2.6.18-164.15.1.el5 - i386)
  • アパッチ 2.2.3
  • トムキャット 6.0.16.0
  • Java JDK 1.6.0_12-b04

任意のリードをいただければ幸いです。乾杯、 CaioToOn!

4

1 に答える 1

1

SWF ファイルがどのように「破損」しているかを示すコードや例を見ずに、これ以上語ることは困難です。あなたの質問に直接答えるために、私は 2 つのプラットフォームの zip ライブラリに原則として違いがあるとは考えられません。ただし、次のことを考慮してください。

  • 異なる可能性があるものには、デフォルトの文字エンコーディングが含まれます(文字列をバイトに変換する場所があり、Linuxでは誤って不正な文字がファイルに挿入されます)-私は頭のてっぺんからそれを認めますが、私はただ考えることができませんこれはあなたの特定のシナリオのどこにありますか
  • 他にどのライブラリに依存していますか?
  • サーブレットにログインして、プロセスのさまざまな段階で実際のファイルデータがどのように見えるかを確認してください...
  • 同様に、ファイルが「破損」している方法について詳しく説明していただけますか? エラー メッセージが表示される場合、どのようなメッセージが表示されますか? 16進エディタで「正常な」ファイルと「破損した」ファイルを比較すると、どのような違いがありますか?
于 2010-05-04T03:12:55.593 に答える