随笔 - 20  文章 - 8  trackbacks - 0
<2007年6月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用链接

留言簿(1)

随笔分类

随笔档案

搜索

  •  

最新评论

阅读排行榜

评论排行榜

OS:linux
Web server: resin
错误如下:
java.lang.IllegalStateException: must call load class on top
        at com.caucho.util.DynamicClassLoader.loadClass(DynamicClassLoader.java:431)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:141)

    今天干活碰到这个错误了。在网上搜索下,没有相关的错误和解决方法。我就把我解决的办法放上来了。

    开始碰到错误的时候,现确定错误发生的地方,最后确定到了下面这段代码:
Product product = (Product) Class.forName(handle).getConstructor(types).newInstance(args);

    这段代码具体的意思是要创建一个类的实例。很简单,但却出现了错误。检查程序运行时传递过来的参数,每个参数都没有问题,是按照预想的传递过来的。按说参数传递的对了,理应不会出现问题的。再看看给出来的错误内容,不知道在说什么,什么是“must call load class on top”?

    思索了半天,找不到原因。后来查看了一下class文件的权限,发现class文件的权限是-r--r--r--,索性改成-rwxrwxrwx,再次测试就可以了。
posted on 2007-06-25 14:52 卜清楚 阅读(1764) 评论(1)  编辑  收藏 所属分类: java.j2ee

FeedBack:
# re: 错误:java.lang.IllegalStateException: must call load class on top 2007-06-26 11:04 BeanSoft
我们还碰过过测试的时候启动 weblogic 的账户和类库的 jar 文件不同而导致类无法加载的问题.

Linux, Solaris, Unix 文件系统权限有时候就会导致类无法加载, 一般来说都弄成一个用户下的就好了.  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: