HTTP Status 404 The origin server did not find a current representation for the target resource or is not willing to disclose that one exists

приложение - голый backend. любые запросы выкидывают ошибку 404. в дэбагере запросы не доходят до контролеров.

настройки томката

настройки томката2

файл конфигурации

@Configuration
@ComponentScan(basePackages = "org.example")
@EnableWebMvc
@EnableJpaRepositories(basePackages = "org.example")
@PropertySource("classpath:db.properties")
public class AppConfig {

    @Autowired
    private Environment env;

    private final ApplicationContext applicationContext;

    @Autowired
    public AppConfig(ApplicationContext applicationContext) {
        this.applicationContext = applicationContext;
    }

    @Bean
    public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
        LocalContainerEntityManagerFactoryBean em = new LocalContainerEntityManagerFactoryBean();
        em.setDataSource(dataSource());
        em.setPackagesToScan( "org.example" );
        em.setJpaVendorAdapter(new HibernateJpaVendorAdapter());
        em.setJpaProperties(hibernateProperties());
        return em;
    }

    @Bean
    public DataSource dataSource() {
        DriverManagerDataSource dataSource = new DriverManagerDataSource();

        dataSource.setDriverClassName( Objects.requireNonNull( env.getProperty( "dataSourceClassName" ) ) );

        if (Arrays.asList(env.getActiveProfiles()).contains("test")) {
            dataSource.setUrl(env.getProperty("dataSource.url"));
        } else {
            dataSource.setUrl("jdbc:postgresql://" + env.getProperty("dataSource.serverName") +
                    ":" + env.getProperty("dataSource.portNumber") +
                    "/" + env.getProperty("dataSource.databaseName"));
        }

        dataSource.setUsername(env.getProperty("dataSource.user"));
        dataSource.setPassword(env.getProperty("dataSource.password"));

        return dataSource;
    }


    @Bean
    public JpaTransactionManager transactionManager() {
        JpaTransactionManager transactionManager = new JpaTransactionManager();
        transactionManager.setEntityManagerFactory(entityManagerFactory().getObject());
        return transactionManager;
    }

    private Properties hibernateProperties() {
        Properties properties = new Properties();
        properties.put("hibernate.hbm2ddl.auto", "update");
        String activeProfile = Arrays.asList(env.getActiveProfiles()).contains("test") ?
                "org.hibernate.dialect.H2Dialect" : "org.hibernate.dialect.PostgreSQLDialect";
        properties.put("hibernate.dialect", activeProfile);
        properties.put("hibernate.id.new_generator_mappings", "true");
        return properties;
    }
}

класс SpringMvcDispatcherSerlvet

public class MySpringMvcDispatcherSerlvetIntitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
    @Override
    protected Class<?>[] getRootConfigClasses() {
        return null;
    }

    @Override
    protected Class<?>[] getServletConfigClasses() {
        return new Class[]{AppConfig.class};
    }

    @Override
    protected String[] getServletMappings() {
        return new String[]{"/"};
    }
}

контроллер

@RestController
@RequestMapping("/student")
public class StudentController extends HttpServlet {
    private final StudentService service;

    public StudentController(StudentService service) {
        this.service = service;
    }
    @PostMapping("/{surname})")
    public ResponseEntity<StudentDTO> doPost(@PathVariable String surname) throws ServletException, IOException {
        if (StringUtils.isBlank(surname)) {
            return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
        } else {
            try {
                StudentDTO studentDTO = new StudentDTO();
                studentDTO.setSurname(surname);
                boolean added = service.saveNewStudent(studentDTO);
                if (added) {
                    return new ResponseEntity<>(HttpStatus.OK);
                } else {
                    return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
                }
            } catch (SQLException e) {
                return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
            } catch (RuntimeException e) {
                return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
            }
        }
    }
// остальные контроллеры
}

запрос из постмэна - ошибка

логи запуска сервера

