2016-11-15 1 views
0

Notre application avec des services reposants fonctionne correctement sur jboss 6, après la mise à niveau vers jboss 7, aucun des services de repos ne fonctionne.Aucun éditeur de corps de message n'a été trouvé pour la classe de réponse ArrayList [jboss 7]

Exception que nous avons rencontré est http 500 erreur interne du serveur:

One of the restful service error is: 
    INFO - HTTP Status Code: 500 
    INFO - Web Service call execution: 1410 ms. 
    INFO - Content-Length: null 
    INFO - Content-Type: text/plain 
    INFO - Message-Body: **No message body writer has been found for response class ArrayList.** 
l'application

a les dépendances suivantes. Après analyse, j'ai trouvé que le jboss avait un repos api facile, ce qui est en conflit avec les librairies cxf.

J'ai essayé beaucoup d'options disponibles sur le Web pour exclure le reposeasy, mais cela n'a pas aidé. Comment exclure les librairies jboss incorporées reste facile et d'autres composants de repos pour forcer jboss à utiliser les bibliothèques d'application?

Répondre

0

J'ai trouvé que l'exclusion du sous-système jaxrs dans son ensemble dans jboss 7 m'a aidé à forcer jboss à s'appuyer sur les bibliothèques cxf et javax.ws.rs-api fournies par l'application.

J'ai ajouté le fichier jboss-deployment-structure.xml ci-dessous au fichier war pour exclure le sous-système jaxrs.

<?xml version="1.0" encoding="UTF-8"?> 
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2"> 
    <deployment> 
     <exclude-subsystems> 
      <subsystem name="jaxrs" /> 
     </exclude-subsystems> 
    </deployment> 
</jboss-deployment-structure>