我的applet的java.lang.NoClassDefFoundError

时间:2012-07-09 10:25:28

标签: applet java

当我调用我的jsp时,我的应用程序中有一个applet我有这个错误

  

抛出java.lang.ClassNotFoundException:   VisualisationCourbeCharge.class at   sun.plugin2.applet.Applet2ClassLoader.findClass(未知来源)at   sun.plugin2.applet.Plugin2ClassLoader.loadClass0(未知来源)at   sun.plugin2.applet.Plugin2ClassLoader.loadClass(未知来源)at   sun.plugin2.applet.Plugin2ClassLoader.loadClass(未知来源)at   java.lang.ClassLoader.loadClass(未知来源)at   sun.plugin2.applet.Plugin2ClassLoader.loadCode(未知来源)at   sun.plugin2.applet.Plugin2Manager.createApplet(未知来源)at   sun.plugin2.applet.Plugin2Manager $ AppletExecutionRunnable.run(未知   来自java.lang.Thread.run(未知来源)

我的代码:

    StringBuffer applet = new StringBuffer();
    applet.append("<object classid=\"clsid:8AD9C840-044E-11D1-B3E9-00805F499D93\" ");
    applet.append("width = \"750\" height = \"500\" hspace = \"0\" vspace = \"0\" align = \"middle\">\n");
    applet.append("\t<param name=\"archive\" value=\"jfreechart-0.9.8.jar,jcommon-0.8.0.jar\">\n");
    applet.append("\t<param name=\"codebase\" value=\"./ihm/applet/graphe/\">\n");
    applet.append("\t<param name=\"code\" value=\"VisualisationCourbeCharge.class\">\n");
    applet.append("\t<param name=\"");
    applet.append(ConstantesApplet.PARAMETRE_LANGUE);
    applet.append("\" value=\"");
    applet.append(langue);
    applet.append("\">\n");


<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" width = "750" height = "500" hspace = "0" vspace = "0" align = "middle">
    <param name="archive" value="jfreechart-0.9.8.jar,jcommon-0.8.0.jar">
    <param name="codebase" value="./ihm/applet/graphe/">
    <param name="code" value="VisualisationCourbeCharge.class">
    <param name="langue" value="fr">
    <param name="unit" value="MW">
    <param name="powerUnit" value="">
    <param name="nomColonne" value="Valeur">
    <param name="dateDebut" value="2007-02-01T00:00:00">
    <param name="duree" value="1">
    <param name="decalage" value="7">
    <param name="nombreMaxJours" value="32">
    <param name="anterieur" value="false">
    <param name="existePuissanceSouscrite" value="false">
    <param name="listColumn" value="Valeur;">
    <param name="valuesTime" value="2007-02-01T00:00:00;2007-02-01T00:10:00;2007-02-01T00:20:00;2007-02-01T00:30:00;2007-02-01T00:40:00;2007-02-01T00:50:00;2007-02-01T01:00:00;2007-02-01T01:10:00;2007-02-01T01:20:00;2007-02-01T01:30:00;2007-02-01T01:40:00;2007-02-01T01:50:00;2007-02-01T02:00:00;2007-02-01T02:10:00;2007-02-01T02:20:00;2007-02-01T02:30:00;2007-02-01T02:40:00;2007-02-01T02:50:00;2007-02-01T03:00:00;2007-02-01T03:10:00;2007-02-01T03:20:00;2007-02-01T03:30:00;2007-02-01T03:40:00;2007-02-01T03:50:00;2007-02-01T04:00:00;2007-02-01T04:10:00;2007-02-01T04:20:00;2007-02-01T04:30:00;2007-02-01T04:40:00;2007-02-01T04:50:00;2007-02-01T05:00:00;2007-02-01T05:10:00;2007-02-01T05:20:00;2007-02-01T05:30:00;2007-02-01T05:40:00;2007-02-01T05:50:00;2007-02-01T06:00:00;2007-02-01T06:10:00;2007-02-01T06:20:00;2007-02-01T06:30:00;2007-02-01T06:40:00;2007-02-01T06:50:00;2007-02-01T07:00:00;2007-02-01T07:10:00;2007-02-01T07:20:00;2007-02-01T07:30:00;2007-02-01T07:40:00;2007-02-01T07:50:00;2007-02-01T08:00:00;2007-02-01T08:10:00;2007-02-01T08:20:00;2007-02-01T08:30:00;2007-02-01T08:40:00;2007-02-01T08:50:00;2007-02-01T09:00:00;2007-02-01T09:10:00;2007-02-01T09:20:00;2007-02-01T09:30:00;2007-02-01T09:40:00;2007-02-01T09:50:00;2007-02-01T10:00:00;2007-02-01T10:10:00;2007-02-01T10:20:00;2007-02-01T10:30:00;2007-02-01T10:40:00;2007-02-01T10:50:00;2007-02-01T11:00:00;2007-02-01T11:10:00;2007-02-01T11:20:00;2007-02-01T11:30:00;2007-02-01T11:40:00;2007-02-01T11:50:00;2007-02-01T12:00:00;2007-02-01T12:10:00;2007-02-01T12:20:00;2007-02-01T12:30:00;2007-02-01T12:40:00;2007-02-01T12:50:00;2007-02-01T13:00:00;2007-02-01T13:10:00;2007-02-01T13:20:00;2007-02-01T13:30:00;2007-02-01T13:40:00;2007-02-01T13:50:00;2007-02-01T14:00:00;2007-02-01T14:10:00;2007-02-01T14:20:00;2007-02-01T14:30:00;2007-02-01T14:40:00;2007-02-01T14:50:00;2007-02-01T15:00:00;2007-02-01T15:10:00;2007-02-01T15:20:00;2007-02-01T15:30:00;2007-02-01T15:40:00;2007-02-01T15:50:00;2007-02-01T16:00:00;2007-02-01T16:10:00;2007-02-01T16:20:00;2007-02-01T16:30:00;2007-02-01T16:40:00;2007-02-01T16:50:00;2007-02-01T17:00:00;2007-02-01T17:10:00;2007-02-01T17:20:00;2007-02-01T17:30:00;2007-02-01T17:40:00;2007-02-01T17:50:00;2007-02-01T18:00:00;2007-02-01T18:10:00;2007-02-01T18:20:00;2007-02-01T18:30:00;2007-02-01T18:40:00;2007-02-01T18:50:00;2007-02-01T19:00:00;2007-02-01T19:10:00;2007-02-01T19:20:00;2007-02-01T19:30:00;2007-02-01T19:40:00;2007-02-01T19:50:00;2007-02-01T20:00:00;2007-02-01T20:10:00;2007-02-01T20:20:00;2007-02-01T20:30:00;2007-02-01T20:40:00;2007-02-01T20:50:00;2007-02-01T21:00:00;2007-02-01T21:10:00;2007-02-01T21:20:00;2007-02-01T21:30:00;2007-02-01T21:40:00;2007-02-01T21:50:00;2007-02-01T22:00:00;2007-02-01T22:10:00;2007-02-01T22:20:00;2007-02-01T22:30:00;2007-02-01T22:40:00;2007-02-01T22:50:00;2007-02-01T23:00:00;2007-02-01T23:10:00;2007-02-01T23:20:00;2007-02-01T23:30:00;2007-02-01T23:40:00;2007-02-01T23:50:00;">
    <param name="valuesNominal" value="0.5;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;0.0;">
    <param name="valuesFormer" value="">
    <param name="valuesPower" value="">
</object>

它在JRE 1.4下运行,但在JRE 1.6

中运行

3 个答案:

答案 0 :(得分:2)

更改  来自

<param name="code" value="VisualisationCourbeCharge.class">

<param name="code" value="VisualisationCourbeCharge">

答案 1 :(得分:2)

将后续jar个文件添加到服务器中。 @Moataz Elmasry的建议很好。

将您的jar文件放入特定目录。 i.e. /bin

答案 2 :(得分:2)

...电解金属锰

我不太确定,但我只想分享我的案例,所以也许这对你有帮助......

如果你说它仅适用于1.4版本,那么我可能会建议你的 VisualisationCourbeCharge 类内部结构; 我注意到,这个班不是一个免费的?好的......所以,我记得,1.4版本适用于内部类......在1.4代码中像

public class A{}
class B{}//inner class B

......我记得,在同一个包中生成A和B类

但在1.6中我使用该代码结构时遇到了问题:java.lang.ClassNotFoundException

public class A{}
class B{}//inner class B

...因为包中没有生成类B(至少在我的Eclipse IDE中)......

所以我希望你仔细观察你的源文件; VisualisationCourbeCharge 是一个内部类(作为样本B类)吗?如果是,那么只需将它放在主要类(示例A类)中,或者将其设置为非子类,而不是单独的公共类,然后重新编译。


还有一个建议......

您是否曾尝试使用这两个标记,doc说:

<object 
  classid="clsid:CAFEEFAC-0016-0000-0000-ABCDEFFEDCBA"
  <param name="code" value="Applet1.class">
    <comment>
      <embed code="Applet1.class"
        type="application/x-java-applet;jpi-version=1.6">
        <noembed>
          No Java Support.
        </noembed>
      </embed>
    </comment>
  </object>

这应该支持IE和Mozilla

仍有更少的细节...显示 VisualisationCourbeCharge 源代码


报告是否有帮助