Как мне преобразовать массив Java-бинов в XML с помощью struts2?

StackOverflow https://stackoverflow.com/questions/1644007

  •  10-07-2019
  •  | 
  •  

Вопрос

Мой вывод должен быть примерно таким:

<result>
  <item>
    <id>123</id>
    <src>123</src>
    <dst>123</dst>
  </item>
  <item>
  <!-- ... -->
  </item>
</result>

И класс действия будет иметь метод getFoos который возвращает массив однородных объектов, например.г.так:

class Foo {
  // ...
  public long getId() { ... }
  // ...
}

Я использую XSLTResult следующим образом:

<action name="channels" method="loadAll" class="com.econemon.suite.api.impl.FooAction">
  <result name="success" type="xslt">
    <param name="exposedValue">foos</param>
  </result>
</action>

Поскольку я не хочу постобрабатывать XML, я не указал ни одного шаблона после прочтения нескольких руководств, в которых говорилось, что это будет работать.Вместо этого он дает мне эту ошибку:

javax.xml.transform.TransformerException:Операция не поддерживается.- [неизвестное место]

Поэтому я попробовал использовать шаблон, но он вообще не отображал список.Вместо этого я получаю

  • все свойства бобов toString()редактировали вместе
  • пустой документ
  • пустой <foo /> тег (не <foos />, как ни странно)

Я не смог найти учебник, который помог бы мне, ни по рендерингу Beans->XML, ни по XSLT.Одна из проблем заключается в том, что мне трудно подобрать хорошие условия поиска:поиск в Google "struts xml" и тому подобных возвращает огромное количество совершенно нерелевантных ссылок о вещах в struts.xml, исключать «struts.xml» из результатов также бесполезно, поскольку страницы, которые я ищу, скорее всего, будут содержать примеры фрагментов struts.xml.

Думаю, шаблоны мне не особо-то и понадобятся, так что если можно обойтись без них, отлично.

Это было полезно?

Решение

У некоторых комментаторов этого сообщения в блоге была та же ошибка, о которой вы упомянули.Может быть, один из опубликованных обходных путей поможет?

http://cse-mjmcl.cse.bris.ac.uk/blog/2007/09/10/1189430125294.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top