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

在Tomcat上部署Spring Boot+WebSocket+Stomp

秦俊友
2023-03-14

我在为Tomcat服务器部署Spring guides中提供的Spring Boot+WebSocket+Stomp教程时遇到了一些麻烦

我正在使用gradle创建战争,其中我有以下依赖

"build.gradle"

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:1.5.6.RELEASE")
    }
}

apply plugin: 'idea'
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'org.springframework.boot'

sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
     mavenCentral()
}

dependencies {
compile group: 'org.springframework.boot', name: 'spring-boot-starter-tomcat', version: '1.5.6.RELEASE'

compile("org.springframework.boot:spring-boot-starter-websocket")

compile("org.webjars:webjars-locator")
compile("org.webjars:sockjs-client:1.0.2")
compile("org.webjars:stomp-websocket:2.3.3")
compile("org.webjars:bootstrap:3.3.7")
compile("org.webjars:jquery:3.1.0")

testCompile("org.springframework.boot:spring-boot-starter-test")
}

基本上,我只添加了spring-boot-starter-tomcat依赖项以及war和idea插件。

代码可以在https://spring.io/guides/gs/messaging-stomp-websocket/中找到

在部署之后,当我尝试访问http://localhost:8080/complete/时,我遇到以下错误

“无法加载资源:服务器响应,状态为404(找不到)”

我该怎么做才能让这件事成功?

谢谢

共有1个答案

郭业
2023-03-14

首先,确保使用正确的上下文路径部署WAR。您提到的示例代码假设您将代码部署到根路径-http://localhost:8080

您可以从代码中设置上下文路径。看这个答案。

如果上下文的所有内容都是正确的,您应该查看服务器日志,查找可能阻止部署的错误。

 类似资料:
  • 我在springboot应用程序中有筛选器。在embedded tomcate 9.0.34中运行该应用程序时,它可以正常工作。然而,当我创建war并将其部署在外部Tomcate8.5上时,它会抛出以下错误。

  • 完成干净的构建后,我将war文件复制到Tomcat的文件夹中。但是部署会发生两次,并且在上下文已经存在的情况下以异常结束。我错过了什么? 非常感谢您的帮助。

  • 当我试图在heroku上部署springboot应用程序时,出现了以下错误: 无法执行目标org.apache.Maven.plugins:maven-compiler-plugin:3.8.1:在项目后端编译(default-compile):错误编译:无效的目标版本:11->[Help 1]Remote:[error]Remote:[error]要查看错误的全部堆栈跟踪,请使用-e开关重新运行

  • 我阅读并关注了BallusC的以下帖子,但仍然困惑:如何在Tomcat上安装和使用CDI? 尝试安装焊缝2.2.9.最终和配置如上所述。我正在使用以下内容: JSF 2.2、EL 2.2、Servlet3、Java7 还有什么可能导致这个错误?