2011-02-16 7 views
1

Я читаю файл .war и после прочтения его в ZipInputStream редактирую web.xml и добавляю weblogic.xml - а затем передаю все это в ZipOutputStream, который я пишу как окончательный файл output.war..war файл, созданный с использованием ZipOutputStream, не используется.

Проблема, с которой я столкнулся, - output.war не развертывается в WLS. Это не дает никаких ошибок. он показывает, что веб-приложение активно, но при доступе я получаю ERROR 403.

Но если я открою файл .war, используя любой архиватор, скажем winzip, отредактируйте web.xml и weblogic.xml, тогда я могу (по праву я имею в виду, просто удалите пробел и снова сохраните - никаких изменений).

Любая идея, почему это может произойти? Измените и сохраните xmls, попробуйте изменить FORMAT или ENCODING tye? это причина?

(usig WebLogic 10.3.3)

ответ

2

В то время как вы можете прочитать JARs с помощью ZipInputStream, вы не можете написать их с ZipOutputStream. Вам нужно использовать JarOutputStream, иначе вы не будете JAR, это будет ZIP, и он не будет использоваться.

JARs - это ZIP-файлы с некоторыми дополнительными метаданными, поэтому их можно читать как ZIP-файлы, но их нужно создавать специальным инструментом.

+0

Первоначально я пытался использовать JarOutputStream. Позже я только что снял ZipOutputStream. Но, к сожалению, оба дали одинаковые результаты. – Tom

+0

глупые ошибки с моей стороны, я говорю .. что-то вроде кода, а не при использовании file.separator i жестко закодированного '/'. в Linux вызваны проблемы. – Tom