2017-04-07 26 views
0

我创建了war文件并部署到tomcat服务器中,但在提交注册页面(具有recaptcha)时发生了此错误,但未在本地计算机和应用程序中运行本地机器使用GGTS IDE。Grails:仅在运行在生产环境中的RestBuilder时出现异常tomcat服务器

以下是在生产服务器

errors.GrailsExceptionResolver - ClassNotFoundException occurred when processing request: [POST] /IFP/signup/completeSignUp 
grails.plugins.rest.client.RestBuilder. Stacktrace follows: 
java.lang.ClassNotFoundException: grails.plugins.rest.client.RestBuilder 
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) 
    at java.lang.Class.getDeclaredMethods(Class.java:1975) 
    at org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:46) 
    at org.codehaus.groovy.util.LazyReference.get(LazyReference.java:33) 
    at com.megatome.grails.recaptcha.ReCaptcha.checkAnswer(ReCaptcha.groovy:171) 
    at com.megatome.grails.RecaptchaService.verifyAnswer(RecaptchaService.groovy:147) 
    at com.controllers.portal.SignupController.completeSignUp(SignupController.groovy:42) 
    at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:198) 
    at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63) 
    at grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter.doFilter(GrailsAnonymousAuthenticationFilter.java:53) 
    at grails.plugin.springsecurity.web.authentication.RequestHolderAuthenticationFilter.doFilter(RequestHolderAuthenticationFilter.java:53) 
    at grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter.doFilter(MutableLogoutFilter.java:62) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 

从我看来这个异常的reCAPTCHA实施后发生的事情发生了错误。 请帮我解决这个问题。

回答

0

抛出java.lang.ClassNotFoundException:grails.plugins.rest.client.RestBuilder

明确指出,这个类是在生产战争或Tomcat失踪。

确保你在你的gradle配置为每plugin ref-doc设置适当的依赖关系:

compile "org.grails.plugins:rest-client-builder:2.1.1" 

检查那些罐子也存在于你的战争或Tomcat的classpath

+0

明白了,这是因为使用RestBuilder **类的recaptcha,它是从'grails-datastore-rest-client-3.1.4.RELEASE.jar'调用的。现在它的工作原理是复制这个jar文件放到tomcat的lib文件夹中。 –

0

文件grails-datastore-rest-client-3.1.4.RELEASE.jar复制到Tomcat lib文件夹解决了这个问题。 您可以从here下载jar文件。

相关问题