使用的activiti 5.23.0版本。activiti-webapp-rest2
之前总是使用url:
http://localhost:8080/activiti-rest/repository/deployments
访问总是提示404.也不报错。
正确的访问地址是:
http://localhost:8080/activiti-rest/service/repository/deployments
中间有个service。无语了。看说明手册根本没有service。
研究半天源码,应该是下面原因导致的:
activiti-webapp-rest2项目里找到org.activiti.rest.servlet.WebConfigurer类的initSpring方法。
/**
* Initializes Spring and Spring MVC.
*/
private ServletRegistration.Dynamic initSpring(ServletContext servletContext, AnnotationConfigWebApplicationContext rootContext) {
log.debug("Configuring Spring Web application context");
AnnotationConfigWebApplicationContext dispatcherServletConfiguration = new AnnotationConfigWebApplicationContext();
dispatcherServletConfiguration.setParent(rootContext);
dispatcherServletConfiguration.register(DispatcherServletConfiguration.class);
log.debug("Registering Spring MVC Servlet");
ServletRegistration.Dynamic dispatcherServlet = servletContext.addServlet("dispatcher", new DispatcherServlet(dispatcherServletConfiguration));
dispatcherServlet.addMapping("/service/*");
dispatcherServlet.setLoadOnStartup(1);
dispatcherServlet.setAsyncSupported(true);
return dispatcherServlet;
}
上面dispatcherServlet.addMapping("/service/*");语句。会导致url要加上service才能正常访问。