【发布时间】:2014-07-03 16:56:06
【问题描述】:
我只是想通过控制器服务接口获取用户数据但我总是得到
[WARN] 400 - GET /user/%7Bid%7D (127.0.0.1) 1403 bytes
我的控制器:
@Controller
@RequestMapping(value ="/user")
public class AdminSpringController {
@RequestMapping( value = "/{id}", method = RequestMethod.GET)
@ResponseStatus(HttpStatus.OK)
public @ResponseBody GWTUser getUser(@PathVariable Integer id) throws NotFoundException {
...
}
}
我的服务,它是一个 restygwt 界面:
@Path("/user")
public interface UserAdminRestService extends RestService {
@GET
@Path("/{id}")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public void getUser(Integer id, MethodCallback<GWTUser> callback);
}
我的小服务程序:
<servlet>
<servlet-name>userService</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/servlet/userService-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>userService</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
我的 servlet.xml
<context:component-scan base-package="com.app.admin.controller" />
<tx:annotation-driven />
<mvc:annotation-driven />
<!--This tag allows for mapping the DispatcherServlet to "/" (all extensions etc) -->
<mvc:default-servlet-handler/>
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
</list>
</property>
</bean>
我已经有一个方法(user/users 可以返回所有用户,它工作正常,但我认为问题出在我的{id}(参数变量),因为似乎我的服务或其他东西会像你一样解析我的{id}可以看到我的错误/user/%7Bid%7D。感谢您的帮助。
【问题讨论】:
标签: spring google-app-engine rest maven gwt