Я тестировал Spring Boot со встроенным Tomcat около месяца, чтобы создать REST API. Все работает нормально. Теперь мы хотим развернуть API в отдельной среде разработки, в которой есть несколько других (не Spring) приложений, запущенных в контейнере Tomcat.
Я внес изменения, указанные в Преобразование приложения Boot JAR Spring в WAR с использованием Maven и Spring Загрузочные документы.
Развертывание идет хорошо (журналы в порядке, никаких ошибок) и, глядя на управление Tomcat, я вижу, что мое приложение развернуто. Однако, когда я пытаюсь получить доступ к http://localhost:8080/sophia/users в curl, я получаю 404.
Любая помощь очень ценится.
UPDATE:
Вот мои журналы:
Netbeans:
NetBeans: развертывание на Apache Tomcat 8.0.17 режим профиля: false режим отладки: false force redeploy: true
На месте развертывания на /home/bugz/workspace/pdcore/sophiaserver/target/sophia -server-1.0.0-SNAPSHOT
Выполняется развертывание...
развернуть конфигурационный файл =% 3A% 2Ftmp% 2Fcontext1845402702541504208.xml &? = Путь /Sophia
ОК - Развернутое приложение в контекстном пути /sophia
Начало выполняется...
начать? Путь =/Sophia
OK - Запустил приложение в контекстном пути /sophia
Tomcat:
INFO 10: 47: 52: 703 org.springframework.boot.context.embedded.ServletRegistrationBean - Сопоставление сервлета: 'dispatcherServlet' в [/sophia/*]
INFO 10: 47: 54: 042 org.springframework.boot.SpringApplication - начатое приложение за 8.285 секунд (работает JVM для 12087.301)
22-Jan-2015 10: 47: 54.060 INFO [http-nio-8080-exec-99] org.apache.catalina.startup.HostConfig.deployDescriptor Развертывание дескриптора конфигурации /home/bugz/workspace/server/apache -tomcat-8.0.17/conf/Catalina/localhost/sophia.xml закончил в 12 091 мс
И в файле sophia.xml для Catalina localhost:
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" docBase="/home/bugz/workspace/pdcore/sophiaserver/target/sophia-server-1.0.0-SNAPSHOT" path="/sophia"/>
Я попытался получить доступ к
- http://localhost:8080/sophia/users
- http://localhost:8080/sophia-server-1.0.0-SNAPSHOT/users (название WAR)
Первый возвращает 404, но с информацией CORS из моего фильтра CORS bean. Второй возврат 404 без информации CORS (который указывает, что приложение запущено и настроено, но у меня нет доступа к контроллерам).