我有自定義方法(GET)的REST web服務。如何在cxf中設置消息正文中的自定義對象?
@GET
@Path("/custom")
public UIResponse custom(final UIParameters uiParameters){...}
正如您所見,此方法有一個參數。這是我的自定義對象。
對象UIParameters是從作爲查詢字符串給出的參數構建的。
例如。 http://example.com/custom?objectType=article
UIParameters對象將包含一個字段:
UIParameters {
String objectType = "article";
}
我曾嘗試使用InInterceptor擺脫URL此參數,建立UIParameter對象,並設置信息的內容。不幸的是它不起作用。 之後,我已經爲UIParameters提供了MessageBodyReader,但它仍然不起作用。
我該怎麼做才能達到這個目標?
感謝
更新:
在InInterceptor我複製的查詢字符串,HTTP標頭。現在是我的MessageBodyReader中用戶位置參數可以訪問的URL的一部分。在這裏,我可以構建我的對象UIParameters。
一切工作正常,但我不認爲這種解決方案是最好的。
有人知道更好的解決方案嗎?
謝謝。當然這是最好的方式,但不幸的是我想使用builder模式,所以我不能使用setter。 – bombel
嘗試沒有setter。我通過自定義複製了它們,但看到文檔可能不是必需的 – pedrofb
如何調用所有鏈例如新的UIParameters()。Builder()。objectType(「type」)。build();我想在設置所有字段後驗證整個對象。 – bombel