Не найдено сопоставление для HTTP-запроса с URI в DispatcherServlet с именем «SpringDispatcher» - PullRequest
0 голосов
/ 15 июня 2019

Не найдено сопоставление для HTTP-запроса на Js и CSS. Я в файле jsp, не знаю почему, потому что в прошлом код был в порядке, так как я добавлял в него AppConfig, и тогда это происходило. Я новая весна MVC не знаю, как это исправить, XML хорошо, потому что я тестирую другой проект, но когда добавить config.java, то erorr

весна веб-config.xml

    <context:component-scan base-package="org.planning.net" />
    <context:component-scan base-package="org.planning.net.controllers" annotation-config="true"/>
    <context:component-scan base-package="org.planning.net.service" annotation-config="true"/>
    <context:component-scan base-package="org.planning.net.logic" annotation-config="true"/>
    <context:component-scan base-package="org.planning.net.dao" annotation-config="true"/>

    <bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix">
            <value>/WEB-INF/pages/</value>
        </property>
        <property name="suffix">
            <value>.jsp</value>
        </property>
    </bean>

    <mvc:resources mapping="/resources/**" location="/resources/"/>

    <!-- Spring Component -->
    <context:annotation-config />

    <mvc:default-servlet-handler/>

</beans>

web.xml 

<?xml version="1.0" encoding="UTF-8"?>
<element>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    id="WebApp_ID" version="3.1">

    <display-name>Net</display-name>

    <!-- For web context -->
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>
            org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring-web-config.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

     <context-param>
   <param-name>contextConfigLocation</param-name>
   <param-value>/WEB-INF/spring-web-config.xml</param-value>
   </context-param>

   <listener>
   <listener-class>
     org.springframework.web.context.ContextLoaderListener
    </listener-class>
  </listener>

    <!-- For root context -->
    <!--
    <listener>
        <listener-class>
            org.springframework.web.context.ContextLoaderListener
        </listener-class>
    </listener>

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/spring-core-config.xml</param-value>
    </context-param>
    -->

</web-app>
</element>

AppConfig.java

    @SingletonConfig
    @Configuration
    @Component
    @EnableWebMvc
    @ImportResource({"classpath:get-bean-name.xml"})
    public class AppConfig implements Config {

    private static final AppConfig INSTANCE = new AppConfig();

    private Dialect dialect;

    private LocalTransactionDataSource dataSource;

    private TransactionManager transactionManager;

    private AppConfig() {
        dialect = new MysqlDialect();
        dataSource = new LocalTransactionDataSource("jdbc:jtds:sqlserver://localhost:1433/NetDatabase;instance=SQLEXPRESS", "ccc", "1");
        transactionManager = new LocalTransactionManager(dataSource.getLocalTransaction(getJdbcLogger()));
    }

    @Override
    public Dialect getDialect() {
        return dialect;
    }

    public DataSource getDataSource() {
        return dataSource;
    }

    public TransactionManager getTransactionManager() {
        return transactionManager;
    }

    public static AppConfig singleton() {
        return INSTANCE;
    }

    @Override
    public int getBatchSize() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public ClassHelper getClassHelper() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public String getDataSourceName() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public ExceptionSqlLogType getExceptionSqlLogType() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public int getFetchSize() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public JdbcLogger getJdbcLogger() {
        // TODO Auto-generated method stub
        return new Slf4jJdbcLogger();
    }

    @Override
    public int getMaxRows() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public int getQueryTimeout() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public RequiresNewController getRequiresNewController() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public SqlFileRepository getSqlFileRepository() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public boolean ignoreUnknownColumn() {
        // TODO Auto-generated method stub
        return false;
    }
}

1 Ответ

0 голосов
/ 16 июня 2019

Я понял, что мой AppConfig неправильный, я изменился на, и он работает хорошо.но другая проблема заключается в том, что я не могу подключиться к базе данных, используя mysql sever 2014, url: "jdbc: sqlserver: // localhost: 1433; databaseName = NetDatabase", и я установил имя пользователя и пароль для него .problem: [DOMA2048]Это говорит о том, что он не может связываться с базой данных

100 * * * * * *
    public class AppConfig extends DomaAbstractConfig {

    private static final String JDBC_FILE = "datasource-cfg.properties";

    private static final String URL = "jdbc.sqlServer.url";

    private static final String USER = "jdbc.sqlServer.user";

    private static final String PASSWORD = "jdbc.sqlServer.password";

    private static final String DATABASE_NAME = "jdbc.sqlServer.databaseName";

    static {
        try {
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
        } catch (ClassNotFoundException e) {
            throw new RuntimeException(e);
        }
    }

    protected static final LocalTransactionalDataSource dataSource = createDataSource();

    protected static final Dialect dialect = new MssqlDialect();

    @Override
    public DataSource getDataSource() {

        return dataSource;
    }

    @Override
    public Dialect getDialect() {

        return dialect;
    }

    protected static LocalTransactionalDataSource createDataSource() {

        Properties prop = new Properties();
        try {
            prop.load(ClassName.class.getClassLoader().getResourceAsStream(JDBC_FILE));
        } catch (IOException e) {
            e.printStackTrace();
        }
        String url = prop.getProperty(URL);
        String user = prop.getProperty(USER);
        String password = prop.getProperty(PASSWORD);
        String databaseName = prop.getProperty(DATABASE_NAME);

        String connection = url + ";" + "databaseName=" + databaseName;

        SimpleDataSource dataSource = new SimpleDataSource();
        dataSource.setUrl(connection);
        dataSource.setUser(user);
        dataSource.setPassword(password);

        return new LocalTransactionalDataSource(dataSource);
    }

    public static LocalTransaction getLocalTransaction() {

        return dataSource.getLocalTransaction(defaultJdbcLogger);
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...