2013-05-09 107 views
2

我有一個ExtJS 4的形式,我發送信息,保存在數據庫中我使用的春季安全和Spring MVC在我的ExtJS的發送HTTP請求無法正常工作

所以形成提交功能我用這個網址

method:'POST', 
url: 'meeting/create.action', 

和我的控制器上我用這個

@RequestMapping(value = "/meeting/create.action", method = RequestMethod.POST) 
    public void add(MeetingUI data) { 
     System.out.println("In add post method"); 

     MeetingUI savedUser = service1.create(data); 
     if (savedUser != null) { 
      logger.debug(" Created Succesfully"); 
     } else { 
      logger.debug("Error trying to create account."); 
     } 
    } 

沒有數據被接收保存在數據庫中爲空 和其他錯誤S信息hown

HTTP Status 404 - /writeup/WEB-INF/meeting/create.jsp 

我不希望出現這種情況/meeting/create.action集成了春季安全我認爲這是錯誤

請任何一個有一個解決方案

回答

0

你處理方法的返回類型void。閱讀部分13.11.4。在Spring MVC Documentation支持處理方法的參數和返回類型,你看到

無效的,如果該方法處理響應本身(通過直接寫 響應內容,聲明類型 的ServletResponse/HttpServletResponse的用於該目的的說法)或者如果通過 RequestToViewNameTranslator(不在 處理程序方法簽名中聲明響應參數)應該隱式確定名稱的視圖 。

RequestToViewNameTranslator唯一彈簧實現是DefaultRequestToViewNameTranslator它說

RequestToViewNameTranslator簡單地變換 傳入的請求到一個視圖名稱的URI。

查找下面的請求查看名稱翻譯的一些例子。

http://localhost:8080/gamecast/display.html - >顯示

這將您的/meeting/create.action URI映射到meeting/create。然後我假設你有一些用於jsp文件的ViewResolver。這可能以/WEB-INF/爲前綴,後綴爲.jsp,最後可能不包含/WEB-INF/meeting/create.jsp,因此可能不包含404

使您的方法返回視圖名稱的字符串或使其寫入響應正文本身。

你的方法可能是這樣的:

@RequestMapping(value = "/meeting/create.action", method = RequestMethod.POST) 
public Stringadd(MeetingUI data) { 
    System.out.println("In add post method"); 

    MeetingUI savedUser = service1.create(data); 
    if (savedUser != null) { 
     logger.debug(" Created Succesfully"); 
     return "success"; 
    } else { 
     logger.debug("Error trying to create account."); 
     return "error"; 
    } 
} 
+0

你可以給我一個例子 – Amin 2013-05-10 01:14:29

+0

@Amin只是改變你的方法類似以上,其中'success'映射到一些JSP名爲'success.jsp',和相同的錯誤。 – 2013-05-10 03:40:10

+0

我只用extjs工作我有一個用於加載extjs腳本的jsp頁面 – Amin 2013-05-10 09:08:48