2010-04-14 79 views
1

我試圖用jcaptcha-1.0來介紹一個struts 1.3.8應用程序;我加入了JCaptcha的罐子應用lib和添加jcaptcha與struts集成

<%@ taglib uri="jcaptcha" prefix="jcaptcha"%> 

到我的形式

應用無法找到文件,所以我增加了以下的web.xml文件

<taglib-uri>jcaptcha</taglib-uri> 
<taglib-location>/WEB-INF/lib/jcaptcha-1.0-all.jar</taglib-location> 
</taglib> 

現在我得到空指針異常:

org.apache.jasper.JasperException: Unable to read TLD "META-INF/taglib.tld" from JAR file 

任何線索?歡迎使用支持struts的其他驗證碼的建議。

感謝

回答

2

嘗試<%@ taglib uri="http://jcaptcha.sourceforge.net" prefix="jcaptcha" %>

如果失敗,請嘗試<%@ taglib uri="/WEB-INF/jcaptcha.tld" prefix="jcaptcha"%>以及與此內容創建jcaptcha.tld文件中WEB-INF

<?xml version="1.0" encoding="ISO-8859-1" ?> 
<!-- 
    ~ JCaptcha, the open source java framework for captcha definition and integration 
    ~ Copyright (c) 2007 jcaptcha.net. All Rights Reserved. 
    ~ See the LICENSE.txt file distributed with this package. 
    --> 

<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, 
Inc.//DTD JSP Tag Library 1.1//EN" "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd"> 

<taglib> 
    <tlibversion>1.0</tlibversion> 
    <jspversion>1.1</jspversion> 
    <shortname>jcaptcha-struts-taglib</shortname> 
    <uri>http://jcaptcha.sourceforge.net</uri> 
    <info>JCAPTCHA Taglib for the base module</info> 

    <tag> 
     <name>question</name> 
     <tagclass>com.octo.captcha.module.struts.taglib.QuestionTag</tagclass> 
     <bodycontent>empty</bodycontent> 
     <info>Display the jcaptcha question for this session</info> 
    </tag> 
    <tag> 
     <name>message</name> 
     <tagclass>com.octo.captcha.module.taglib.MessageTag</tagclass> 
     <bodycontent>empty</bodycontent> 
     <info>Display the jcaptcha failure message for this session</info> 
    </tag> 
</taglib>