2010-08-25 112 views
1

如何使用java平臺在Restful Web服務中傳遞整個PDF內容作爲響應。 我嘗試將響應轉換爲字符串和字節數組。第一種情況,註冊表達式錯誤。在第二種情況下,獲得意想不到的結通過REST傳遞pdf數據

回答

1

PDF數據應該可以轉讓,作爲一個rest-ful請求的答案就好了。

設置正確的內容類型並傳輸PDF的二進制內容。

沒什麼特別的。

  1. 你現在在做什麼?你在使用圖書館嗎?
  2. 描述你的「未預期的結果」。
  3. 描述你「表達錯誤」

基本上,你需要提供大量的更多細節。

+0

我使用Jersey api。我將響應標頭改爲文本。嘗試與HTML和XML也。樣本回應如下。 %PDF-1.4 % 4 0 obj <> stream XY @Mǟm* IQAR = $ I1 =l̷a0؃P*Kʖ%Y *ȴh{ y { && ׹ : }' 3 ] R 9e B Хy D* 84 K V Z W p2t Y8 \ & . ! 81 ] ʎQ >0t u *?# \o B e{ 5 zt nj ҽ r\ &t .65t ' } ILꐣGS#AA?%〜ç WC * Z'k貾YJ undisputed 2010-08-26 10:22:21

+0

看起來像一個PDF文件給我。我假設你沒有設置內容類型。當然,它不是HTML或XML。內容類型是「application/pdf」。 – 2010-08-26 18:32:46

+0

謝謝。 現在我需要在pdf文件中顯示相同的數據。如何做到這一點, – undisputed 2010-09-01 08:23:11

0

爲了提供PDF,您的來自Java平臺的響應肯定會成爲字節數組。從服務器端您需要確保PDF的MIME類型已註冊,並且它正在提供並接受PDF的正確標題。

如果您正在提供PDF,Java需要找出它的位置並將其託管在您定義的RESTful資源的url下。

如果它是動態的,您的PDF庫(我過去使用iText)需要能夠輸出PDF二進制文件並通過您定義的RESTful資源提供。

0

不知道這是否與您的問題有關 - 但我已經看到Adobe Acrobat不能很好地處理HTTP範圍標題,如果除了範圍之外說你會發出一些非常奇怪的範圍請求並忽略部分內容標題你發回。只是一個警告。