Grails JCaptcha图像不';t显示

Grails JCaptcha图像不';t显示,grails,groovy,captcha,Grails,Groovy,Captcha,很抱歉问这个问题,但我用谷歌搜索了一下,似乎没有人有这种东西。我使用GGTS(Grails&Groovy工具套件)安装了名为JCaptcha的Grails插件。在我的项目中,我遵循了此链接中的示例: 嗯,页面加载了一个损坏的图像,“查看源”选项向我显示: <img id="imageCaptcha" src="/myproject/jcaptcha/jpeg/imageCaptcha?id=1374498423" height="40px" width="40px" /> <b

很抱歉问这个问题,但我用谷歌搜索了一下,似乎没有人有这种东西。我使用GGTS(Grails&Groovy工具套件)安装了名为JCaptcha的Grails插件。在我的项目中,我遵循了此链接中的示例:

嗯,页面加载了一个损坏的图像,“查看源”选项向我显示:

<img id="imageCaptcha" src="/myproject/jcaptcha/jpeg/imageCaptcha?id=1374498423" height="40px" width="40px" />
<br> <br>
<input type="text" name="captchaResponse" value="" id="captchaResponse" />
<br> <br>
我配置的标签是:

<jcaptcha:jpeg name="imageCaptcha" height="40px" width="40px"/>
<br> <br>
<g:textField name="captchaResponse" value="" />
<br> <br>


我不明白发生了什么,因为我还在学习Grails。我是否需要从示例中添加其他内容?谢谢。

如果您使用的是一个安全插件,比如Spring security插件,并且没有向未登录的用户打开/myproject/jcaptcha/,则可能会发生这种情况。那么,在这种情况下,如何继续?由于用户将要创建其帐户,这就是验证码的原因,因此他没有登录。控制器呈现图像,因此,由于用户在注册过程中看到图像,该控制器可能需要向未登录的用户打开。否则,您只能在登录时渲染它,如果您没有登录并尝试注册,您将看到一个损坏的图像。如果您使用的是Spring安全性,请尝试为/myproject/jcaptcha/**Ebenezer添加一个“IS_AUTHENTICATED_匿名”规则,谢谢您的回答,但我删除了Spring安全性,它不起作用。和以前一样的错误。也许是另外一回事,但由于Grails是一个黑盒子,我似乎要从代码中删除这个验证码。奇怪的是,ReCaptcha工作得很完美,但我们需要改变到JCAPTCHA或SimpleCaptcha。他们两个都不工作。但是再次感谢你。的确,不客气,很抱歉听到它不起作用。
<jcaptcha:jpeg name="imageCaptcha" height="40px" width="40px"/>
<br> <br>
<g:textField name="captchaResponse" value="" />
<br> <br>
def jcaptchaService
def index = { }

def processTheForm() {

    //Captcha

        if (jcaptchaService.validateResponse("imageCaptcha", session.id, params.captchaResponse)) {
             //"Text matches" : "Text doesn't match"
            System.out.println("captcha!!!");
        }