在使用eclipse和tomcat 7.0开发web项目的时候,上传文件的表单常常需要使用servlet来处理,下面的链接处作者给出了一个很好的例子:点击打开链接。
然而我在使用的过程中,遇到了“resource not found”的错误,经过研究排查,问题出在项目web.xml的配置上。
- <servlet-mapping>
- <servlet-name>FileUploadServlet</servlet-name>
- <url-pattern>/servlet/fileServlet</url-pattern>
- </servlet-mapping>
例如,form所在的文件夹为项目根目录下view文件夹,那么action的正确写法应该为: action="../servlet/fileServlet" (..指向上级文件)。
事实上,也可以直接将servlet映射到调用文件所在的文件夹,例如:
<servlet-mapping>
<servlet-name>FileUploadServlet</servlet-name>
<url-pattern>/view/fileServlet</url-pattern>
</servlet-mapping>
这样,form的action即可写为:action="fileServlet"。
这样看来,当某个source无法被找到时,很可能就是文件引用地址的问题。