上传文件时出现很多错误。但是,它们在我的本地主机上完美运行。
我有一个表单,其动作是一个servlet。我知道文件的结构迫使我将所有.class文件放在目录/WEB-INF/classes
中。问题是当我将其写为表单操作/WEB-INF/classes/myservlet
时,我收到此消息:
"You don't have permission to access /WEB-INF/classes/myservleton this server".
我需要做些什么来纠正这个问题?
更新:这是web.xml
<servlet>
<servlet-name>addservlet</servlet-name>
<servlet-class>app.addservlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>addservlet</servlet-name>
<url-pattern>/addservlet</url-pattern>
</servlet-mapping>
这是我提交表单时请求的网址:
http://mydomain.com/addservlet
我得到Not Found错误
The requested URL /addservlet was not found on this server
答案 0 :(得分:0)
您需要在web.xml文件中映射servlet ...请参阅http://static.springsource.com/projects/tc-server/6.0/getstart/rgswebxml.html中的第一个示例
即
<?xml version="1.0" encoding="ISO-8859-1" ?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<servlet>
<servlet-name>myservlet</servlet-name>
<servlet-class>my.package.myservlet</servlet-class> (or what ever package you use)
</servlet>
<servlet-mapping>
<servlet-name>myservlet</servlet-name>
<url-pattern>/myservlet</url-pattern>
</servlet-mapping>
</web-app>
然后将动作指向/ myservlet
答案 1 :(得分:0)
当正确的URL发送到服务器时,servlet运行java类。这是通过您必须在web.xml中定义的“mapping”属性完成的。始终保护WEB-INF下的资源不被URL访问。