У меня есть два идентичных файла WAR: один упакован без Maven и один упакован с использованием Maven. Когда я пытаюсь развернуть WAR с помощью Maven, используя Tomcat, я получаю сообщение об ошибке HTTP 404 (запрошенный ресурс недоступен) Исходная WAR (упакованная без использования Maven) работает плавно. Я уверен, что WAR, упакованный с использованием Maven, имеет все требуемые файлы, поскольку он точно такой же, как и исходный пакет. Любая идея о том, как решить эту проблему?Развертывание WAR-пакета TOMCAT
ответ
В таких сценариях я доверяю только инструментам, которые визуализируют, действительно ли комплекты идентичны или нет. Я покажу вам несколько инструментов ниже (инструменты MS Windows).
Контрольная сумма инструмент:
Инструмент очень быстро дать мне контрольную сумму всего пучка. И я могу сравнить это с другим файлом.
Diff инструмент:
Если контрольная сумма не совпадает вы должны увидеть разницу в пучках. В этом случае я бы использовал некоторый инструмент diff, например kDiff.
Файл web.xml - descirptor развертывание
Некоторые файлы очень важны, и вы должны будете проверить, во-первых, как дескриптор развертывания web.xml в папку WEB-INF. Проверьте его содержимое, параметры безопасности, настройки ваших сервлетов и т. Д. «Запись» на ваш веб-сервис.
Распакуйте и проверьте папки/файлы
Вы знаете, что ваша война файл является нормальным «молния» расслоение. Просто разархивируйте его и проверьте содержимое. Вы можете развернуть его на своем tomcat как разворачиваемую войну (т. Е. Вся папка, имя папки будет вашим контекстным корнем).
Проверьте журналы Tomcat
Проверьте выход при развертывании и доступ к веб-решения. Посмотрите tomcat logging level и увеличьте уровень и посмотрите свои журналы.
Как называется военный файл? Если они отличаются, tomcat развертывает их на другом пути контекста.
Maven, как правило, ставит версию в конце, например:
myproject.war будет развернут на локальный хост: 8080/MyProject
в то время как MyProject-1.0.0.war whould быть развернут на локальный хост: 8080 /myproject-1.0.0/ (Не уверен, что он обрабатывает точки)
Вы можете попробовать переименовать военные файлы на один и тот же путь или ROOT.война за "/"
Вы проверили журнал catalina.out?
- 1. Развертывание Apache tomcat
- 2. Развертывание Vert.x на Tomcat
- 3. WAR автоматическое развертывание Tomcat
- 4. Удаленное развертывание для tomcat
- 5. Развертывание GWT в tomcat
- 6. Удаленное развертывание tomcat
- 7. развертывание войны tomcat
- 8. Развертывание Glassfish и Tomcat
- 9. Автоматическое развертывание JBoss/Tomcat
- 10. Развертывание Azure Tomcat Eclipse
- 11. Развертывание в Tomcat 7
- 12. развертывание flex на tomcat
- 13. Развертывание Tomcat H2
- 14. Развертывание на Tomcat 8
- 15. Развертывание Azure Centos Tomcat
- 16. Развертывание .ear файла to tomcat
- 17. Развертывание проекта Maven в Tomcat
- 18. развертывание оси 2 в tomcat
- 19. grails.app.context игнорируется развертывание на Tomcat
- 20. Развертывание WAR в Tomcat/Eclipse
- 21. Развертывание приложения FLEX3 в tomcat
- 22. Развертывание Tomcat WAR создает 404
- 23. Развертывание сервлета на Tomcat 8.0.30
- 24. Развертывание приложений Java (Tomcat/Glassfish)
- 25. Развертывание приложения vaadin для tomcat
- 26. Maven 3, развертывание Tomcat 8
- 27. Развертывание веб-службы Apache Tomcat
- 28. Развертывание веб-приложения на Tomcat
- 29. Развертывание файла войны на Tomcat
- 30. Развертывание приложения AngularJS на tomcat
Сравните содержимое обоих файлов, чтобы узнать, отсутствует ли что-то. – Kayaman
Независимо от того, насколько вы уверены: если вы бежите, а другой нет, то они не совпадают. Файлы WAR - это zip-файлы. Вы можете просто разархивировать их и сравнить контент. –
сделать контрольную сумму/хэш (md5 или что-то еще) обоих файлов войны и сравнить их. проверьте web.xml в обоих файлах войны (под web-inf). Хороший инструмент для использования контрольной суммы http://code.kliu.org/hashcheck/ – MrSimpleMind