读书人

关于连接搜索引擎,该如何解决

发布时间: 2012-01-10 21:26:51 作者: rapoo

关于连接搜索引擎
这是在tomcat下面的:
出现404和500错误:
________________________________
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN ">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME= "Generator " CONTENT= "EditPlus ">
<META NAME= "Author " CONTENT= " ">
<META NAME= "Keywords " CONTENT= " ">
<META NAME= "Description " CONTENT= " ">
</HEAD>

<BODY>
<FORM METHOD=POST ACTION= "http://127.0.0.1:8080/myweb/search ">
<INPUT TYPE= "text " NAME= "searchString "> <br>
<INPUT TYPE= "text " NAME= "numResults " value=10 size=3> <br>
<INPUT TYPE= "radio " NAME= "searchEngine " value= "goole ">
<INPUT TYPE= "submit " value= "search ">

</FORM>

</BODY>
</HTML>
___________________________________
servlet :
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.net.*;
public class search extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
{
String searchString = request.getParameter( "searchString ");
if(searchString==null&&searchString.length()==0)
{
reportProblem(response, "miss searchString ");
return;
}
searchString = URLEncoder.encode(searchString);
String searchEngine = request.getParameter( "searchEngine ");
if(searchEngine == null)
{
reportProblem(response, "miss searchEngine ");
}
SearchSpec[] commonSpecs = SearchSpec.getCommonSpecs();
for(int i = 0;i <commonSpecs.length; i++)
{
SearchSpec searchSpec = commonSpecs[i];
if(searchSpec.getName().equals(searchEngine))
{
String url = searchSpec.makeURL(searchString, "10 ");
response.sendRedirect(url);
return;
}
}
reportProblem(response, "Can 't search engine ");

}

private void reportProblem(HttpServletResponse response,String message)
throws ServletException,IOException
{
response.sendError(response.SC_NOT_FOUND, " <H2> "+message+ " </H2> ");

}

public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
{
doGet(request,response);
}

};
//______________________________________________________________________


public class SearchSpec
{
private String name, baseURL,numResultSuffix;

private static SearchSpec[] commonSpecs =
{
new SearchSpec( "google ", "http://www.google.com/search?q= ", "&num= ")
};

public SearchSpec(String name,String baseURL,String numResultSuffix)
{
this.name = name;
this.baseURL = baseURL;
this.numResultSuffix = numResultSuffix;
}

public String makeURL(String searchString,String numResults)
{
return (baseURL + searchString + numResultSuffix + numResults);
}
public String getName()
{
return name;
}

public static SearchSpec[] getCommonSpecs()
{
return(commonSpecs);
}
};

[解决办法]
错误 404 - 文件或目录未找到。

可能是路径不对或没有发布

500 - 服务器发生内部错误

把错误代码发上来看看
[解决办法]
是不是你的http://127.0.0.1:8080/myweb/search这个servlet发布有问题,
直接访问这个servlet可以访问到么?
[解决办法]
一楼的回答看了吧

你的错误报告太笼统。
说详细一点。

读书人网 >Java Web开发

热点推荐