2011-09-02 168 views
0

我有一个xml,可以从包含jasperreports的数据库中恢复。下面是摘录:如何修改JasperReport中的<staticText>元素

<staticText>......<text><![CDATA[Entidad Bancaria:]]></text></staticText> 

我希望通过编程替代CDATA元素的内容,然后重新生成JasperReport的,但我发现,API不允许这样做(或者它太难图如何)。所以我试图将jasper xml转换成一个字符串,从字符串到Inputstream(以匹配JasperFillManager.fillReport()方法的签名),但编译失败......有谁知道如何以正确的方式完成此操作? 谢谢!

回答

2

静态文本不会被编程改变。为什么不只是将staticText更改为textField,然后使用参数? XML改变到:

<textField><textFieldExpression><![CDATA[$P{banc}]]></textFieldExpression></textField> 

然后设置的banc值编程,并把它传递给fillReport()

+0

是的,我在想这样的事情了。我会试试看。谢谢! – misterzigzag