Мой предпочтительным решением этой проблемы заключается в использовании JSON синтаксический анализатор, который обеспечивает выходной сигнал, который реализует java.util Интерфейс .Map и java.util.List. Это позволяет просто проанализировать структуру JSON на языке выражения JSP.
Вот пример использования JSON4J с Apache Wink. Образец импортирует данные JSON из URL-адреса, анализирует его в сценарии Java и просматривает результирующую структуру.
<c:import var="dataJson" url="http://localhost/request.json"/>
<%
String json = (String)pageContext.getAttribute("dataJson");
pageContext.setAttribute("parsedJSON", org.apache.commons.json.JSON.parse(json));
%>
Fetch the name of the node at index 1 : ${parsedJSON.node[1].name}
Чтобы сделать это чистый, было бы предпочтительнее, чтобы создать JSTL тег, чтобы сделать синтаксический анализ и избежать Java скриптлета.
<c:import var="dataJson" url="http://localhost/request.json"/>
<json:parse json="${dataJson}" var="parsedJSON" />
Fetch the name of the node at index 1 : ${parsedJSON.node[1].name}
у правы .. значение публикуется, как вы говорите .. но я не уверен, как получить и обработать его в СПЯ .. – user98534
request.getParameter это правильный путь, чтобы получить полезную нагрузку. Затем вам нужно использовать синтаксический анализатор json для анализа полезной нагрузки в JSONObject. –