Question

Mon résultat devrait ressembler à ceci:

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

Et la classe d'action aurait une méthode getFoos qui retourne un tableau d'objets uniformes, e. g. comme ceci:

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

J'utilise le XSLTResult comme ceci:

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

Étant donné que je ne souhaite pas post-traiter le fichier XML, je n'ai pas spécifié de modèle, après avoir lu plusieurs tutoriels expliquant que cela fonctionnerait. Au lieu de cela, cela me donne cette erreur:

  

javax.xml.transform.TransformerException: opération non prise en charge. - [lieu inconnu]

J'ai donc essayé d'utiliser un modèle, mais celui-ci n'a jamais rendu une liste. Au lieu de cela, je reçois

  • toutes les propriétés des haricots toString() édités ensemble
  • document vide
  • balise <foo /> vide (pas <foos />, étrangement)

Je n'ai pas trouvé de didacticiel qui m'a aidé, ni sur Beans - > rendu XML ni XSLT. L’un des problèmes est que j’ai du mal à trouver de bons termes de recherche: googler & "Struts xml &"; et similaire renvoie une quantité énorme de liens complètement non pertinents sur des éléments de struts.xml, à l'exclusion de & "; struts.xml &"; des résultats ne sert à rien non plus, car les pages que je recherche auraient probablement des exemples d’extraits de struts.xml.

Je pense que je n'aurais pas vraiment besoin des modèles, donc s'il est possible de s'en passer, tant mieux.

Était-ce utile?

La solution

Certains commentateurs de ce blog ont eu la même erreur que vous avez mentionnée. Peut-être qu'une solution de contournement publiée vous aidera?

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top