2012-08-06 89 views
0

我們在我們的項目中使用了Restful Web服務。我將下面的類的對象作爲查詢參數傳遞給我的web服務。Restful webservice查詢參數問題

public class QueryDTO { 
    private String name; 
    private Object[] args; 
    private Object[] results; 
//with setters and getters 
} 

這裏是我的web配置

@GET 
@Produces("application/json") 
@Path("/") 
QueryDTO executeQuery(@QueryParam("") QueryDTO queryDTO) throws Exception; 

這裏ARGS可以包含任何數據類型(字符串,基於整數,日期...等) 當我打電話

rest/query?name="getCreativeExtractorPatternByName"&args={"473"} 

我得到的以下例外。

Parameter Class java.lang.Object has no constructor with single String parameter, static valueOf(String) or fromString(String) methods 

請幫我解決這個..

+0

我不認爲你可以在查詢參數中給出一個數組,這就是爲什麼異常出現!而且你也不需要用查詢參數的雙引號將值加上 – Sikorski 2012-08-06 12:53:47

+0

看看這個數組:http://stackoverflow.com/questions/5484209/pass-array-as-a-parameter-in-restful-webservice?rq = 1 – Sikorski 2012-08-06 12:55:46

回答

0

添加一個參數construtor:

public QueryDTO(String name) { 
    this.name = name; 
} 

有關參數注入到你的DTO的對象,它應該由一個構造函數接受一個字符串參數。

您應該爲DTO對象中的成功注入提供有效的查詢參數。

+0

你能解釋一下我爲什麼需要這個嗎?同時,我會嘗試一下並讓你知道。 – 2012-08-06 11:47:31

+0

它沒有工作。 – 2012-08-06 12:03:34