2013-06-29 49 views
2

我打電話給從Perl用Java編寫的rest服務。將Post參數用Perl傳遞到Restful Java API的問題

@POST 
@Path("/updategrid") 
private void updategrid(@FormParam Grid grid); 

Class Column{ 
private String col; 
private String val; 
//constructors and setters 
} 

Class Grid{ 
private String name; 
private List<Column> columns; 
//constructors and setters 
} 

我試圖通過電話後在paramters Perl的

$httpClient->request(host/updateGrid, {grid=>{name=>'temp', columns=>[{col=>'A',val=>'B'}]}}) 

我得到錯誤的電網與單一字符串參數沒有構造函數。但是,當我刪除列參數的事情都很好。那麼什麼是傳遞給列表屬性的正確方法。

回答

0

我不確定@QueryForm註釋,但它似乎嘗試使用您傳遞的Json字符串來初始化Grid對象,而不是使用此字符串進行序列化。將註釋@RequestBody放在updateGrid方法上,而不是@QueryForm註釋,它應該工作。

+0

其實它@FormParam。 – dumper

+0

這解釋了爲什麼我無法在Google上找到它。 – Avi

+0

嘗試我建議的。還要確保你的路上有傑克遜罐子。 – Avi