Errai JAX-RS Служба отдыха возвращается 404 Не найдено
Я следовал инструкциям, которые были здесь: http://docs.jboss.org/errai/latest/errai/reference/html_single/
К сожалению, я не могу сделать эту работу. Вот мой интерфейс сервиса:
package pl.korbeldaniel.erpe.shared.rest.api;
import java.util.List;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
@Path("anonymous/fileService/get/MenuService")
public interface MenuService {
@GET
@Produces("application/json")
public List<String> getMenuEntries();
}
И реализация сервера:
package pl.korbeldaniel.erpe.server.rest.api;
import java.util.ArrayList;
import java.util.List;
import pl.korbeldaniel.erpe.shared.rest.api.MenuService;
public class MenuServiceImpl implements MenuService {
@Override
public List<String> getMenuEntries() {
List<String> customers = new ArrayList<String>();
for (int i = 0; i < 11; i++) {
customers.add("Menu entry " + i);
}
return customers;
}
}
Запуск такого сервиса возврата 404 не найден. И я не знаю почему. После изменения реализации сервера так, что Spring Rest контроллер работает нормально, поэтому я не понимаю, в чем дело.
Я уже добавил в специальные библиотеки pom.xml. Я уже добавил в module.gwt.xml выделенное наследование.
У меня нет вариантов сейчас. Один из источников, который я считаю источником проблемы, - это web.xml, но в официальных документах об этом не было никаких упоминаний.
В настоящее время у меня нет файла web.xml, потому что я использую конфигурацию Java, но я не вижу в этом проблемы. Пожалуйста помоги.
редактировать
Вот моя конфигурация Java для Spring (используется вместо web.xml) на основе fe: http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/WebApplicationInitializer.html
ЦСИ:
package pl.korbeldaniel.erpe.server.config;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;
import pl.korbeldaniel.erpe.server.config.security.SecurityConfig;
import pl.korbeldaniel.erpe.shared.ServerRouting;
public class WebServletInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class<?>[] { SecurityConfig.class };
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class<?>[] { WebConfig.class };
}
@Override
protected String[] getServletMappings() {
return new String[] { ServerRouting.SPRING_WEB_SERVLET_INITIALIZER_URL };
}
}
package pl.korbeldaniel.erpe.server.config;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
@EnableWebMvc
@ComponentScan(basePackages = "pl.korbeldaniel.erpe.server")
public class WebConfig extends WebMvcConfigurerAdapter {
}
Это моя конфигурация модуля gwt:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xml>
<module>
<inherits name="com.google.gwt.user.User"/>
<inherits name="gwt.material.design.GwtMaterialWithJQueryDebug" />
<inherits name="gwt.material.design.themes.ThemeBlue" />
<inherits name="gwt.material.design.addins.GwtMaterialAddins" />
<inherits name="gwt.material.design.GwtMaterialTableDebug" />
<inherits name="org.jboss.errai.enterprise.All" />
<inherits name="org.jboss.errai.enterprise.Jaxrs"/>
<inherits name="org.jboss.errai.ioc.Container" />
<inherits name='org.jboss.errai.bus.ErraiBus' />
<set-property name="gwt.logging.enabled" value="TRUE" />
<set-property name="gwt.logging.consoleHandler" value="ENABLED" />
<set-property name="gwt.logging.logLevel" value="INFO" />
<source path="" />
<set-property name="user.agent" value="safari" />
</module>