当前位置: 首页 > 知识库问答 >
问题:

例外:java。ClassCastException:java。无法将lang.String转换为java。朗布尔

从渊
2023-03-14

我在使用Jaspersoft Studio和Oracle数据库时出错。一旦有一些数据,以下行

<printWhenExpression><![CDATA[$P{REPORT_TYPE}.substring(0,1)=="R"? $F{REASON_DELETED}:$F{REASON_ADOC}]]></printWhenExpression>

引发以下错误:

net.sf.jasperreports.engine.java.lang.java.lang.字符串不能转换为java.lang.布尔

我不明白,为什么Jasper Studio会将其转换为布尔值,因为它被定义为字符串:

<field name="REASON_ADOC" class="java.lang.String"/>
<field name="REASON_DELETED" class="java.lang.String"/>

SQL对我来说也很好:

NVL(cr.REASON_ADHOC,'-') AS reason_adoc,
NVL(cr.REASON_DELETED,'-') AS reason_deleted,

在视图/表格中:

REASON_DELETED  VARCHAR2(250)
REASON_ADHOC    VARCHAR2(4000)

共有1个答案

韩涵衍
2023-03-14

没错,表达式返回一个字符串。但是,printweenpression希望布尔表达式作为内容。根据文件:

一个布尔表达式的定义,它将决定是否应该打印元素或带。

现在还不清楚你想要实现什么。您可能想改用textFieldExpression

 类似资料:
  • 我正在抛出一个JSON异常,我不知道为什么会抛出它。我已经看了几乎所有和我一样的问题,但我认为我的不同。因此,我从一个网页获得一个JSONArray,它发送的JSON是有效的(我用验证器检查了它)。在JSONArray上执行getJSONObject时引发异常。 这正是它所说的(个人信息被标出): 这是我的Java代码: 错误发生在我去的行: 任何帮助都非常感谢。

  • 我正在开发一个android应用程序,我正在尝试使用Volley库。我无法解决的问题是关于JSON的。我检查了我的php文件、结果和Java代码,但仍然得到相同的错误。 有趣的是,截击日志不显示错误消息,但日志显示错误消息。 和 这是我的PHP代码: 结果如下: 和我的Java代码: 我也听说了GSON。这是解决办法吗?有人能帮帮我吗?提前感谢!!

  • 我为一个网站做了一个应用程序。它有一个JSON API。im试图获取结果的URL是:

  • 我不知道为什么,但是当我试图从JSON获取数据时,我得到了这个错误: JAVA无法在Jsonarray中转换lang.String 这是我的代码, 主要活动: JSON:

  • 我将客户数据对象存储为共享首选项(Android)中的JSON字符串,并尝试检索转换回客户对象的字符串并用于验证。从对象到JSON字符串的转换非常好,并且存储在首选项中(作为键值(字符串)对)。 当我尝试使用-我总是得到相同的错误值...类型java.lang.字符串不能转换为JSONObject。 我希望一双不同的眼睛能捕捉到我不能捕捉到的东西。带有数据的错误消息(屏蔽): Value 类型为j

  • 在这里,我试图将数据发送到我的web服务器,并使用解析json并将数据插入mysql数据库。我得到一个错误,表示值stdClass为