【问题标题】:Java Web service that sends excel file to client将 excel 文件发送到客户端的 Java Web 服务
【发布时间】:2013-01-24 05:10:42
【问题描述】:

嗨,朋友们,我是 Web 服务的新手,他们在我的项目中要求应该创建一个 Web 服务来执行一些数据库交互过程和业务逻辑,而不是向请求的客户端发送一个 excel 文件[应该下载文件到客户端机器]。

  1. 我知道我们可以在 SOAP 和 RESTFULL 中发送附件。我想知道哪种是发送 excel 文件的最佳方法以及如何发送示例代码,以便我了解。

  2. 我知道 Web 服务通过 xml 进行通信 我想知道将 excel 文件转换为 xml 并将其从客户端发送到客户端 再次将其转换为 excel 是从性能和效率角度来看都可以的方法查看。

最后我想知道实现它的最佳方法和示例代码,以便我可以处理它。

更新的问题 这是我在项目 A 中的 Web 服务方法

@Path("/todo")
public class TodoResource
{
    @GET
    @Produces(MediaType.APPLICATION_OCTET_STREAM)
    public  Response getfile(){
     File file =new File("D:\\Test.xls"); // Initialize this to the File path you   want to serve.
     return Response.ok(file, MediaType.APPLICATION_OCTET_STREAM).build();
       }
} 

这在我创建客户端的项目 B 中

 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
   {

    // TODO Auto-generated method stub

    System.out.println(">>>>>>>>>>>>>>>>>Starting of Project Test Call >>>>>>>>>>>>>>>>>");
    ClientConfig config = new DefaultClientConfig();
    Client client = Client.create(config);
    WebResource service = client.resource(getBaseURI());

     //Get Excel Download

    System.out.println(":::::: The Application APPLICATION_OCTET_STREAM Response  :::::: ");
    System.out.println(service.path("rest").path("todo").accept(MediaType.APPLICATION_OCTET_STREAM).get(String.class));
    System.out.println(">>>>>>>>>>>>>>>>>Ending of Project Test Call >>>>>>>>>>>>>>>>>");

  }
 private static URI getBaseURI() {
        return UriBuilder.fromUri("http://localhost:8080/WebService_XML").build();
      }

我的要求是客户端将发送一些信息,如参数 1、参数 2 等,基于它将与数据库交互并创建一个文件。并且该文件应该发送到客户端。就像单击调用 web 服务过程一样,它将该文件发送到客户端,浏览器下载弹出窗口将出现保存或打开应该出现。点击保存保存。

【问题讨论】:

  • 不是最好的回答者,但我的经验主张使用 restful API
  • @JimGarrison 正在研究 restfull 我将编辑我的问题并发布代码。
  • 任何建议都会很棒

标签: java xml web-services rest soap


【解决方案1】:

得到解决方案check here

但是客户端呢,任何客户端[.net, php 等] 都可以访问它吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-05
    • 2018-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-02
    相关资源
    最近更新 更多