java - 无法从 Linux 中的 Web 应用程序访问 servlet

标签 java linux tomcat web-applications tomcat6

我已经在 tomcat webapps 目录中部署了 Myapplication.war。

现在我有 $CATALINAHOME/webapps/Myapplication 中的 index.jsp 和 $CATALINAHOME/webapps/Myapplication/WEB-INF/classes 中的 process.class。

当 index.jsp 发布一些要处理的变量时,http://x.x.x.x:8080/Myapplication/process

我低于错误,

类型状态报告 消息/Myapplication/process 描述请求的资源不可用..

如果我将流程文件从 java 类转换为 jsp,我就能够从 index.jsp 发布到 process.jsp。

我怎样才能做到这一点?我还需要在这里进行其他设置吗?

提前致谢

最佳答案

您必须在 web.xml 中声明您的 servlet,否则 Tomcat 将不知道哪个类与哪个路径相关联:

<servlet>
  <servlet-name>processServlet</servlet-name>
  <servlet-class>process</servlet-class>
</servlet>
 <servlet-mapping>
  <servlet-name>processServlet</servlet-name>
  <url-pattern>/process</url-pattern>
</servlet-mapping>

另见 tomcat sample deployment descriptor

几个小问题:

  • 根据 Java 类命名,类应以大写字符开头,因此它将是 ProcessProcess.java
  • 通常将 java 类放入包中更有意义。

关于java - 无法从 Linux 中的 Web 应用程序访问 servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17447010/

相关文章:

java - 这两个 Spring Java 配置类如何协同工作?

java - Emacs Java 马拉巴模式

Linux free/kill TCP 端口 - 关闭

linux - 索尼设备的内核配置与源代码不同。为什么?

reactjs - 如何配置 tomcat 7 以在 react 中与 react-router-dom 一起工作?

eclipse - 从 Eclipse 在 Tomcat 上运行 Maven 项目

Java 开源列表

java - 如何从mysql中的表中选择第3行?

c++ - 移植access(2)Linux系统调用boost::filesystem

尝试同时写入 websocket session 时,Tomcat 抛出 "The remote endpoint was in state [BINARY_FULL_WRITING] ..."