Java spring boot war部署到tomcat时出现404错误

Java spring boot war部署到tomcat时出现404错误,java,spring,maven,tomcat,spring-boot,Java,Spring,Maven,Tomcat,Spring Boot,正如标题所说,当我将spring boot war从eclipse部署到tomcat时,它部署得很好,但每当我尝试访问它时,就会出现404错误。我试过很多方法都没有用。我怀疑这与上下文有关,但找不到好的解决方案。该项目在本地主机上使用嵌入式tomcat运行良好。关于如何解决这个问题有什么建议吗 Application.java package com.beta; import org.springframework.boot.SpringApplication; import org.spr

正如标题所说,当我将spring boot war从eclipse部署到tomcat时,它部署得很好,但每当我尝试访问它时,就会出现404错误。我试过很多方法都没有用。我怀疑这与上下文有关,但找不到好的解决方案。该项目在本地主机上使用嵌入式tomcat运行良好。关于如何解决这个问题有什么建议吗

Application.java

package com.beta;

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 
import org.springframework.boot.builder.SpringApplicationBuilder; 
import org.springframework.boot.context.web.SpringBootServletInitializer; 
import org.springframework.context.annotation.Import; 
import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import org.springframework.data.rest.webmvc.config.RepositoryRestMvcConfiguration;

@SpringBootApplication 
@EnableJpaRepositories 
@Import(RepositoryRestMvcConfiguration.class) 
public class Application extends SpringBootServletInitializer {

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

public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        } }
pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.beta</groupId>
    <artifactId>Geotagged-Photoboard</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>

    <name>Geotagged-Photoboard</name>
    <description>Geotagged Photoboard</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.2.RELEASE</version>
        <relativePath/>
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>   
        <dependency>
           <groupId>mysql</groupId>
           <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.hsqldb</groupId>
            <artifactId>hsqldb</artifactId>
        </dependency>
        <dependency>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-starter-data-rest</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
    </dependencies>


    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

4.0.0
com.beta
地理标记照相板
0.0.1-快照
战争
地理标记照相板
地理标记照相板
org.springframework.boot
spring启动程序父级
1.3.2.1发布
UTF-8
1.8
org.springframework.boot
SpringBootStarterWeb
mysql
mysql连接器java
org.springframework.boot
弹簧起动试验
org.springframework.boot
spring引导启动器数据jpa
org.springframework.boot
弹簧启动装置
org.hsqldb
hsqldb
org.springframework.boot
弹簧启动启动器数据rest
org.springframework.boot
弹簧启动机tomcat
假如
org.springframework.boot
springbootmaven插件
我查看的tomcat日志不是正确的,下面是我收到的错误的正确日志。不知道为什么时机是对的

Feb 10, 2016 6:03:51 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive /var/lib/tomcat7/webapps/Geotagged-Photoboard.war
Feb 10, 2016 6:03:51 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/var/lib/tomcat7/webapps/Geotagged-Photoboard/WEB-INF/lib/tomcat-embed-core-8.0.30.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
Feb 10, 2016 6:03:51 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/var/lib/tomcat7/webapps/Geotagged-Photoboard/WEB-INF/lib/tomcat-embed-el-8.0.30.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/el/Expression.class
Feb 10, 2016 6:03:51 AM org.apache.catalina.deploy.WebXml setVersion
WARNING: Unknown version string [3.1]. Default version will be used.
Feb 10, 2016 6:03:59 AM org.apache.catalina.core.ContainerBase addChildInternal
SEVERE: ContainerBase.addChild: start: 
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Geotagged-Photoboard]]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1073)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:553)
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1648)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
    at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1445)
    at org.apache.catalina.manager.HTMLManagerServlet.upload(HTMLManagerServlet.java:284)
    at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:206)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.filters.CsrfPreventionFilter.doFilter(CsrfPreventionFilter.java:213)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:610)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName()Ljava/lang/String;
    at org.apache.tomcat.websocket.server.WsServerContainer.<init>(WsServerContainer.java:149)
    at org.apache.tomcat.websocket.server.WsSci.init(WsSci.java:131)
    at org.apache.tomcat.websocket.server.WsSci.onStartup(WsSci.java:47)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5456)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    ... 40 more

Feb 10, 2016 6:03:59 AM org.apache.catalina.startup.HostConfig deployWAR
SEVERE: Error deploying web application archive /var/lib/tomcat7/webapps/Geotagged-Photoboard.war
java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Geotagged-Photoboard]]
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:904)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1073)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:553)
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1648)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
    at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1445)
    at org.apache.catalina.manager.HTMLManagerServlet.upload(HTMLManagerServlet.java:284)
    at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:206)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.filters.CsrfPreventionFilter.doFilter(CsrfPreventionFilter.java:213)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:610)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
2016年2月10日上午6:03:51 org.apache.catalina.startup.HostConfig
信息:部署web应用程序存档/var/lib/tomcat7/webapps/geotaged-Photoboard.war
2016年2月10日上午6:03:51 org.apache.catalina.loader.WebappClassLoader validateJarFile
信息:validateJarFile(/var/lib/tomcat7/webapps/geotaged Photoboard/WEB-INF/lib/tomcat-embed-core-8.0.30.jar)-未加载jar。参见Servlet规范3.0,第10.7.2节。有问题的类:javax/servlet/servlet.class
2016年2月10日上午6:03:51 org.apache.catalina.loader.WebappClassLoader validateJarFile
信息:validateJarFile(/var/lib/tomcat7/webapps/geotaged Photoboard/WEB-INF/lib/tomcat-embed-el-8.0.30.jar)-未加载jar。参见Servlet规范3.0,第10.7.2节。有问题的类:javax/el/Expression.class
2016年2月10日上午6:03:51 org.apache.catalina.deploy.WebXml setVersion
警告:未知版本字符串[3.1]。将使用默认版本。
2016年2月10日上午6:03:59 org.apache.catalina.core.ContainerBase addChildInternal
严重:ContainerBase.addChild:开始:
org.apache.catalina.LifecycleeException:未能启动组件[StandardEngine[catalina].StandardHost[localhost].StandardContext[/Geotaged Photoboard]]
位于org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
位于org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
位于org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
位于org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
位于org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1073)
位于org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:553)
位于org.apache.catalina.startup.HostConfig.check(HostConfig.java:1648)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:606)
位于org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301)
位于com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
位于com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
位于org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1445)
位于org.apache.catalina.manager.HTMLManagerServlet.upload(HTMLManagerServlet.java:284)
位于org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:206)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
位于org.apache.catalina.filters.CsrfPreventionFilter.doFilter(CsrfPreventionFilter.java:213)
位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
位于org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
位于org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:610)
位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
位于org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
位于org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
位于org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
网址:org.apache.coyote.http11.Abstra
INFO: validateJarFile(/var/lib/tomcat7/webapps/Geotagged-Photoboard/WEB-INF/lib/tomcat-embed-core-8.0.30.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
mvn clean package