Spring控制器不响应https

时间:2018-04-10 08:02:42

标签: java spring maven spring-boot https

我使用mvn spring-boot:run运行maven spring boot应用程序 我使用application.properties声明https配置如下:

server.port = 8443
server.ssl.key-store = keystore.jks
server.ssl.key-store-password = 123456
server.ssl.key-password = 123456

spring在右侧端口上启动,并显示以下输出:

2018-04-10 10:49:42.074  INFO 6794 --- [           main] ru.ias.Main                              : Starting Main on IAS-WS-UX02 with PID 6794 (/home/opshenichnikova/NetBeansProjects/bot-integrity/target/classes started by opshenichnikova in /home/opshenichnikova/NetBeansProjects/bot-integrity)
2018-04-10 10:49:42.077  INFO 6794 --- [           main] ru.ias.Main                              : No active profile set, falling back to default profiles: default
2018-04-10 10:49:42.147  INFO 6794 --- [           main] ConfigServletWebServerApplicationContext : Refreshing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@41d792be: startup date [Tue Apr 10 10:49:42 MSK 2018]; root of context hierarchy
2018-04-10 10:49:42.834  INFO 6794 --- [           main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2018-04-10 10:49:43.044  INFO 6794 --- [           main] org.eclipse.jetty.util.log               : Logging initialized @3904ms to org.eclipse.jetty.util.log.Slf4jLog
2018-04-10 10:49:43.110  INFO 6794 --- [           main] o.s.b.w.e.j.JettyServletWebServerFactory : Server initialized with port: 8445
2018-04-10 10:49:43.120  INFO 6794 --- [           main] org.eclipse.jetty.server.Server          : jetty-9.4.8.v20171121, build timestamp: 2017-11-22T00:27:37+03:00, git hash: 82b8fb23f757335bb3329d540ce37a2a2615f0a8
2018-04-10 10:49:43.318  INFO 6794 --- [           main] org.eclipse.jetty.server.session         : DefaultSessionIdManager workerName=node0
2018-04-10 10:49:43.318  INFO 6794 --- [           main] org.eclipse.jetty.server.session         : No SessionScavenger set, using defaults
2018-04-10 10:49:43.339  INFO 6794 --- [           main] org.eclipse.jetty.server.session         : Scavenging every 660000ms
2018-04-10 10:49:43.355  INFO 6794 --- [           main] o.e.j.s.h.ContextHandler.application     : Initializing Spring embedded WebApplicationContext
2018-04-10 10:49:43.356  INFO 6794 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1211 ms
2018-04-10 10:49:43.475  INFO 6794 --- [           main] o.s.b.w.servlet.ServletRegistrationBean  : Servlet dispatcherServlet mapped to [/]
2018-04-10 10:49:43.477  INFO 6794 --- [           main] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]
2018-04-10 10:49:43.477  INFO 6794 --- [           main] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2018-04-10 10:49:43.477  INFO 6794 --- [           main] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2018-04-10 10:49:43.478  INFO 6794 --- [           main] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]
2018-04-10 10:49:43.480  INFO 6794 --- [           main] o.e.jetty.server.handler.ContextHandler  : Started o.s.b.w.e.j.JettyEmbeddedWebAppContext@3f0831d8{/,[file:///tmp/jetty-docbase.8895474277820779181.8445/],AVAILABLE}
2018-04-10 10:49:43.481  INFO 6794 --- [           main] org.eclipse.jetty.server.Server          : Started @4342ms
2018-04-10 10:49:43.720  INFO 6794 --- [           main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@41d792be: startup date [Tue Apr 10 10:49:42 MSK 2018]; root of context hierarchy
2018-04-10 10:49:43.788  INFO 6794 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/admin/account/list],methods=[GET]}" onto public java.util.List<ru.ias.orm.Account> ru.ias.controllers.admin.AdminController.getAccounts()
2018-04-10 10:49:43.790  INFO 6794 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/admin/invoices],methods=[GET]}" onto public java.util.List<ru.ias.orm.Invoice> ru.ias.controllers.admin.InvoiceController.getInvoices(javax.servlet.http.HttpServletResponse)
2018-04-10 10:49:43.794  INFO 6794 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2018-04-10 10:49:43.794  INFO 6794 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2018-04-10 10:49:43.829  INFO 6794 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-04-10 10:49:43.830  INFO 6794 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-04-10 10:49:43.871  INFO 6794 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-04-10 10:49:44.049  INFO 6794 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2018-04-10 10:49:44.066  INFO 6794 --- [           main] o.e.j.s.h.ContextHandler.application     : Initializing Spring FrameworkServlet 'dispatcherServlet'
2018-04-10 10:49:44.066  INFO 6794 --- [           main] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization started
2018-04-10 10:49:44.076  INFO 6794 --- [           main] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization completed in 10 ms
2018-04-10 10:49:44.432  INFO 6794 --- [           main] o.e.jetty.util.ssl.SslContextFactory     : x509=X509@22dbd246(jetty,h=[tbot-test.ias.su],w=[]) for SslContextFactory@2cfff4aa[provider=null,keyStore=file:///home/opshenichnikova/NetBeansProjects/bot-integrity/keystore.jks,trustStore=null]
2018-04-10 10:49:44.507  INFO 6794 --- [           main] o.e.jetty.server.AbstractConnector       : Started ServerConnector@139688ed{SSL,[ssl, http/1.1]}{0.0.0.0:8445}
2018-04-10 10:49:44.509  INFO 6794 --- [           main] o.s.b.web.embedded.jetty.JettyWebServer  : Jetty started on port(s) 8445 (ssl, http/1.1) with context path '/'
2018-04-10 10:49:44.512  INFO 6794 --- [           main] ru.ias.Main                              : Started Main in 2.726 seconds (JVM running for 5.372)


^C2018-04-10 10:52:08.108  INFO 6794 --- [      Thread-11] ConfigServletWebServerApplicationContext : Closing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@41d792be: startup date [Tue Apr 10 10:49:42 MSK 2018]; root of context hierarchy
2018-04-10 10:52:08.109  INFO 6794 --- [      Thread-11] o.s.j.e.a.AnnotationMBeanExporter        : Unregistering JMX-exposed beans on shutdown
2018-04-10 10:52:08.116  INFO 6794 --- [      Thread-11] o.e.jetty.server.AbstractConnector       : Stopped ServerConnector@139688ed{SSL,[ssl, http/1.1]}{0.0.0.0:8445}
2018-04-10 10:52:08.119  INFO 6794 --- [      Thread-11] org.eclipse.jetty.server.session         : Stopped scavenging
2018-04-10 10:52:08.121  INFO 6794 --- [      Thread-11] o.e.j.s.h.ContextHandler.application     : Destroying Spring FrameworkServlet 'dispatcherServlet'
2018-04-10 10:52:08.122  INFO 6794 --- [      Thread-11] o.e.jetty.server.handler.ContextHandler  : Stopped o.s.b.w.e.j.JettyEmbeddedWebAppContext@3f0831d8{/,[file:///tmp/jetty-docbase.8895474277820779181.8445/],UNAVAILABLE}

我尝试访问在控制器中声明的/admin/account/list路径:

package ru.ias.controllers.admin;

import java.util.ArrayList;
import java.util.List;
import org.hibernate.Session;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import ru.ias.orm.Account;
import ru.ias.config.HibernateUtil;

/**
 *
 * @author opshenichnikova
 */
@RestController
public class AdminController 
{
    @GetMapping("/admin/account/list")
    @CrossOrigin(origins = "*")
    public List<Account> getAccounts() 
    {
        Session session = HibernateUtil
            .getInstance()
            .getSessionFactory()
            .openSession();

        session.beginTransaction();
        Account account = new Account();

        account.setFirstName("Olga");
        account.setLastName("Pshenichnikova");

        session.save(account);
        session.getTransaction().commit();

        List<Account> accounts = new ArrayList<>();
        accounts.add(account);

        return accounts;
    }
}

Main类声明如下:

package ru.ias;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

@SpringBootApplication
public class Main extends SpringBootServletInitializer 
{
    @Override
    protected SpringApplicationBuilder configure(
        SpringApplicationBuilder application
    ) {
        return application.sources(Main.class);
    }   

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

不幸的是,我得到了以下回复:

enter image description here

1 个答案:

答案 0 :(得分:2)

您正在通过http访问该页面,而不是https。将浏览器中的网址更改为https://localhost:8443/admin/account/list