0

リクエスト マッピングに小さな問題があります。

私はcontrollerAリクエストマッピングを

@Controller
@RequestMapping(value={"login/formA.html", "B/formB.html", "C/formC.html"})
public class ControllerA {
} 

既存のコントローラーを邪魔することなく、もう 1 つコントローラーを作成する必要があります。

以下のような2番目のコントローラーのリクエストマッピング

@Controller
@RequestMapping(value={"X/test1", "Y/test2", "Z/test3"})
public class ControllerB {
}

spring-servlet.xml上記のシナリオを構成して機能させるには、どうすれば構成できますか。

私は持っていweb.xmlます:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4"
    xmlns="https://java.sun.com/xml/ns/j2ee" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="https://java.sun.com/xml/ns/j2ee https://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <servlet>
        <servlet-name>spring</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
        <servlet-mapping>
        <servlet-name>spring</servlet-name>
        <url-pattern>/public/login/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>spring</servlet-name>
        <url-pattern>/public/signout/*</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>spring</servlet-name>
        <url-pattern>/public/X/*</url-pattern>
    </servlet-mapping>

</web-app>     

私のspring-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-3.0.xsd">

    <mvc:annotation-driven/>

    <context:component-scan
        base-package="com.abc.xyz.controller"/>

    <context:component-scan
        base-package="com.abc.xyz.controller.example1"/>    

    <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />

    <bean class='org.springframework.web.servlet.view.ContentNegotiatingViewResolver' p:order='1'>
            <property name='mediaTypes'>
                  <map>
                        <entry key='json' value='application/json' />
                        <entry key='html' value='text/html' />
                  </map>
            </property>

            <property name='viewResolvers'>
                  <list>
                        <bean class='org.springframework.web.servlet.view.BeanNameViewResolver' />
                        <bean class='org.springframework.web.servlet.view.UrlBasedViewResolver'>
                              <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
                              <property name="prefix" value="/WEB-INF/jsp/"/>
                              <property name="suffix" value=".jsp"/>
                        </bean>
                  </list>
            </property>


      </bean>

この問題を解決するための提案をお願いします。数日かかってしまいました。

前もって感謝します。

4

1 に答える 1

0

以下に示すように、web.xmlにサーブレットマッピングをもう1つ追加します

<servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>/public/*/*</url-pattern>
</servlet-mapping>
于 2013-03-01T10:27:10.863 に答える