Проблема при сжатии SWF в Linux с помощью java.util.zip - PullRequest
0 голосов
/ 04 мая 2010

Я создал сервлет, который изменяет двоичные файлы SWF-файла и выводит его пользователю. SWF по умолчанию сжимается ZLIB. Затем я раздуваю, изменяю двоичные файлы, выкачиваю и выводю результат.

Все работало прямо на Windows Server 2008 (также в 2003 году). В настоящее время нам нужно изменить сервер на Linux, а затем этот сервлет каким-то образом выводит поврежденный SWF-файл ... в чем может быть проблема? Больше всего меня интересует то, что нет никакой разницы между версиями сервлетов для Windows и Linux.

Существует ли какое-либо недокументированное поведение, специфичное для Linux, для пакета java.util.zip?


Мой Windows Server (там, где работает сервлет):

  • Windows Server 2008 (6.0 - x86)
  • Apache 2.2.11
  • Tomcat 6.0.16.0 Java
  • JDK 1.6.0_12-b04


Мой сервер CentOS (где сервлет не работает)

  • CentOS 5.4 (2.6.18-164.15.1.el5 - i386)
  • Apache 2.2.3
  • Tomcat 6.0.16.0
  • Java JDK 1.6.0_12-b04

Любое руководство будет оценено! Ура, CaioToOn!

1 Ответ

1 голос
/ 04 мая 2010

Трудно сказать больше, не увидев некоторый код и / или примеры того, как ваши SWF-файлы "повреждены". Чтобы ответить на ваш вопрос напрямую, я не могу думать о какой-либо принципиальной разнице между библиотекой zip на двух платформах. Но о чем подумать:

  • вещи, которые могут отличаться , включают кодировку символов по умолчанию (вы где-то конвертируете строку в байты, что в Linux случайно помещает в файл недопустимые символы) - хотя я допускаю, что это не так моя голова, я не могу просто думать, где это будет в вашем конкретном сценарии
  • На какие еще библиотеки вы полагаетесь?
  • зайдите в свой сервлет и посмотрите, как выглядят фактические данные файла на разных этапах процесса ...
  • в том же духе, можете ли вы уточнить, как файл «поврежден» - какие сообщения об ошибках вы получаете, если таковые имеются? Когда вы сравниваете «хороший» файл и «поврежденный» файл в вашем шестнадцатеричном редакторе, какая разница?
...