我的服務:是否有可能從RestEASY MessageBodyReaderInterceptor中的MessageBodyReaderContext獲取@PathParam或@QueryParam?
@POST
public String setData(@QueryParam("id") Long is, MyObject payload) {
...
}
or
@POST
public String setData(@PathParam("id") Long is, MyObject payload) {
...
}
我在服務器上攔截:
Object read(MessageBodyReaderContext context) throws IOException, WebApplicationException {
Class mypayloadtype = context.getType;
InputStream mypayloadinpustream = context.getInputStream();
Long myidparam = ???????? // how to get the query or path param here?
}
編輯:是有點更具體:
我希望做的是搶XML並根據參數將其存儲在單獨的審計系統中。也許PreProcessInterceptor/PostProcessInterceptor是更好的選擇?
當xml仍然可用於預處理時,獲取參數的任何提示或替代方法?
米格爾
我並沒有覺得你應該使用攔截器來進行身體反序列化;我認爲這是通過JAX-RS「MessageBodyReader」子類完成的,並且不應該知道_other_參數。這就是主要的服務方法應該知道處理的內容。 – 2013-02-15 20:47:24
我編輯了這個問題,以明確爲什麼我想使用攔截器。 – 2013-02-20 08:17:23