如何在jasper中传递用户名和密码以及json数据源URL

时间:2019-12-05 11:04:52

标签: json jasper-reports jasperserver

如果我在子报表中使用JSON数据源来使用该URL获取一些JSON数据,如何在jasper中传递用户名和密码以及JSON数据源URL?

在主报告中:

<subreport>
    ...
    <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JsonDataSource("http://172.16.94.11:8081/api/v1/colorways/32a71f8d-15d67699834-UFXQ1MzCf...", "")]]></dataSourceExpression>
</subreport>

要访问URL,我们需要提供用户名密码,如果我直接在浏览器中通过如下所示的用户名密码,则可以使用,但是通过JasperReports Server,它会给出HTTP 201错误: http://username:pasword@172.16.94.11:8081/api/v1/colorways/32a71f8d-15d6 ...

我将数据源用于子报表,如下所示:

new net.sf.jasperreports.engine.data.JsonDataSource("http://172.16.94.11:8081/api/v1/colorways/32a71f8d-15d67699834-UFXQ1MzCfpneWo1Vnqn-nQ/", "")

1 个答案:

答案 0 :(得分:0)

我终于得到了它,创建了一个适配器并导出为xml,然后我通过在下面的参数中添加该xml作为子报表的数据源:

它正常工作。