Jasper reports WebLogic上的JasperReports无法编译条件操作

Jasper reports WebLogic上的JasperReports无法编译条件操作,jasper-reports,weblogic,Jasper Reports,Weblogic,我有一个在WebLogic上运行的web应用程序。该应用程序支持JasperReports,多年来一直运行良好 最近,一些用户开始包含更复杂的JRXML文件。报告的幕后Java文件现在包含条件操作?: 表达方式: <variable name="Start_Date" class="java.util.Date"> <variableExpression><![CDATA[]]></variableExpression> <ini

我有一个在WebLogic上运行的web应用程序。该应用程序支持JasperReports,多年来一直运行良好

最近,一些用户开始包含更复杂的JRXML文件。报告的幕后Java文件现在包含条件操作?:

表达方式:

<variable name="Start_Date" class="java.util.Date">
   <variableExpression><![CDATA[]]></variableExpression>
   <initialValueExpression><![CDATA[
$P{Period}.intValue()==1 ?
DateUtils.truncate(DateUtils.addMonths(new Date(),-1), java.util.Calendar.MONTH)
:
$P{Period}.intValue()==2 ?
DateUtils.truncate((DateUtils.addWeeks(new Date(),-1)),java.util.Calendar.DATE)
:
$P{Period}.intValue()==3 ?
DateUtils.truncate((DateUtils.addDays(new Date(),-1)),java.util.Calendar.DATE)
: new Date()]]></initialValueExpression>
</variable>
我目前的猜测是,从来自JDK1.5,那么JasperReports可能会将编译器设置为vesion 1.4

JDT编译器设置在Weblogic路径中。它是1.6版的。 WebLogic 10.3 JasperReports 3.5 iReport 4.1.3-但设置为JR 3.5 请让我知道我错过了什么


是否有我需要的配置属性?

报告语言groovy或java是什么?您是否尝试在iReport中预览此报告?我认为这是一个很好的开始,可以用一些基本的东西来替换诸如DateUtils.truncateDateUtils.addmonthnew Date,-1,java.util.Calendar.MONTH之类的expression,例如:new Date2011,5,14-出于调试/诊断目的,表达式末尾是否有分号?报告语言是java。iReport完美地显示了报告。我用一些简单的东西替换了参数expressoin——明天我将修复这个示例。至于分号-既然Jasper构建了Java表达式,它应该自动放置分号吗?iReport不会将分号放在表达式的末尾。iReport不会在JRXML中添加条件表达式。Jasper Report将表达式构建为Java文件的一部分。我错了吗?
Error evaluating expression : 
Source text : 
$P{Period}.equals(new Integer(1)) 
? 
DateUtils.truncate(DateUtils.addMonths(new Date(),-1),java.util.Calendar.MONTH)
:
  $P{Period}.equals(new Integer(2)) 
  ?
  DateUtils.truncate((DateUtils.addWeeks(new Date(),-1)),java.util.Calendar.DATE)
  :
  new Date()
  ;