2017-10-14 40 views
0
/spring/fetchAllUsers URL which am trying 

web.xml 
    <servlet> 
      <servlet-name>user</servlet-name> 
      <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> 
      <init-param> 
      <param-name>contextConfigLocation</param-name> 
      <param-value>classpath:springContext/dataSource.xml</param-value> 
     </init-param> 
      <load-on-startup>3</load-on-startup> 
     </servlet> 
     <servlet-mapping> 
      <servlet-name>user</servlet-name> 
      <url-pattern>/spring/</url-pattern> 
     </servlet-mapping> 

     Controller Code 
@RequestMapping(value = "/getAllUsers", method = RequestMethod.POST) 
@ResponseBody 
@Transactional(propagation=Propogation.REQUIRED,rollBackFor=Exception.class) 
public String fetchAllUsers(){ 
setInputStream(userDelegate.fetchAllUsers()); 
return success; 

詳情:
我有MVC註釋驅動和用戶servlet.xml中MVC默認的servlet處理程序時,這個網址是Struts來春季遷徙得到404錯誤

Getting 404 error code when try to access this URl when doing migration from struts to spring 

斷點不打併且在控制檯中也沒有錯誤。請在上述問題上提出建議

+1

你會在理解Spring框架時遇到一些困難。 –

回答

0

由於您的servlet url映射已包含/ spring,因此您無需將其包含在@RequestMapping中。

試試這個:

@RequestMapping(value = "/createUser/", method = RequestMethod.POST) 
+0

感謝您的reply.but仍然得到了404的請求。所以我嘗試了另一個方法調用fetchAllUsers,如上所示,它也顯示相同的錯誤 –

0

根據你的servlet映射只有一個網址被允許不與您的控制器映射localhost:8080/context/spring/

當我們定義了servlet映射時,我們使用的是SimpleUrlHandlerMapping。要了解服務器URL映射讓定義一個servlet映射:

<servlet-mapping> 
     <servlet-name>user</servlet-name> 
     <url-pattern>/spring/*</url-pattern> 
</servlet-mapping> 

現在的處理程序將實際使用*部分找到控制器。它不會搜索/ spring/createUser,它只會搜索/ createUser來找到相應的控制器。

@RequestMapping("/createUser") 

你的情況,您需要更改您的網址localhost:8080/spring/spring/createUser或控制器@RequestingMapping(/createUser)刪除前綴。

+0

仍然獲得上述數據的404。但現在沒有得到任何servlet錯誤 –

+0

謝謝對於reply.but仍然得到了404的請求。所以我嘗試了另一個方法調用fetchAllUsers如上所示,它也顯示了相同的錯誤 –

0

彈簧解釋網址/spring/createUser//spring/createUser不同(ATLEAST在於ⅰ只是測試POST方法)。

將您的@RequestMapping網址更改爲/spring/createUser

還介意你調用的URL是/spring/createUser不帶後綴斜線( 「/」)。

你的方法

​​

希望這有助於。

+0

感謝您的答覆。但仍然獲得404的請求。所以我嘗試了另一個方法調用fetchAllUsers,如上所示,它也顯示相同的錯誤 –