我在尝试将 kaptcha.jar ( https://code.google.com/p/kaptcha/ ) 实施到 opencms 时遇到问题。
我添加了 jar 并且它已正确加载,就像在我的 jsp 中一样:
<%@ page import="com.google.code.kaptcha.servlet.KaptchaServlet" %>
<%
KaptchaServlet test = new KaptchaServlet();
String temp = test.getClass().getSimpleName();
%>
<div> Test : <%=test%></div>
正在显示:
Test : com.google.code.kaptcha.servlet.KaptchaServlet@14b1fda
所以我认为罐子已经加载(虽然我可能错了)。
在我的 web.xml 中,我添加了这个:
<servlet>
<servlet-name>Kaptcha</servlet-name>
<servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Kaptcha</servlet-name>
<url-pattern>/kaptcha.test</url-pattern>
</servlet-mapping>
重新启动我的服务器,并尝试访问以下 URL,总是得到 404/page 不存在:
- 本地主机/kaptcha.test
- 本地主机/opencms/kaptcha.test
- 本地主机/opencms/opencms/kaptcha.test
- 本地主机:8080/kaptcha.test
- 本地主机:8080/opencms/kaptcha.test
- 本地主机:8080/opencms/opencms/kaptcha.test
我做错了什么?为什么我的 servlet 不工作?
我在 Eclipse 的自定义动态 Web 项目中尝试了该 jar,它运行良好。在这个项目中,当我访问 /kaptcha.test 时,会显示一个图像,每次刷新页面时都会改变。
谢谢你的帮助。
注意:我使用的是 OpenCMS 7.0
马特