5-Nov-2023 02:55:04.831 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/10.1.15
05-Nov-2023 02:55:04.832 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Oct 11 2023 23:38:40 UTC
05-Nov-2023 02:55:04.832 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 10.1.15.0
05-Nov-2023 02:55:04.832 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Windows 11
05-Nov-2023 02:55:04.832 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Версия ОС:             10.0
05-Nov-2023 02:55:04.832 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Архитектура:           amd64
05-Nov-2023 02:55:04.833 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             C:\Users\marmu\.jdks\corretto-17.0.6
05-Nov-2023 02:55:04.833 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Версия JVM:            17.0.6+10-LTS
05-Nov-2023 02:55:04.833 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Производитель JVM:     Amazon.com Inc.
05-Nov-2023 02:55:04.833 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         C:\Users\marmu\AppData\Local\JetBrains\IntelliJIdea2023.1\tomcat\b1ebf6b7-c2ff-482d-9b76-8e6b8a766c2b
05-Nov-2023 02:55:04.833 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         C:\devtools\apache-tomcat-10.1.15
05-Nov-2023 02:55:04.835 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\Users\marmu\AppData\Local\JetBrains\IntelliJIdea2023.1\tomcat\b1ebf6b7-c2ff-482d-9b76-8e6b8a766c2b\conf\logging.properties
05-Nov-2023 02:55:04.835 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
05-Nov-2023 02:55:04.835 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote=
05-Nov-2023 02:55:04.835 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=1099
05-Nov-2023 02:55:04.835 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false
05-Nov-2023 02:55:04.835 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.password.file=C:\Users\marmu\AppData\Local\JetBrains\IntelliJIdea2023.1\tomcat\b1ebf6b7-c2ff-482d-9b76-8e6b8a766c2b\jmxremote.password
05-Nov-2023 02:55:04.835 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.access.file=C:\Users\marmu\AppData\Local\JetBrains\IntelliJIdea2023.1\tomcat\b1ebf6b7-c2ff-482d-9b76-8e6b8a766c2b\jmxremote.access
05-Nov-2023 02:55:04.835 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=127.0.0.1
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util=ALL-UNNAMED
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\Users\marmu\AppData\Local\JetBrains\IntelliJIdea2023.1\tomcat\b1ebf6b7-c2ff-482d-9b76-8e6b8a766c2b
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=C:\devtools\apache-tomcat-10.1.15
05-Nov-2023 02:55:04.836 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=C:\devtools\apache-tomcat-10.1.15\temp
05-Nov-2023 02:55:04.839 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The Apache Tomcat Native library which allows using OpenSSL was not found on the java.library.path: [C:\Users\marmu\.jdks\corretto-17.0.6\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Git\cmd;C:\Program Files\Docker\Docker\resources\bin;C:\devtools\maven\bin;C:\Users\marmu\AppData\Local\Microsoft\WindowsApps;C:\Program Files\JetBrains\IntelliJ IDEA 2023.1\bin;;C:\Users\marmu\AppData\Local\GitHubDesktop\bin;.]
05-Nov-2023 02:55:04.966 INFO [main] org.apache.coyote.AbstractProtocol.init �нициализация ProtocolHandler ["http-nio-8080"]
05-Nov-2023 02:55:04.983 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [263] milliseconds
05-Nov-2023 02:55:05.033 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
05-Nov-2023 02:55:05.033 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.15]
05-Nov-2023 02:55:05.046 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
05-Nov-2023 02:55:05.113 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [129] milliseconds
Connected to server
[2023-11-05 02:55:05,522] Artifact NewAPI:war exploded: Artifact is being deployed, please wait...
05-Nov-2023 02:55:06.845 INFO [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
[2023-11-05 02:55:10,013] Artifact NewAPI:war exploded: Artifact is deployed successfully
[2023-11-05 02:55:10,013] Artifact NewAPI:war exploded: Deploy took 4,491 milliseconds
05-Nov-2023 02:55:15.064 INFO [Catalina-utility-2] org.apache.catalina.startup.HostConfig.deployDirectory Установка веб приложения в папку [C:\devtools\apache-tomcat-10.1.15\webapps\manager]
05-Nov-2023 02:55:15.118 INFO [Catalina-utility-2] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [C:\devtools\apache-tomcat-10.1.15\webapps\manager] has finished in [54] ms

все банальные варианты решения уже перепробовала.


Ответы (0 шт):