演示简单的Ajax和Servlet实现失败

时间:2013-08-06 17:04:01

标签: java eclipse jquery setup-deployment servlets

我正在尝试演示简单的Ajax / Servlet请求。为此我在eclipse中创建了一个新的Dynamic web项目,并添加了一个简单的Servlet来接收请求并将相同的内容呈现给UI。我在web.xml中包含了我的Servlet详细信息。我使用Tomcat作为我的服务器。还没有构建脚本(此时我觉得不需要)

Servlet代码:

response.setContentType("text/html");
    PrintWriter out =response.getWriter();
    String txt = request.getQueryString();
    out.println(txt);

Js代码:

$(function(){
        $.get('/jirarequest','OK',function(op){
            $('#maindiv').appendTo(op);
        });

    });

Html代码:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>Jira-Synchronization</display-name>
<welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
</welcome-file-list>

<servlet>
    <servlet-name>JiraSyncServlet</servlet-name>
    <servlet-class>src.JiraSyncServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>JiraSyncServlet</servlet-name>
    <url-pattern>/jirarequest/*</url-pattern>
</servlet-mapping>

我的项目结构:enter image description here

我的HTML:

enter image description here

我在Fire bug中收到错误

"NetworkError: 404 Not Found - http://localhost:8080/jirarequest?OK"

我在浏览器中使用的网址是http://localhost:8080/Jira-Synchronization/index.html。我已经仔细检查了各种错字。我通过提出突破点调试,但调试器从未打过我的Servelt。我不确定是什么问题? URL错误或接线错误或设置错误的方式?

1 个答案:

答案 0 :(得分:1)

一些信息:

  • 404错误意味着Tomcat没有任何文件或servlet或任何暴露在该URL路径上的服务。

  • 500错误意味着Tomcat在该URL路径上暴露了一个servlet(或jsp),并且在尝试运行java代码时生成了意外异常。

我们知道需要改变的事物的集合:

  $.get('/jirarequest/whatever','OK',function(op){

<servlet>
    <servlet-name>JiraSyncServlet</servlet-name>
    <servlet-class>JiraSyncServlet</servlet-class>
</servlet>

另外,您可以在浏览器中输入此URL,然后输入OK:

http://localhost:8080/Jira-Synchronization/jirarequest/whatever?OK