3

我想用我的代码存储和部署报告模板。

考虑到这一点,运行报告是一个两步过程:

  • 上传或更新现有报告模板jrxml(它没有指向其他资源的链接,如图像)
  • 用我的数据运行它(这个已经完成

官方文档不包含更新报告模板的最小示例

通过JasperReports Server REST API上传/更新报告模板xml的原始请求是什么?

我试过这种方式

这是我的原始请求

这是回应

这是我在/var/lib/tomcat6/webapps/jasperserver/WEB-INF/logs/jasperserver.log中看到的

我究竟做错了什么?是什么400 error: could not find the binary content for resource: /Reports/product_structures_workshops意思?

4

2 回答 2

2

这适用于 Jasper 5.5+(但不适用于 5.1-,只返回404 Not Found“未找到指定页面”)。

上传

POST http://your-host:port/jasperserver/rest_v2/resources/path/to/resource/

Content-Type: application.repository.reportUnit+json

{
    "label": "Sample",
    "jrxml": {
        "jrxmlFile": {
            "label": "MyJRXML",
            "type":"jrxml",
            // encode your file in Base64 and put here
            "content": "PD94bWwg..."
        }
    }
}

更新

PUT http://your-host:port/jasperserver/rest_v2/resources/path/to/resource/myReport/

Content-Type: application.repository.reportUnit+json

{
    "label": "Sample",
    "jrxml": {
        "jrxmlFile": {
            "label": "MyJRXML",
            "type":"jrxml",
            // encode your file in Base64 and put here
            "content": "PD94bWwg..."
        }
    }
}

参考:

于 2014-11-12T14:20:30.367 回答
1

我们最终用 jasper 库编写了专有的本地 JAVA 应用程序,它做同样的事情

看起来这在较旧的 jasper 版本(> 5.2)中是可行的:

他们显着简化了 REST API(寻找 API v2)

https://community.jaspersoft.com/wiki/getting-started-rest-web-service-api

随着 v2 REST API 的完成,Jaspersoft 宣布弃用原始 REST API 并终止 SOAP 服务

于 2014-10-29T10:44:39.947 回答