IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Web en Java Discussion :

Erreur conversion données au format JSON


Sujet :

Développement Web en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : Cameroun

    Informations forums :
    Inscription : Avril 2009
    Messages : 168
    Par défaut Erreur conversion données au format JSON
    Bonjour,

    je développe une appli web qui utilisera entre autres du REST pour l'accès aux différents services qu'elle propose.
    J'ai commencé par une page de test pour vérifier que l'un des service fonctionne bien mais là j'ai eu une erreur.
    Mes déclarations sont les suivantes:
    Dans le fichier javascript, j'ai déclaré ceci pour l'appel au service:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
                       $.ajax({
            			type: 'GET',
            			url: "http://localhost:9080/reportsfroml/rest/search/searchbycriteria",
            			data:{
            				beginDate: "'"+this.dateInputFrom()+"'",
    						endDate: "'"+this.dateInputTo()+"'",
    						ipnTech: "'"+this.items()[this.selectedIndex()]+"'"
            			},
            			cache : false,
            			dataType: "json", 
            			success: function(datla){
                					alert("test "+datla);
            					},
            			error: function(jqXHR, textStatus, errorThrown){
                					alert('get error: ' + textStatus);
            			}
        			});
    Dans la classe JAVA qui est appelé, voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    @Path("/search")
    public class FindLogsbyRestService {
     
    	public FindLogsbyRestService(){
     
    	}
    	@GET
    	@Path("searchbycriteria")
    	//@Produces({MediaType.APPLICATION_JSON})
    	@Produces("application/json")  
    	public Response getLogsbyCriteria(@QueryParam("beginDate")String pStartDate, @QueryParam("endDate")String pEndDate,
    			@QueryParam("ipnTech")String pIpnTech){
     
    		System.out.println("pStartDate "+pStartDate+" endDate "+pEndDate+" ipnTech "+pIpnTech);
     
    		String lQueryParam = "pStartDate "+pStartDate+" endDate "+pEndDate+" ipnTech "+pIpnTech;
     
    		EltLog t = new EltLog();
     
    		t.setFData(lQueryParam);
     
    		return Response.ok(t).build();	
    	}
    }
    Enfin la classe EltLog correspond à:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    @XmlAccessorType(XmlAccessType.FIELD)
    public class EltLog {
     
    	public EltLog(){
     
    	}
    	@XmlElement(name = "fdata")
    	private String fData;
     
    	public String toString(){
     
    		return fData;
    	}
     
    	public String getFData() {
    		return fData;
    	}
     
    	public void setFData(String data) {
    		fData = data;
    	}
    }
    Pour des contraintes techniques, j'utilise la jdk 1.5 et je travaille avec Websphere 6.1.
    L'erreur qui m'est remontée est la suivante: (voir en pj : log.txt )

    Pourrez vous avoir une idée de ce qui pose problème?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : Cameroun

    Informations forums :
    Inscription : Avril 2009
    Messages : 168
    Par défaut
    Bonjour,

    j'ai résolu mon souci. J'utilisais pour faire la conversion de mon objet de type EltLog en format compatible avec json.
    Pour une raison que je n'arrive toujours pas à expliquer, ça générait une erreur.
    Du coup, j'ai changé d'api, j'utilise gson (l'api de google). C'est très facile d'utilisation.
    Dans ma classe EltLog, j'ai enlévé toutes les annotations xml.
    Et dans la classe FindLogsbyRestService , j'ai modifié comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    @Path("/search")
    public class FindLogsbyRestService {
     
    	public FindLogsbyRestService(){
     
    	}
    	@GET
    	@Path("searchbycriteria")
    	@Produces({MediaType.APPLICATION_JSON})
    	public String getLogsbyCriteria(@QueryParam("beginDate")String pStartDate, @QueryParam("endDate")String pEndDate,
    			@QueryParam("ipnTech")String pIpnTech){
     
    		System.out.println("pStartDate "+pStartDate+" endDate "+pEndDate+" ipnTech "+pIpnTech);
     
    		String lQueryParam = "pStartDate "+pStartDate+" endDate "+pEndDate+" ipnTech "+pIpnTech;
     
    		EltLog t = new EltLog();
     
    		t.setFData(lQueryParam);
     
    		GsonBuilder builder = new GsonBuilder();
    		Gson gson = builder.create();
     
    		return gson.toJson(t);
    	}
    }
    c'est tout!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 16
    Dernier message: 03/06/2016, 11h18
  2. [AC-2007] Erreur conversion type de données
    Par Rapheux dans le forum IHM
    Réponses: 1
    Dernier message: 12/06/2010, 18h31
  3. Donnes renvoyer en XML malgre indication du format JSON
    Par italiasky dans le forum Services Web
    Réponses: 1
    Dernier message: 26/04/2010, 19h52
  4. erreur conversion type de données 3421
    Par sunwind dans le forum VBA Access
    Réponses: 1
    Dernier message: 05/05/2008, 16h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo