2016-09-29 98 views
0

我希望看到一個與我POST請求時使用jax-rsApache CXF處理提交的XML:如何在CXF處理之前捕獲XML POST消息主體?

@POST 
@Path("entity/register") 
@Consumes(MediaType.APPLICATION_XML) 
public Response registerEntity(Entity entity) { ... } 

我打電話使用SpringRestTemplate服務:

String postURI = "..."; 
Entity entity = new Entity(...); 
restTemplate.postForLocation(postURI, entMap); 

所以無論是RestTemplate CXF封裝了準備和解析請求的樣板功能。不過,我希望看到RestTemplate如何將對象編組爲XML或CXF如何解組,但最好我希望能夠看到包括標頭的整個HTTP請求。

我想這樣做的原因是我可以在其他客戶端模仿請求,如Python,Chrome Poster等。更具體地說,我想編寫一個Python腳本,它將發佈相同的XML格式相同的REST服務,並且我沒有Java框架來爲我封裝(聯合)編組。

我正在使用Tomcat 7,但希望找到一種方法在Java(調試)中執行此操作,並且不記錄Tomcat日誌中的所有HTTP請求。

This對我不起作用,因爲上下文沒有被注入並保持爲空。

回答

0

我會添加一系列什麼也不做的interceptors,每個階段一個,然後在調試器的每一步中檢查消息。我認爲你正在尋找的階段是PRE_PROTOCOL,但我似乎記得,某些信息不一定可用,當你所期望的。