2010-01-14 19 views
5

Soy un novato en el servlet java/java. Necesito el simpleCaptcha para un formulario, usando html y javaservlet para el código. Con referencia a http://simplecaptcha.sourceforge.net/extending.html.Dónde poner Java Simple Captcha Builder?

Captcha captcha = new Captcha.Builder(200, 50) 
    .addText() 
    .addBackground() 
    .addNoise() 
    .gimp() 
    .addBorder() 
    .build(); // Required. 

Dónde (servlet Java) debería poner esta pieza de código con el fin de crear el código de imagen en html?

Muchas gracias.

Respuesta

8

Para extender SimpleCaptcha y personalizar su CAPTCHA, tengo entendido que tendrá que crear su propio HttpServlet (quizás se extienda a SimpleCaptchaServlet). Para hacerlo, te sugiero que descargues el source code y mires a SimpleCaptchaServlet o StickyCaptchaServlet. Esto es lo que el método de SimpleCaptchaServletdoGet() se parece a:

@Override 
public void doGet(HttpServletRequest req, HttpServletResponse resp) 
     throws ServletException, IOException { 

    Captcha captcha = new Captcha.Builder(_width, _height) 
     .addText() 
     .addBackground(new GradiatedBackgroundProducer()) 
     .gimp() 
     .addNoise() 
     .addBorder() 
     .build(); 

    CaptchaServletUtil.writeImage(resp, captcha.getImage()); 

    req.getSession().setAttribute(NAME, captcha); 
} 

Esto debería ser autoexplicativa: crear su propio servlet y poner su código personalizado Captcha Constructor en el método doGet(). Luego, siga las instrucciones de la sección Installing pero, en lugar de usar uno de sus servlets, declare el suyo en el web.xml. Finalmente, empaqueta/implementa tu aplicación. Un ejemplo se incluye en la distribución fuente bajo examples. Compruébelo si necesita más orientación sobre la estructura, las dependencias y el empaquetado de su aplicación web.

2

hey ¿ya has visto esta página? http://simplecaptcha.sourceforge.net/installing.html

esto es casi tan sencillo como parece, creo. Este proyecto te da algunos servlets de Capcha listos para usar. Solo tiene que asignarlos en su archivo web.xml. Puede seguir y crear el jsp que los llamará.

+0

@darren: Hola, gracias por responder. Vi el enlace que proporcionó, pero ese es el ejemplo de Sticky Captcha, que debe incluir sesión, y no hay personalización. Solo necesito un Captcha simple y algo de personalización en la imagen del captcha usando su constructor. Además, realmente necesito ayuda para poner eso en un servlet, ya que mi porción de validación está en un servlet, en lugar de jsp. –