0
現在、Springを使用してWebアプリケーションを構築しています。私のフロントエンドアプリケーションは、そのデータをXML形式で要求します。これは、Internet ExplorerとMS Edgeを除くすべてのブラウザで正常に動作しています。両方ともフロントエンドで使用されているjavascriptコンポーネントの問題と思われるText/HTMLとしてレスポンスにラベルを付けます。Spring 4.XがXMLへの応答のコンテンツタイプを設定しました
レスポンスにapplication/xmlというラベルを付けるにはどうすればよいですか?
@RequestMapping(value = "/dashboardData", method = RequestMethod.GET, produces="application/xml")
@ResponseBody
public ModelAndView getBereichsleiterData() {
HashMap<String, Object> model = new HashMap();
List<Map<String, Object>> data = dataProvider.getEintraege();
model.put("total_count",dataProvider.getEintraegeCount());
model.put("pos_start",0);
model.put("table", data);
return new ModelAndView("data/gridData", model);
}
とデータ/ gridData下のファイルは、XMLをレンダリングするために使用されているが.jspである:ここでは、応答を生成するJavaコードがある
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>
<%@ page isELIgnored="false" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<?xml version="1.0" encoding="UTF-8"?>
<rows total_count='${total_count}' pos='${pos_start}'>
<c:set var="id" value="${pos_start}" scope="page" />
<c:forEach var="entry" items="${table}" varStatus="loop">
<c:set var="id" value="${id + 1}" scope="page"/>
<row id='${id}'>
<cell>${entry.GEN_REKL_KEY}</cell>
<cell>${entry.ART}</cell>
<cell>${entry.WGR}</cell>
<cell>${entry.EAN}</cell>
<cell>${entry.HERSTELLER_NAME}</cell>
<cell>${entry.BETRIEB}</cell>
<cell>${entry.STATUS_ID}</cell>
<cell>${entry.PROZESS_START}</cell>
<cell>${entry.LETZTE_BEARBEITUNG}</cell>
<cell>${entry.AKT_BENUTZER_NAME}</cell>
</row>
</c:forEach>
</rows>
実際にJSPの最初の行をチェックしましたか? –
どうすればそれを上書きすることができますか?それを私に指摘してくれてありがとう、ありがとう。あなたのヒントを解決策としてマークできるように、質問に答えてください。 –