Plugin Grails Rendering memberikan java.lang.ClassNotFoundException saat diterapkan

Saya telah mengikuti tutorial ini berhasil dan berfungsi dengan baik di localhost. Ini tentang menggunakan plugin rendering grails. Ini berfungsi dengan baik dan semuanya di LOCALHOST, tetapi ketika saya menerapkan aplikasi, atau bahkan hanya menjalankan grails run-war, plugin rendering tidak lagi berfungsi. Ini memberikan beberapa kesalahan aneh. :(

Saya menggunakan grails 2.0.0 dengan plugin rendering 0.4.3 dan inilah isi BuildConfig.groovy saya:

plugins {
        runtime ":hibernate:$grailsVersion"
        runtime ":jquery:1.7.1"
        runtime ":resources:1.1.5"
        compile ":rendering:0.4.3"

        build ":tomcat:$grailsVersion"
    }

Kesalahannya adalah ini:

2012-09-27 17:08:47,714 [http-8643-1] ERROR errors.GrailsExceptionResolver  - ClassNotFoundException occurred when processing request: [GET] /profile/renderFormPDF/1
org.springframework.mock.web.MockHttpServletRequest. Stacktrace follows:
java.lang.ClassNotFoundException: org.springframework.mock.web.MockHttpServletRequest
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.getDeclaredMethods(Class.java:1791)
    at org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:46)
    at org.codehaus.groovy.util.LazyReference.get(LazyReference.java:33)
    at grails.plugin.rendering.document.RenderEnvironment.init(RenderEnvironment.groovy:33)
    at grails.plugin.rendering.document.RenderEnvironment.with(RenderEnvironment.groovy:69)
    at grails.plugin.rendering.document.RenderEnvironment.with(RenderEnvironment.groovy:61)
    at grails.plugin.rendering.document.XhtmlDocumentService.generateXhtml(XhtmlDocumentService.groovy:68)
    at grails.plugin.rendering.document.XhtmlDocumentService.createDocument(XhtmlDocumentService.groovy:38)
    at grails.plugin.rendering.RenderingService.render(RenderingService.groovy:34)
    at grails.plugin.rendering.RenderingService.render(RenderingService.groovy:33)
    at grails.plugin.rendering.RenderingService.render(RenderingService.groovy:63)
    at com.icodeya.ProfileController.renderFormPDF(ProfileController.groovy:108)
    at net.stax.appserver.webapp.RequestMonitorValve.invoke(RequestMonitorValve.java:35)
    at net.stax.appserver.admin.StaxApplicationQueryValve.invoke(StaxApplicationQueryValve.java:49)
    at net.stax.appserver.webapp.RequestSetupValve.invoke(RequestSetupValve.java:31)
    at java.lang.Thread.run(Thread.java:662)

person ShootingStar    schedule 27.09.2012    source sumber
comment
Saya memiliki masalah yang sama dan tidak ada solusi untuk itu (menerapkan perang terhadap appfog/cloudfoundry)   -  person whitenexx    schedule 01.01.2013


Jawaban (1)


Itu ada di toples uji pegas yang ada di lingkungan dev tetapi tidak disertakan dalam file WAR. Menambahkan

runtime 'org.springframework:spring-test:3.1.0.RELEASE'

ke bagian dependencies dari BuildConfig.groovy.

person Burt Beckwith    schedule 01.01.2013
comment
Terima kasih Burt, menemukan solusi ini juga memecahkan masalah serupa saat menggunakan plugin mail 1.0.3. - person arcseldon; 07.03.2014
comment
Jika Anda menggunakan Grails 2.3.7, gunakan org.springframework:spring-test:3.2.8.RELEASE karena merupakan dependen untuk org.grails:grails-plugin-testing:2.3.7 - person genuinefafa; 10.04.2014
comment
Untuk versi Grails yang Anda gunakan, jalankan grails dependency-report dan temukan dependensi untuk org.grails:grails-plugin-testing. Salah satunya adalah org.springframework:spring-test:x.x.x.RELEASE dan gunakan itu. - person AndrewW; 05.08.2014
comment
Dalam kasus saya, masalah ini terjadi ketika saya menggunakan plugin rendering bersama dengan plugin Standalone. Untuk Grails 2.4.3 Saya menggunakan versi berikut: runtime 'org.springframework:spring-test:4.0.6.RELEASE' dan berfungsi dengan baik. - person cantoni; 06.01.2015