我有一个正在运行的应用程序,它使用Spring remoting HttpInvoker公开服务。
我在web.xml中有这样的定义:
<servlet>
<servlet-name>remoting</servlet-name>
<servlet class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>remoting</servlet-name>
<url-pattern>/remoting/*</url-pattern>
</servlet-mapping>服务导出器:
<bean name="/AccessMgtService" class="org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter">
<property name="service" ref="employeeService"/>
<property name="serviceInterface" value="com.xxx.service.EmployeeService"/>
</bean>在客户端:
<bean id="remoteAccessService" class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">
<property name="serviceUrl" value="http://localhost:8180/HRManRemote/remoting/EmployeeService"/>
<property name="serviceInterface" value="com.xxx.service.EmployeeService"/>
</bean> 现在,我已经向我的HRManRemote应用程序添加了一个Restful服务。
我有一个如下的请求映射:
@Controller
public class EmployeeController {
@RequestMapping(value="/rest/employees", method=RequestMethod.GET)
@ResponseBody List<Employee> getEmployees() {
...
}我对URL模式有一个问题。我想不出应该使用什么url来调用Rest服务。
都不是http://localhost:8180/HRManRemote/remoting/rest/employees
nor http://localhost:8180/HRManRemote/rest/employees
工作。服务器告诉我没有为这个url定义任何资源。
你认为我应该使用什么url?我应该使用不同的请求映射吗?
非常感谢你提前
吉尔斯
发布于 2015-05-26 03:47:25
编辑dispatcher servlet映射,如下所示:
<servlet-mapping>
<servlet-name>remoting</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>在浏览器中点击http://localhost:8180/HRManRemote/rest/employees,同时确保扫描spring配置文件中的EmployeeController。
发布于 2015-05-26 03:49:59
我希望得到以下结果:http://localhost:8180/HRManRemote/remoting/AccessMgtService/rest/employees
我假设您的站点名为HRManRemote,并且绑定到端口8180?如果是,则远程处理来自web.xml,AccessMgtService来自bean配置,其余部分来自控制器
https://stackoverflow.com/questions/30444984
复制相似问题