2015-11-21 36 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

我有很多代码,但它都在我的脑海中。其他人花时间在互联网上张贴他们的 - 请使用搜索功能(或谷歌)来找到它。 –

相关问题