2011-03-24 36 views
-1

嗨嗨朋友我创建了一个j2me应用。它完美地运行在模拟器,但在移动它显示像java.lang.nosuchfielderror:No such field HEADERS.[[Ljava/lang/String;. 为什么发生这种情况与移动,它运行在模拟器良好的错误...... 请帮我删除这个错误......j2me中的java.lang.nosuchfielderror应用

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; 

} 

在这段代码中我使用了HEADERS。

回答

1

它看起来像您的应用程序正在使用您的移动设备实现的Java ME的配置文件中不存在的某些库类的一些(我猜)或static finalfinal字段。

但我不知道该领域来自哪里。也许你应该寻找你的代码中使用“头”作为标识符的...


如果标题字段在您的代码库(您MagiDEF接口),并表现出你使用从标题中的代码正确声明该接口,那么您的构建或部署过程中必须有错误。具体而言,您并未部署您的代码(以上)已编译的版本的MagiDEF。也许你在某些JAR文件中有一些旧版本的东西?

基本上,该错误表明组成应用程序的某些类/接口之间存在二进制不兼容性。

+0

请检查验证码 – 2011-03-24 12:15:45

+0

嗨你好这个字段HEADERS在接口MagiDEF中声明,它被声明为'public String HEADERS [] [] = {{“User-Agent”,Profile/MIDP-1.0 Configuration/CLDC- 1.0" }};” &这用于像url.setRequestProperty(HEADERS [0] [0],HEADERS [0] [1])的url的setRequestProperty; – 2011-03-25 07:31:39

相关问题