2015-04-02 38 views
-2

我正在爲我的spring應用程序使用rest調用。我需要發送Java對象作爲其餘方法的輸入參數。一旦我嘗試使用requestentity輸入流。它適合那個嗎?靜態的web服務調用,輸入參數爲Java對象

我使用InputStream中的代碼是

HttpEntity<byte[]> entity = new HttpEntity<>(IOUtils.toByteArray(in)); 
     RestTemplate restTemplate=new RestTemplate(); 
      restTemplate.getMessageConverters().add(new StringHttpMessageConverter()); 
     restTemplate.postForObject("http://localhost:9070/EXTJS4FileUpload_Rest/rest/fileUpload/send/"+filename+"/"+filesize,entity,String.class); 
+2

請您詳細說明並共享您嘗試過的代碼嗎? – 2015-04-02 06:11:24

+0

而不是在上面的url上傳遞請求實體。我需要直接發送java對象。 – 2015-04-02 07:06:02

回答

0

如果你讀了Java對象爲REST方法流需要Deserailize流反對(我不知道爲什麼和u如何管理這樣做)。相反,嘗試將JSON或XML發送給Java對象,然後在REST方法中使用解析XML/JSON來轉換爲對象。如果您使用澤西島這樣的框架,通過指定請求MIME類型可以相當簡單

+0

我們可以直接給java對象而不是請求實體嗎?是否有可能.. – 2015-04-02 07:04:21

+0

看你的代碼我認爲你正在嘗試發佈一個Java對象作爲HTTP請求的一部分...然後你不能... HTTP不僅僅是Java,它不理解Java,也不需要要..你需要創建JSON的對象,並將其作爲POST身體的一部分而不是GET請求發送 – 2015-04-02 11:13:50

相關問題