Ошибка класса не найдена при запуске отчета в Grails-Jasper на сервере Tomcat

Я использую плагин Jasper в своем проекте Grails. Приложение хорошо работает при работе в NetBeans. Но после развертывания на Tomcat все, кроме отчетов, работает хорошо. Когда я пытаюсь запустить отчет (jasper), начинается ад. Выдает ошибку "Класс не найден.

2014-01-29 09:47:43,280 [http-bio-8080-exec-10] ERROR errors.GrailsExceptionResolver  - ClassNotFoundException occurred when processing request: [GET] /Ensign/jasper/index
org.joda.time.ReadableInstant. 
Stacktrace follows:
java.lang.ClassNotFoundException: org.joda.time.ReadableInstant
        at java.lang.Class.forName(Class.java:270)
        at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForRealName(JRClassLoader.java:157)
        at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForName(JRClassLoader.java:115)
        at net.sf.jasperreports.functions.FunctionsBundle.addFunctionClass(FunctionsBundle.java:84)
        at net.sf.jasperreports.functions.FunctionsBundle.<init>(FunctionsBundle.java:54)
        at net.sf.jasperreports.functions.FunctionsRegistryFactory.createRegistry(FunctionsRegistryFactory.java:76)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.instantiateRegistry(DefaultExtensionsRegistry.java:239)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:214)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:162)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getRegistries(DefaultExtensionsRegistry.java:133)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:105)
        at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:83)
        at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:121)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:88)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:103)
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:61)
        at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:179)
        at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:81)
        at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446)
        at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:407)
        at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:824)
        at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:195)
        at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)

Я использую версии Grails 2.2.4 Jasper plugin 1.7.0 Tomcat 7.0.34.

Кто-нибудь сталкивался с этой проблемой? Любая помощь или направление будут высоко оценены.


person Gsb    schedule 29.01.2014    source источник
comment
Можете ли вы опубликовать свой BuildConfig.groovy?   -  person Manuel Vio    schedule 29.01.2014


Ответы (1)


Похоже, что на сервере вам не хватает библиотеки Joda Time.

Загрузите файл joda-time.jar и поместите его в папку $ Каталог TOMCAT_HOME/lib/. Затем перезапустите Tomcat, и ошибка должна исчезнуть.

person Jordi Vilaplana    schedule 25.04.2014