#struts2
#struts2
Вопрос:
Я создаю jstree с данными JSON в struts 2. Я хочу сгенерировать данные JSON в действие и перейти к средствам JSP для создания дерева. Но я не могу понять, как передать JSON из класса Action в JSP и создать jstree. Пожалуйста, кто-нибудь, предоставьте мне пример кода для разработки jstree из JSON в struts 2.
Ответ №1:
Используйте struts2-json-plugin. Вы можете найти множество примеров использования этого плагина здесь, на SO (я написал пару, просто найдите их), а также здесь : http://struts.apache.org/2.2.3/docs/json-plugin.html
Просто с помощью struts2-conventions-plugin и struts2-json-plugin вам нужно будет только поместить действие struts2 в пакет, содержащий слово action.
ie: /somePackageStructure/action/MyAction.java
Теперь, если вы где написать http://myhost/my-action
Вы получите результат json (при условии, что вы настроили свое действие с правильной аннотацией или правильным struts.xml , все это объяснено по предыдущей ссылке, или поиск здесь).
Как создается json, довольно просто. Все, для чего у вас есть геттеры, сериализуется в json. Все, что когда-либо получают эти объекты, также сериализуется, в свою очередь, также сериализуются карты и списки, как и следовало ожидать для json.
Примечание: «как передать JSON из класса Action в JSP» вы, вероятно, хотели сказать: «Как мне получить json из struts2 с загруженной страницы». Поскольку вам нужно будет создать действие для загрузки вашей страницы (с вашим jstree), эта страница на клиенте затем должна будет выполнять вызовы для извлечения необходимых ей данных.
Если вы не работали с этим плагином, я бы рекомендовал ввести URL-адрес в Chrome, он покажет результат json напрямую (если вы знакомы с firebug, это тоже отличный инструмент). Затем создайте страницу, которая отображает что-то асинхронно при нажатии кнопки. Тогда вы сможете решить эту проблему.
Для начала работы с клиентской стороной при использовании json и jquery мне очень помогла эта ссылка: http://api.jquery.com/jQuery.getJSON /
Ответ №2:
Вы можете сгенерировать JSON, используя классы, найденные на http://json.org/java /. Передайте результирующую строку в виде переменной, ограниченной страницей, в представление и используйте ее по мере необходимости.