gpt4 book ai didi

java - 在 Netbeans 7.3 中配置 Java HTTP servlet

转载 作者:太空宇宙 更新时间:2023-11-04 07:37:26 24 4
gpt4 key购买 nike

我最近升级到了 Netbeans 7.3,但我不太了解它的项目配置和界面。例如,曾经我曾经看到带有java类的源包,现在我只能在"file"面板中看到它们。我有一个名为batchUtility 的包,其中包含一个名为batchQueryServlet 的HTTP servlet。

我必须通过 jQuery.ajax() 函数将 JSON 发布到 batchQueryServlet,但无法映射 servlet。

由于 Netbeans 7.3 没有提供配置文件,因此我自己创建了一个配置文件,单击 web-inf 文件夹>new>web.xml 文件并编写如下:

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<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>batchQueryServlet</servlet-name>
<servlet-class>/batchUtility.batchQueryServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>batchQueryServlet</servlet-name>
<url-pattern>/batchQueryServlet</url-pattern>
</servlet-mapping>
</web-app>

但是,在发出请求时,我仍然收到 404 错误:

  $.ajax({
url: "/batchQueryServlet",
contentType: 'application/json',
data: json,
Accept: "text/html",
success: function(data, textStatus, jqXHR) {
alert(data);
},
type: "POST"
});

现在,我很确定它找不到该类,因为如果我调用 servlet 名称,我会收到 classNotFound 异常。我该如何解决这个问题? (一个快速但肮脏的解决方案是使用 JSP,但我宁愿不这样做)。

PS:我使用的是Tomcat 7.0.34版本。

编辑 问题是我应该使用正确的 src/java 路径来存储我的 .java 类,而不是普通文件夹(这就是我看不到包的原因)。现在我已经修好了。不管怎样,谢谢您的宝贵时间!

最佳答案

你有一个前导斜杠

<servlet-class>/batchUtility.batchQueryServlet</servlet-class>

删除它,一切就应该正常了。

将 Ajax url: 更改为 "batchQueryServlet""/web-app-name/batchQueryServlet"

编辑:

部署后,您的 Web 应用程序的文件夹结构应如下所示:(/ 表示目录)

tomcat-home/
|- webapps/
|- BatchWebApp/ //<-- Context-Root (Web-app's name)
|- *.html, *.jsp etc.
|- WEB-INF/
|- web.xml
|- lib/
|- *.jar files
|- classes/ //<-- ALL your servlets go here
|- batchUtility/ //<-- with the required package/folder structure
|- batchQueryServlet.class

如果您使用 IDE(例如 Eclipse),它会为您执行相同的操作。

关于java - 在 Netbeans 7.3 中配置 Java HTTP servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16640940/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com