当前位置: 首页 > 知识库问答 >
问题:

Tomcat使用war名称作为Spring Boot的基本url

令狐晟
2023-03-14
 http://localhost:8080/
 http://localhost:8080/springapp-1.0-snapshot
 http://localhost:8080/springapp
 spring.webservices.path=/springapp
 server.tomcat.basedir=/springapp
 spring.jersey.application-path=/springapp
 server.contextPath=/springapp
 server.servlet-path=/springapp
    @SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
    @ImportResource("classpath:spring-config.xml")
    public class SpringAppStarter extends SpringBootServletInitializer {

        private static final Logger GENERAL_LOG = LogManager.getLogger(SpringAppStarter .class);

        @Override
        protected SpringApplicationBuilder configure(
                SpringApplicationBuilder application) {
            return application.sources(SpringAppStarter.class);
        }

        public static void main(String[] args) {
            // TODO Auto-generated method stub
            GENERAL_LOG.info("Starting Spring  Service App");

            SpringApplication.run(SpringAppStarter .class, args);
        }
    }
 @RestController
 @RequestMapping("/Customers")
 public class SpringAppResource {
    @RequestMapping("/")
    public String index() {
        return "Greetings from Spring Boot!";
    }
 }

我还将META-INF文件夹中的上下文配置添加为:

 <Context>
     <context docBase="springapp" path="/springapp" reloadable="true"/>
 </Context>

我正在使用Maven构建该项目。我不想更改服务名称。我需要在应用程序本身的某个地方提供上下文路径。不能依赖服务器。我应该提供所有配置,所以在部署之后不需要进行配置。

共有1个答案

张财
2023-03-14

您还可以将Tomcat服务器上的应用程序名称更改为:

  1. 双击“服务器”视图中的服务器实例
  2. 将选项卡从“概述”切换到“模块”(位于配置屏幕底部)
  3. 在列表中选择您的应用程序,然后单击右侧的“编辑”
  4. 将“path”设置为“springapp”(或URI的任何名称)
  5. 单击“确定”并保存更改。

现在,您的应用程序将位于URI:http://localhost:8080/springapp

 类似资料:
  • 我正在尝试对我的Spring Boot应用程序进行dockerize。 这是我的docker作曲文件 我的dockerfile 我可以看到我的战争已经展开。在日志中我可以看到 在/usr/local/tomcat/webapps目录中,我可以看到这个根目录。war和根文件夹存在。我用以下命令启动docker: 当我访问localhost:8080Tomcat说Http状态404-未找到。 这里是执

  • 我的问题是这样的--假设我有一个war文件,叫做My-APP-123.war。我想把它部署在Tomcat服务器(9.0.x)上,让它自动解包。 然后可以通过http://localhost:8080/my-app-123访问该应用程序 有没有一种方法,不重命名war文件,就可以从http://localhost:8080/my-app访问应用程序? 在此之前,我将说,我意识到最简单的解决方案是只命

  • 问题内容: 我指的是我以前的问题,但是这次我使用了Java编译器,编译器对输出进行了编译-它给出了一个奇怪的输出。这次我用代替。 这是程序的代码。 您认为这里的问题是什么?这是Java中的错误吗? Java版本-1.6.0 JDK 我使用Eclipse运行该程序,但有一个“找不到类”异常。 是文件名…我们做了较小的编辑,并命名了一个公共类,但结果相同。我们进一步发现问题出在编译器上。 问题答案:

  • 我如何创建(和访问)基于SpringMVC服务Web内容的可部署war指南? 感觉这些步骤都成功了,但是当尝试查看页面时,返回了404错误。。。可能我只是试图访问错误的url? 本教程在创建和运行jar时效果非常好,但是当我试图从war访问网页时,它会导致404错误。 第一步。创建一个可部署的war文件 使应用程序类扩展SpringBootServletializer 这将导致打包可执行jar和w