-2

嗨朋友们,我是 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 服务过程一样,它将该文件发送到客户端,浏览器下载弹出窗口将出现保存或打开应该出现。点击保存保存。

4

1 回答 1

0

得到解决方案检查这里

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

于 2013-01-24T09:16:20.080 回答