0

Salut Je rencontre l'erreur suivante dans mon GlassFishVersion Jackson pour l'API de téléchargement d'Amazon GlassFish 4.1

Warning: A system exception occurred during an invocation on EJB FileUpload, method: public java.lang.String com.sahvidya.ejb.entityoperations.FileUpload.personalFileUploadFromSystem(com.sahvidya.entity.entitysystem.PersonalDirectory,org.primefaces.model.UploadedFile,java.lang.String) throws java.io.IOException


Warning: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean: java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.ObjectMapper.enable([Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/databind/ObjectMapper;

En regardant divers blogs Je comprends GlassFish version 4.1 a la bibliothèque jackson plus (2.4) qui n'a pas cette méthode et doit mettre à jour la version de Jakcson (2.8). J'ai pensé à améliorer ma glassfish mais d'autres problèmes ont été rencontrés. Garder la même version glassfish ce qui serait le moyen de mettre à niveau la version jackson. Juste ajouter le projet mis à jour des fichiers jar jackson permettra de résoudre le but? Y aura-t-il un problème de conflit de version pour la version jackson disponible dans le projet? Un de Netbeans et d'autres que j'ai ajouté manuellement.

Répondre

0

4.1.1 GlassFish ne bunde dans certains pots jackson:

./glassfish/modules/jackson-jaxrs-base.jar 
./glassfish/modules/jackson-annotations.jar 
./glassfish/modules/jersey-media-json-jackson.jar 
./glassfish/modules/jackson-databind.jar 
./glassfish/modules/jackson-jaxrs-json-provider.jar 
./glassfish/modules/jackson-core.jar 

jackson-core.jar est à la version 2.3.2 si c'est pourquoi notre application GlassFish déployée devient des problèmes.

Le dépassement est facile. Ajouter WEB-INF/GlassFish-web.xml à votre webapp avec dépendances plus tard jackson avec ce contenu:

<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD 
GlassFish Application Server 3.1 Servlet 3.0//EN" 
"http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd"> 
<glassfish-web-app> 
    <class-loader delegate="false"/> 
</glassfish-web-app> 

Malgré les références à 3.1 en DOCTYPE il fonctionne très bien avec 4.1.1.