簡體   English   中英

Tomcat使用war name作為Spring啟動的基本URL

[英]Tomcat using war name as base url for Spring boot

我有一個名為“springapp”的spring啟動應用程序,其基本URI為:

 http://localhost:8080/

當我作為一個獨立的應用程序運行它時它工作正常。 但是當我在Eclipse中運行它像“在服務器上運行 - >運行”時,它會將war名稱附加為springapp-1.0-snapshot,並且基本URL將變為:

 http://localhost:8080/springapp-1.0-snapshot

有什么辦法可以解決這個問題。 我想要URI

 http://localhost:8080/springapp

我在我的application.properties中嘗試了以下所有配置,但它們都沒有工作:

 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來構建項目。 而且我不想更改服務名稱。 我需要在應用程序本身的某個地方提供上下文路徑。 不能依賴服務器。 我應該提供所有配置,因此在部署之后不需要進行任何配置。

你應該能夠像這樣重命名戰爭

<build>
  <finalName>springapp</finalName>
 . . .
</build>

您還可以將Tomcat服務器上的應用程序名稱更改為:

  1. 在“服務器”視圖中雙擊您的服務器實例
  2. 將標簽從“概述”切換到“模塊”(在配置屏幕的底部)
  3. 在列表中選擇您的應用程序,然后單擊右側的“編輯”
  4. 將“Path”設置為“springapp”(或任何您想要的URI名稱)
  5. 單擊“確定”並保存更改。

現在您的應用程序將位於URI: http://localhost:8080/springapp

如果您正在使用eclipse,那么您可以通過轉到yourproject->properties->Web Project settings來更改根上下文。 然后在此更改上下文根並重新啟動服務器

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM