【发布时间】:2014-07-19 17:28:10
【问题描述】:
我正在尝试运行 spring 指南中的示例: Building a RESTful Web Service 。
如果我打开 localhost:8080/greeting 效果很好。
但如果我打开 192.168.1.111:8080/greeting 或 140.112.134.22:8080/greeting 则无法建立连接,尽管实际上使用了两个 IP通过我的电脑上网。
有人可以建议我如何在 Spring 中配置嵌入式 Tomcat 以接受除 localhost(即 127.0.0.1)之外的其他 IP 地址上的 HTTP 请求吗?
谢谢! :)
【问题讨论】:
-
如果您只是按照您在构建 Web 服务上发布的教程链接进行操作,那么您的 Web 服务并未在嵌入式 Tomcat 或任何 Web 应用程序服务器中运行。它在一个独立的 java 应用程序上运行,该应用程序是一个 main 方法。您需要制作一个WAR文件并部署在tomcat服务器中。
-
shazin 可能一针见血,但有很好的诊断方法可以解决这类问题。为什么不使用 netstat 实用程序来查看是否在端口 8080 上发布服务?如果是,请尝试 telnet 到 IP 和端口。这些是 Web 开发人员的基本工具 - 您需要熟悉。它们在 Window 和 Linux 上可用。
-
@user3467488,你们都错了。他链接的教程使用的是 Spring Boot,它允许您使用嵌入式应用服务器创建可执行 JAR,等等。默认值为 Tomcat,但您可以通过简单地包含 Jetty JAR 而不是 Tomcat JAR 将其换成 Jetty。这是一个非常有趣的平台,并提供了一种将正在运行的 Spring 应用程序放在一起的快速方法。您可以选择将您的 Spring Boot 应用程序转换为 WAR,但他链接到的教程根本没有涉及。
标签: java spring tomcat spring-mvc spring-boot