首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在GWT-Ext 2.0.3中实现Captcha

在GWT-Ext 2.0.3中实现Captcha
EN

Stack Overflow用户
提问于 2011-07-05 09:59:29
回答 1查看 1K关注 0票数 2

大家好,

我使用的是GWT-Ext 2.0.3。我在我的项目中实现了SimpleCaptcha,当我重新加载该面板时,无法刷新captcha映像,我正在使用simplecaptcha-1.2.1.jar文件来执行captcha。

  • I创建了一个servlet来显示captcha图像.

代码语言:javascript
复制
import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import nl.captcha.Captcha;
import nl.captcha.backgrounds.GradiatedBackgroundProducer;
import nl.captcha.servlet.CaptchaServletUtil;
import nl.captcha.servlet.SimpleCaptchaServlet;

public class ExtendedCaptchaServlet  extends SimpleCaptchaServlet  {

    private static final long serialVersionUID = -3280477565969758716L;

    //@Override
    public void doGet(HttpServletRequest req, HttpServletResponse resp)

    throws ServletException, IOException {

        HttpSession session = req.getSession();

        Captcha captcha = new Captcha.Builder(200, 50)

        .addText()

        .addBackground(new GradiatedBackgroundProducer()).addNoise()

        .addBorder()

        .build();

        session.setAttribute("captcha", captcha);
        CaptchaServletUtil.writeImage(resp, captcha.getImage());

    }
}

  • Entry in web.xml

代码语言:javascript
复制
<servlet>
    <servlet-name>SimpleCaptcha</servlet-name>
    <servlet-class> com.server.test.ExtendedCaptchaServlet 
    </servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>SimpleCaptcha</servlet-name>
    <url-pattern>/SimpleCaptcha.jpg</url-pattern>
</servlet-mapping>

  • My GWT Panel

代码语言:javascript
复制
FormPanel formPanel = new FormPanel();
Image captchaImage = new Image("/SimpleCaptcha.jpg");
formPanel.add(captchaImage);

每当我从浏览器刷新页面时,它都会显示新的captcha图像。但当我重新加载表单面板时,它不会显示图像。

有谁可以帮我?

EN

回答 1

Stack Overflow用户

发布于 2012-07-26 12:06:11

尝试添加“时间戳”

代码语言:javascript
复制
Image captchaImage = new Image("/SimpleCaptcha.jpg?" + Math.floor(Math.random()*100));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6580870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档