JasperReports: функция конкатенации не найдена
Я разрабатываю некоторые отчеты с Jaspersoft Studio.
У меня есть веб-приложение, которое должно принимать запросы REST и превращать их в скомпилированные отчеты.
Так что у меня есть некоторые из JasperReports банки входят:
- groovy-all-2.0.1.Джар
- iText-2.1.7.СП2.Джар
- jasperreports-5.2.0.Джар
проблема в том, что когда я компилирую свой отчет и запускаю из Jaspersoft Studio, работает отлично.
Но когда я компилирую и запускаю его из своего веб-приложения, он выдает исключение:
net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression :
Source text : CONCATENATE($V{startString}, " - ", $V{endString})
at net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:244)
at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:591)
at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:559)
...
Caused by: net.sf.jasperreports.engine.JRRuntimeException: Function CONCATENATE not found
когда я меняю свой CONCATENATE
вызов в отчете работает нормально.
таким образом, это оставляет меня с решением, что мне не хватает одного из JasperReports банки, но какой?
1 ответов
вы также должны добавить jasperreports-функции-5.2.0.Джар в вашем classpath.
эта библиотека содержит net.научная фантастика.jasperreports.функции.норматив.TextFunctions класс объединения.
вы можете найти этот артефакт в http://jaspersoft.artifactoryonline.com/jaspersoft/jr-ce-releasesMaven репозитория.
фрагмент из моего теста пом.в XML:
<repositories>
<repository>
<id>jr-ce-releases</id>
<url>http://jaspersoft.artifactoryonline.com/jaspersoft/jr-ce-releases</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<version>5.2.0</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports-functions</artifactId>
<version>5.2.0</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.1</version>
</dependency>
</dependencies>
на net.научная фантастика.jasperreports.jasperreports-функции:5.2.0 артефакт зависит от Joda времени.Joda времени:2.1 артефакт-вы также должны добавить в classpath Joda времени-2.1.Джар
Примечания:
вы можете найти более подробную информацию в пользовательские функции в выражениях отчета статьи