2011-03-24 5 views
-1

Salut les amis Je suis créé une application j2me. il fonctionne parfaitement dans l'émulateur mais mobile, il affiche l'erreur comme java.lang.nosuchfielderror:No such field HEADERS.[[Ljava/lang/String;. Pourquoi ce qui se passe avec le mobile, il fonctionne bien dans l'émulateur ...... S'il vous plaît me aider à éliminer cette erreur ......java.lang.nosuchfielderror dans l'application j2me

public String connectPhoneName() throws Exception{ 
    String url = "http://122.170.122.186/Magic/getPhonetype.jsp"; 
    String phoneType; 
     if ((conn = connectHttp.connect(url, HEADERS)) != null) { 
      if ((in = connectHttp.getDataInputStream(conn)) != null) { 
       byte[] data = connectHttp.readDATA(in, 100); 
       phoneType = new String(data); 
       System.out.println("DATA : " + phoneType); 
      } else { 
       throw new Exception("ERROR WHILE OPENING INPUTSTREAM"); 
      } 
     } else { 
      throw new Exception("COULD NOT ESTABLISH CONNECTION TO THE SERVER"); 
     } 
    return phoneType; 

} 

Dans ce code, j'ai utilisé HEADERS.

Répondre

1

Il semble que votre application utilise certains champs (je suppose) ou static final ou final d'une classe de bibliothèque qui n'existe pas dans le profil de Java ME que votre périphérique mobile implémente. Mais je n'arrive pas à comprendre d'où vient ce champ. Peut-être que vous devriez chercher votre code de base pour l'utilisation de « Entête » comme identifiant ...


Si le champ HEADER est correctement déclaré dans votre base de code (votre interface MagiDEF) et le code que vous montriez utilise la tête de cette interface, alors vous devez avoir quelque chose de mal avec votre processus de construction ou de déploiement. Plus précisément, vous ne déployez pas la version de MagiDEF avec laquelle votre code (ci-dessus) a été compilé. Peut-être que vous avez une ancienne version de quelque chose dans un fichier JAR? Fondamentalement, l'erreur indique que vous avez une incompatibilité binaire entre certaines des classes/interfaces qui composent votre application.

+0

Veuillez cocher le code –

+0

Salut Hi Ce champs HEADERS déclarés dans l'interface MagiDEF, il est déclaré comme cela 'public String HEADERS [] [] = {{"Utilisateur-Agent", "Profile/MIDP-1.0, Configuration/CLDC- 1,0 "}}; ' & this utilisé pour setRequestProperty d'url comme url.setRequestProperty (HEADERS [0] [0], HEADERS [0] [1]); –