2015-11-21 40 views
0

從來就創建了一個Web服務的獲取文件:流文件,並開始在桌面上的應用程序打印作業

@Stateless 
@Path("/print") 
public class PictureWebservice { 

    @GET 
    @Path("/startPrint") 
    @Produces(MediaType.APPLICATION_OCTET_STREAM) 
    public Response getFile() { 

     String path = "/mypath.JPG"; 
     File file = new File(path); 
     return Response.ok(file, MediaType.APPLICATION_OCTET_STREAM) 
      .header("Content-Disposition", "attachment; filename=\"" + file.getName() + "\"") //optional 
      .build(); 
    } 
} 

我會從另一個PC呼叫(在它運行的另一個桌面應用程序)的REST Web服務因爲我需要此文件(或流)在此桌面應用程序上進行打印。

這裏我的工作流程:

1)獲取文件(影像)調用webservice的test.png

2)上運行桌面應用程序中獲得的文件(也許流)

的PC?

3)桌面應用程序將在PC

首先,啓動打印作業:

1)我怎樣才能做到這一點?

2)我應該將文件存儲在桌面應用程序PC上嗎?因爲我不需要該文件只用於prinint?

請問你能幫助我嗎?

回答

0
  1. 這取決於您選擇用哪種語言編寫桌面應用程序。我將假設Java。
    1. 創建一個URL的REST服務HttpURLConnection
    2. 獲取從HttpURLConnection輸入流,
    3. 解碼從數據流中的數據與ImageIO.read()一個BufferedImage,並且使用的Graphics2D和打印API來打印它。
  2. 通過「物理存儲」,你的意思是將它保存到磁盤?根據您需要對這些圖像做什麼 - 以及在什麼時間範圍內 - 答案應該相當清楚。

希望有所幫助。

+0

謝謝你的迴應。你有一些代碼嗎?是的我的意思是保存在磁盤上。這是必要的嗎?是的,我正在使用JAVA – internet

+0

我有很多代碼,但它都在我的腦海中。其他人花時間在互聯網上張貼他們的 - 請使用搜索功能(或谷歌)來找到它。 –

相關問題