以前工作的Java servlet现在在'Clean'之后不再工作 - Tomcat v7.0和Eclipse



所以我收到了一个Eclipse项目,我在Eclipse中打开了这个项目,并将其转换为一个web项目,并开始为它编写servlet+JSP页面。它运行得很好,直到今天早上我使用Eclipse的内置clean函数清理了这个项目。现在我得到的404带有"请求的资源不可用",它以前工作得很好。这是Servlet代码:

package servlets;
import is2.data.SentenceData09;
import is2.lemmatizer.Lemmatizer;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class FYPServlet
*/
@WebServlet("/FYPServlet")
public class FYPServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* Default constructor. 
*/
public FYPServlet() {
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
if(request.getParameter("sentence")!=null){
//Create container
SentenceData09 sentence = new SentenceData09();
//Split input up
String[] words = request.getParameter("sentence").split(" ");
String lastword = words[words.length-1];
int sizeoflastword = lastword.length();
//If sentence has a full stop, remove it
if(lastword.charAt(sizeoflastword-1)=='.'){
words[words.length-1] = lastword.substring(0,sizeoflastword-1);
}
//Add <root> to start and a full stop to end
String[] fullsentencewords = new String[words.length+2];
fullsentencewords[0] = "<root>";
int i=1;
for(String word : words){
fullsentencewords[i] = word;
i++;
}
fullsentencewords[fullsentencewords.length-1] = ".";
//Initialise the container
sentence.init(fullsentencewords);
//Give lemmatizer location of model
is2.lemmatizer.Options optsLemmatizer = new is2.lemmatizer.Options(new String[] {"-model","C:/Users/Illuria/Downloads/small-models-english/small-models-english/models/lemmatizer-eng-4M-v36.mdl"});
//Create lemmatizer
Lemmatizer lemmatizer = new Lemmatizer(optsLemmatizer);
//Apply the lemmatizer
lemmatizer.apply(sentence);
//Display the lemmata
for (String l : sentence.plemmas) System.out.println("lemma : "+l); //TODO: Push this to the new page
request.setAttribute("lemmas", sentence.plemmas);
request.getRequestDispatcher("ParseDisplay.jsp").forward(request, response);
}else{
response.sendRedirect("EntryForm.jsp");
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request,response);
}

我得到的确切404是:HTTP状态404-/mate-tools-2/FYPServlettype:状态报告消息:/mate-tools-2/FYPServletdescription:请求的资源不可用

不幸的是,我是一个网络开发的新手,所以任何帮助都将不胜感激!

不确定您是否仍有问题,但有时只是清洁并没有帮助。我从Tomcateclipse中删除了webapp(右键单击Tomcat并执行"添加或删除"),清理它并将其添加回来。如果这有帮助,请告诉我们。

最新更新