靠,我在WTK2.0里可以运行的,到了MOTO388里就不行了

pl5th2001 2003-05-06 08:49:13
重新编译,没问题的,但运行的时候
Fatal Error: Class definition not found:org/kxml2/io/KXmlParser
javax/microedition/midlet/AppContext::run@118
其中org/kxml2/io/KXmlParser是存在的,我也看过了,在WTK里是可以运行的
不知道怎么回事
...全文
83 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
pl5th2001 2003-05-13
  • 打赏
  • 举报
回复
read0: ioe Connection reset是什么错误啊?
pl5th2001 2003-05-09
  • 打赏
  • 举报
回复
帮帮我啊,老天
xiaowencsdn 2003-05-08
  • 打赏
  • 举报
回复
这是因为moto388只支持 midp1.0,我建议你用j2me1.4来编译打包试试,我就是388的手机,我也碰到这类情况过。
pl5th2001 2003-05-08
  • 打赏
  • 举报
回复
设置应该没问题的,以前的KXML1版本就没出现这种错误
pl5th2001 2003-05-08
  • 打赏
  • 举报
回复
在SUN公司的产品里问题我已经解决了,一切都正常了。现在就是在MOTO里不能用,编译也是正常的了,但不能运行,KXmlParser parser = new KXmlParser();这一句出错了,不知道为什么
哪里可以下载MOTO388的模拟器?我想放到WTK2.0里用,我下载了一个,不过好象少了些图片,运行起来很难看,字体什么的都很糟糕
villagehead 2003-05-08
  • 打赏
  • 举报
回复
我以前在wtk1.0.4里也出现过这样的错!
好像我是把kxml.zip放到了C:\wtk104\的lib目录里就出这样的错,
放到项目自己的lib目录里就好了!

不知道我的经历对你有没有帮助!

good luck


pl5th2001 2003-05-08
  • 打赏
  • 举报
回复
Fatal Error: Verification failed
com/mot/j2me/midlets/Newsreader/Newsreader$ReadThread::run@11

找到错误是KXmlParser parser = new KXmlParser();这一句就是出错的地方
在j2me1.4+WTK2.0里没这个错误的
wantvictory 2003-05-08
  • 打赏
  • 举报
回复
我认为是设置问题。。。
pl5th2001 2003-05-07
  • 打赏
  • 举报
回复
放在Emulator7.5\lib和Emulator7.2\lib下,而且在makeone.bat里也加进去了,我把Emulator7.2\lib里的解压缩后还是有问题:
Fatal Error: Verification failed
com/mot/j2me/midlets/Newsreader/Newsreader$ReadThread::run@11

我把代码贴一下吧,帮我看看哪里有错

package com.mot.j2me.midlets.Newsreader;
import java.io.*;
import java.util.Vector;

import org.kxml2.io.*;
import org.xmlpull.v1.*;

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.io.*;

public class Newsreader extends MIDlet implements CommandListener {

static final String URL = "http://127.0.0.1/001.asp";
static final String TITLE = "NewsForge";

Vector descriptions = new Vector();
List newsList = new List(TITLE, Choice.IMPLICIT);
TextBox textBox = new TextBox("", "", 256, TextField.ANY);
Display display;

Command backCmd = new Command("Back", Command.BACK, 0);

class ReadThread extends Thread {

public void run(String urlstring) {
try {
HttpConnection httpConnection = (HttpConnection) Connector.open(urlstring);

KXmlParser parser = new KXmlParser();

parser.setInput(new InputStreamReader(httpConnection.openInputStream()));

// parser.relaxed = true;

parser.nextTag();
parser.require(XmlPullParser.START_TAG,null,"backslash");

while (parser.nextTag () != XmlPullParser.END_TAG)
readStory(parser);

parser.require(XmlPullParser.END_TAG, null, "backslash");
parser.next();

parser.require(XmlPullParser.END_DOCUMENT, null, null);
} catch (Exception e) {
e.printStackTrace();
descriptions.addElement(e.toString());
newsList.append("Error", null);
}
}

/** Read a story and append it to the list */

public void readStory(KXmlParser parser)
throws IOException, XmlPullParserException {

parser.require(XmlPullParser.START_TAG, null, "story");

String title = null;
String description = null;

while (parser.nextTag() != XmlPullParser.END_TAG) {

parser.require(XmlPullParser.START_TAG, null, null);
String name = parser.getName();

String text = parser.nextText();

System.out.println ("<"+name+">"+text);

if (name.equals("title"))
title = text;
else if (name.equals("description"))
description = text;

parser.require(XmlPullParser.END_TAG, null, name);
}
parser.require(XmlPullParser.END_TAG, null, "story");

if (title != null) {
descriptions.addElement(""+description);
newsList.append(title, null);
}
}
}

public void startApp() {
display = Display.getDisplay(this);
display.setCurrent(newsList);
newsList.setCommandListener(this);
textBox.setCommandListener(this);
textBox.addCommand(backCmd);
new ReadThread().run(URL);/////////////出错的地方,去掉就没错了
}

public void pauseApp() {
}

public void commandAction(Command c, Displayable d) {

if (c == List.SELECT_COMMAND) {

String text = (String) descriptions.elementAt(newsList.getSelectedIndex());

if (textBox.getMaxSize() < text.length())
textBox.setMaxSize(text.length());

textBox.setString(text);
display.setCurrent(textBox);
} else if (c == backCmd)
display.setCurrent(newsList);
}

public void destroyApp(boolean really) {
}
/*
public static void main(String[] argv) {
org.me4se.MIDletRunner.main (new String [] {"Newsreader"});
}
*/
}

以上代码在WTK2.0里运行完全正常,
pl5th2001 2003-05-07
  • 打赏
  • 举报
回复
但我的代码没有关系啊,是在MOTO里重新编译的,除非MOTO不支持KXML2
villagehead 2003-05-07
  • 打赏
  • 举报
回复
KXML2是“外挂API”,应该和手机的功能没什么太大的关系吧!

我觉得问题还是你的那个kxml2.zip放的位置!

至于放那里,我就不知道了!:(

good luck
peterli007 2003-05-06
  • 打赏
  • 举报
回复
wtk2.0是新版的,有MIDP2.0

MOTO388是否支持MIDP2.0 ????
pl5th2001 2003-05-06
  • 打赏
  • 举报
回复
还有一个不懂的地方,大家是怎么运行MOTOROLA 3.1里的tests例子的?我不会

13,097

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