我正在尝试使用使用JSON的Spring MVC创建和休息API:
控制器:
@RestController public class CrawlerController {
@RequestMapping(value = "/checkForMarfeelizableSite", method = RequestMethod.POST)
public ResponseR checkForMarfeelizableSites(@RequestBody List<Entry> list) {
// Response
ResponseR responseR = new ResponseR();
responseR.setOperationResult(OperationResult.OK);
for (Entry entry : list) {
System.out.println("Entry: " + entry);
}
return responseR;
} }
入门班
public class Entry {
String url;
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}}
web.xml:
<web-app>
<display-name>Marfeel Marfeelizable Checker</display-name>
<!-- Spring Context -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/marfeel-context.xml</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<!-- Servlet -->
<servlet>
<servlet-name>marfeel-crawler-api</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Mapping -->
<servlet-mapping>
<servlet-name>marfeel-crawler-api</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<!-- Welcome file List -->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
我在pom.xml中添加了Jackson库(jackson-mapper-asl),但是我收到了
HTTP 415 Error
这是我发送的json示例:
[{"url": "canda.com"},{"url": "toshiba.es"}]
最佳答案
您可以检查以下内容吗?
更改
公共ResponseR checkForMarfeelizableSites(@RequestBody列表
清单)
至
公共ResponseR checkForMarfeelizableSites(@RequestBody
ArrayList列表)
(由于List是一个接口,因此无法创建实例)。
Entry.class:在类名上方添加@XmlRootElement和一个空的承包商(Web可导出类必需)