Я создаю веб-службу с помощью Spring @RestController. При тестировании на местном уровне все в порядке. Однако, после развертывания приложения на удаленном сервере приложений, я получаю обратно 404 при попадании на ту же конечную точку. Вот мои коды:Получение 404 после развертывания на сервере приложений, но не локально
@RestController
public class HelloRestController
{
@RequestMapping( value = "/hello", method = RequestMethod.GET)
public String hello()
{
return "hello";
}
}
Вот мой инициализатор веб-приложений. Примечание. У меня нет файла web.xml.
public class MyApplicationInitializer implements WebApplicationInitializer
{
@Override
public void onStartup(ServletContext servletContext) throws ServletException
{
AnnotationConfigWebApplicationContext ctx =
new AnnotationConfigWebApplicationContext();
servletContext.addListener(new ContextLoaderListener(ctx));
ctx.register(WebApplicationConfig.class, ApplicationConfig.class);
ctx.setServletContext(servletContext);
Dynamic dispatcher =
servletContext.addServlet("SpringServlet", new DispatcherServlet(ctx));
dispatcher.addMapping("/");
dispatcher.setLoadOnStartup(1);
}
}
Когда я развернуть приложение локально Tomcat-8.0.15 и нажмите "локальный: 8080/MYAPP/привет", она возвращает "привет". Однако после развертывания приложения на удаленном сервере приложений (также Tomcat 8), я получаю обратно 404 при попытке попасть в ту же конечную точку.
Заранее благодарим за помощь!
код выглядит хорошо, вы уверены, что tomcat работает на правильном порту и настроен правильно? – Epicblood
есть. Я даже развернулся на облачном сервере, HANA Cloud Platform (HCP) и все еще получаю 404. Мне удалось увидеть страницу index.html: «remote.server.host/myApp», но не «remote.server.host/ MYAPP/привет». :( – KNSter