Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 调用servlet时找不到404_Java_Servlets_Glassfish - Fatal编程技术网

Java 调用servlet时找不到404

Java 调用servlet时找不到404,java,servlets,glassfish,Java,Servlets,Glassfish,我有一个简单的servlet,比如com.test.HelloWorld.class 然后我创建这些文件夹树: WEB-INF --> lib classes --> com --> test --> HelloWorld.class web.xml 其中web.xm

我有一个简单的servlet,比如
com.test.HelloWorld.class

然后我创建这些文件夹树:

WEB-INF -->
            lib
            classes -->
                    com -->
                           test -->
                                HelloWorld.class
web.xml
其中web.xml是:

<?xml version="1.0" encoding="UTF-8"?>
<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">
  <servlet>
    <servlet-name>helloworld</servlet-name>
    <servlet-class>
      com.test.HelloWorld
    </servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>helloworld</servlet-name>
    <url-pattern>/servlets</url-pattern>
  </servlet-mapping>
</web-app>

地狱世界
com.test.HelloWorld
地狱世界
/小仆
创建一个名为servlets.war的.war并将其放入GlassFish服务器的autodeploy目录之后

在我指向url:localhost:8080/servlets/helloworld之后,我有一个404错误

为什么??怎么了


谢谢。

点击
/yourApplicationContext/servlet
,正如您在url映射中指定的那样

例如:

在“Netbeans服务”窗口中,您可以右键单击特定的servlet,然后单击“在浏览器中打开”。它将运行servlet。您可以在地址栏中找到特定的URL。

是的,它可以工作。所以我的困惑是因为对我来说,url模式与上下文根相同,所以我称之为servlets/helloworld。但是,url映射定义了一个url,当链接触发指定的servlet时,上下文根将自动由war文件的名称获取…很高兴知道@Jigar,再次抱歉,我想知道我之前的评论是否正确。。。我理解得好吗?非常感谢。我不太清楚你最后的评论,但是你写的URL映射都是
/XXX
,如果你点击
/contextRoot/XXX
,servlet被调用,我希望这能澄清问题