我是相对新的Java开发.. 我想创建一个Web服务(jax-ws)/ Web应用程序,它将接收一些输入并生成pdf,然后打开pdf在浏览器中。我设法创建pdf(使用itext)并使用servlet(使用FileInputStream等)在大型文件中打开它。 但是我不知道,如何从web服务中返回servlet。 我应该怎么做,所以当我通过servlet调用Web服务来接收pdf时?从Web服务返回一个pdf在浏览器
1
A
回答
1
如果您已经从servlet返回PDF,这意味着您的servlet发送PDF流作为输出,并可能将内容类型设置为“application/pdf”。这在浏览器中正常工作,这是正确的方法。
但是,您无法从浏览器轻松地调用Web服务(无论是JAX-WS还是任何其他堆栈)。 Web服务调用需要POST和严格定义的SOAP内容。但是,您可以使用AJAX调用Web服务,但这是一个不同的故事(请参阅REST)。
如果要从Web服务返回二进制数据(请记住Web服务是针对机器的,而不是针对使用Web浏览器的人),您有两种选择:使用base64序列化二进制数据或使用multipart HTTP响应(MTOM标准,参见例如:http://www.mkyong.com/webservices/jax-ws/jax-ws-attachment-with-mtom)。
相关问题
- 1. 从Web服务返回PDF
- 2. 寻找从一个浏览器连接到Web服务器
- 3. 从Windows服务启动Web浏览器
- 4. 返回一个java.util.List在Web服务
- 5. 从SharePoint查询Web服务返回的不一致的PDF URL
- 6. 浏览器和Web服务器通讯
- 7. 直接返回流到Web浏览器
- 8. 从Web服务返回XML
- 9. PHP:浏览器返回一个页面
- 10. 从iPhone浏览PDF文件并在服务器上上传
- 11. 发送浏览器cookie到Web服务
- 12. Web服务器在ASP.NET回调的Web浏览器客户端机制分析
- 13. WCF服务不返回任何结果在浏览器
- 14. 如何验证服务器端Web服务的浏览器IP
- 15. 浏览器从apache web服务器下载php文件
- 16. 实行网上从浏览器转换引擎,Web服务器
- 17. WCF Rest服务仅将硬编码数据返回给Web浏览器
- 18. 在浏览器中嵌入来自服务器的PDF
- 19. 有一个java web服务返回一个空的Web结果
- 20. 在Web服务返回多个值
- 21. 如何从$ .ajax从web服务返回
- 22. Jsoup从Web浏览器返回不同的输出
- 23. 继续点(session.Browse)在从OPC UA服务器浏览节点时返回null
- 24. 从网络浏览器返回价值
- 25. 谷歌浏览器返回503服务不可用
- 26. 在使用web服务器插件到达浏览器之前,从web服务器修改html repsonse?
- 27. JSF和浏览器返回
- 28. 从Android浏览器调用Web服务问题
- 29. 从检索的数据创建一个PDF,并返回PDF到浏览器没有第三方工具?
- 30. 调用一个web服务,从ios用wdsl2objc返回xml
非常感谢您的回答。因此,为了将PDF传递给客户端并使用Web服务,我必须使用流/字节arrray通过Web服务的方法“上传”生成的PDF。然后将此字节数组转换为一个编码为base64(?)的字符串,并返回字符串作为Web方法的返回类型? 之后,Web服务客户端(如servlet)将使用与第一次上传PDF相同的逻辑来检索数据? – Manos 2011-02-09 14:49:22