首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Jasper显示CLOB

用Jasper显示CLOB
EN

Stack Overflow用户
提问于 2015-08-14 02:31:09
回答 2查看 5.9K关注 0票数 0

我在Jasper中的查询得到了CLOB数据,但是我无法在我的报告中显示它,我甚至尝试了我在这个论坛中找到的一些解决方案。

这两种方法都不起作用:

代码语言:javascript
复制
new BufferedReader(new InputStreamReader($F{clob_data}.getAsciiStream())).readLine()


$F{clob_data}.getSubString( 1l, ( new Long( $F{clob_data}.length() ) ).intValue() )

即使在没有错误的情况下调试,在web应用程序中运行它之后,它也会显示:

代码语言:javascript
复制
error=net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression : 
    Source text : ...
Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to oracle.sql.CLOB

我的报告中的CLOB字段:

代码语言:javascript
复制
<field name="clob_data" class="oracle.sql.CLOB"/>

这就是我如何显示我的CLOB字段:

代码语言:javascript
复制
<textFieldExpression class="java.lang.String"><![CDATA[$F{clob_data}.getSubString( 1l, ( new Long( $F{clob_data}.length() ) ).intValue() )]]></textFieldExpression>

<textFieldExpression class="java.lang.String"><![CDATA[new BufferedReader(new InputStreamReader($F{clob_data}.getAsciiStream())).readLine()]]></textFieldExpression>

没有textFieldExpression for class="oracle.sql.CLOB"

有什么简单的方法吗?

更新:我的问题就像这家伙一样,仍然没有解决办法:

http://iswwwup.com/t/1b800f433463/how-jasperreports-display-clob-field-with-html-tags.html

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-01 09:39:20

好了。我找到了一些技巧来解决这个没有答案的问题。众所周知,Varchar2只支持4000个字符。因此,我想出了一个技巧,在查询中用CLOB数据的一部分剪切,如下所示:

代码语言:javascript
复制
select DBMS_LOB.SUBSTR(clob_field, 4000, 1) as clob_data_1 
select DBMS_LOB.SUBSTR(clob_field, 2000, 4001) as clob_data_2
from table

如您所见,我分别将CLOB数据放在clob_data_1和clob_data_2中,因此它仍然充当字符串。在我的例子中,我只使用了6000个字符。DBMS_LOB.SUBSTR是一个用于子字符串数据的oracle函数。

在我的报告中,我可以这样简单地组合这个专栏:

代码语言:javascript
复制
$F{clob_data_1}+$F{clob_data_2}

我希望这个解决方案能帮助像我这样有类似问题的人。

票数 2
EN

Stack Overflow用户

发布于 2015-08-14 04:01:10

尝试通过添加"“或调用String.valueOf()从CLOB生成一个字符串obiect。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32001392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档