2013-03-21 4 views
1

У меня есть контроллер пружины (ReportController) и обычный сервлет (ReportServlet).Вызов сервлета с контроллера пружины

У меня есть форма, которая представляет частичную информацию, а ReportController должен выполнить информацию перед отправкой в ​​ReportServlet обрабатывать. Когда я делаю это в методе ReportController:

return "/ReportServlet"; 

он пытается разрешить в /views/ReportServlet (вместо непосредственно /ReportServlet).

Как я могу вызвать свой сервлет из контроллера пружины?

Это мой web.xml:

<?xml version="1.0" encoding="UTF-8"?> 

<web-app ...> 

    <display-name>MyProject</display-name> 

    <servlet> 
     <servlet-name>dispatcher</servlet-name> 
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 

    <servlet-mapping> 
     <servlet-name>dispatcher</servlet-name> 
     <url-pattern>*.html</url-pattern> 
    </servlet-mapping> 

    <servlet-mapping> 
     <servlet-name>dispatcher</servlet-name> 
     <url-pattern>/loginform.html</url-pattern> 
    </servlet-mapping> 

    ... 

    <servlet> 
     <servlet-name>ReportServlet</servlet-name> 
     <servlet-class>com.mypackage.ReportServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>ReportServlet</servlet-name> 
     <url-pattern>/ReportServlet</url-pattern> 
    </servlet-mapping> 
    ... 
    <session-config> 
     <session-timeout> 
      30 
     </session-timeout> 
    </session-config> 

    <welcome-file-list> 
     <welcome-file>/loginform.html</welcome-file> 
    </welcome-file-list> 

</web-app> 

и мой dispatcher-servlet.xml:

<?xml version="1.0" encoding="UTF-8"?> 

<beans xmlns="http://www.springframework.org/schema/beans" 
     ... 
> 

    <!-- Enable annotation driven controllers, validation etc... --> 

    <mvc:annotation-driven /> 
    <context:component-scan base-package="com.p2p.reportsportal.controllers" /> 
    <context:property-placeholder location="classpath*:config.properties"/> 
    <bean id="viewResolver" 
     class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix"> 
      <value>/WEB-INF/views/</value> 
     </property> 
     <property name="suffix"> 
      <value>.jsp</value> 
     </property> 
    </bean> 

... 

+1

использование вперед Directi ve ... –

ответ

3

Попробуйте это:

return "forward:/ReportServlet"; 
+0

Спасибо, это было. –

Смежные вопросы