我在配置Spring的Dispatcher時遇到問題。我想實現的是:Spring MVC無法配置調度程序Servlet正確
- 構建REST WebService的接收請求
- 具備HTML + Ajax的網頁使用了該數據(因此,我沒有在我的Spring項目查看)
到目前爲止,我只有2個HTML頁面:登錄(使用j_security_check)和主頁面。兩者都非常簡單。我也有一個簡單的控制器:
MainController.java
@RestController //Or @Controller and @ResponseBody, no difference, right?
public class MainController {
@RequestMapping("rest/main/data")
public String getData() {
return "{data: \"DATA HUEHUE\"}"; // Yes, I'm brazilian
}
}
我試圖爲web.xml和調度-servlet.xml中如下配置:
的web.xml:
<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>/rest/*</url-pattern>
</servlet-mapping>
調度-servlet.xml中
<context:component-scan base-package="com.example.controller"/>
這不起作用。我得到的消息INFO: Mapped URL path [/rest/main/data] onto handler 'mainController'
但是當我嘗試訪問我得到No mapping found for HTTP request with URI [/myapp/rest/main/data] in DispatcherServlet with name 'dispatcher'
我也試過:
- 在web.xml中:
<url-pattern>/</url-pattern>
- 在調度員的servlet:同樣
- 發生了什麼事:控制器DID工作,但應用程序也試圖映射我的login.html,並找不到匹配,所以我得到404; - ;
我知道使用前綴和sufix的「標準」配置,但由於我沒有在這裏的意見,我不認爲這是正確的做法。 我在春天有點新(正如你可能已經注意到的那樣),所以請溫柔回答。
任何想法?
感謝提前:)
我的項目樹:
-project
--src
---main
----webapp
-----WEB-INF
------web.xml
------weblogic.xml
------dispatcher-servlet.xml
-----www
------main.html
-----login.html
(登錄超出WWW)
你的handler_apping在'dispatcher-servlet.xml'中。所以請在問題中提供完整的'dispatcher-servlet.xml'。 –