2011-07-20 39 views
1

我有一个java小程序,我想包括在我的ASP.NET页面。该小程序在常规的旧HTML页面上工作。当我尝试包括但在我的ASP.NET页面的小程序,Java的出现启动(它显示了Java标志和spinny蓝圈),但好发于我的主类的异常:有没有一种简单的方法将Java applet合并到ASP.NET页面中?

load: class com.myclass.Main.class not found. 
    java.lang.ClassNotFoundException: com.myclass.Main.class 

我我把小程序在页面下面的代码 -

<applet 
code="com.xyz.Main.class" 
width="500" height="500" 
archive="MyJar.jar" 
> 
    <param name="aParam" value="SomeValue"/> 
</applet> 

注意,这正是我用来放小程序到一个普通的HTML页面相同的标签。我猜这个类没有发现异常的原因是,当ASP编译页面时,它把它放在其他地方?如果是这样,在哪里?请注意,我还没有真正将此页面部署到Web服务器,它只是在我的开发计算机上本地运行。

+0

“抛出java.lang.ClassNotFoundException” 对不起,我乱放空间 – Alex

+0

“载:类com.myclass.Main.class找不到 抛出java.lang.ClassNotFoundException:com.myclass。主要。类” – Alex

+0

谢谢。:-)早先的评论删除,编辑CNFE质疑。..和现在其实我看着它,它让我意识到,在'code'属性'.class'除了不需要时,充分com.xyz.Main'的'限定类名就可以了(或失败)一样好。这显然不是这里真正的问题(这是下到代码库,如已经被保罗提及)。 –

回答

4

为什么不简单地用codebase attribute指定一个绝对的URI /誓言给你的小程序?这样你就不必担心不同系统的相对路径的变幻莫测。

另外see here for a longer explanation。摘录:

指定小程序目录

默认情况下,浏览器会在同一个目录中具有标签的HTML文件的applet的类和归档文件。 (如果小应用程序的类位于一个包中,则浏览器使用包名称在HTML文件的目录下构建目录路径。)但是,有时将小应用程序的文件放在其他位置很有用。您可以使用代码属性告诉在哪个目录applet的文件所在的浏览器:

<APPLET CODE=AppletSubclass.class CODEBASE=aURL 
      WIDTH=anInt HEIGHT=anInt> 
    </APPLET> 

如果aURL是一个相对URL,那么它的解释相对于HTML文件的位置。通过使aURL成为绝对URL,您可以从任何地方加载小程序 - 来自另一个HTTP服务器的事件。

+0

我尝试将代码库设置为jar文件所在的绝对目录(例如 - “c:\ aDirectory \”),但那不起作用。我目前正在尝试从我的开发机器运行此页面,但它尚未。部署到真正的Web服务器,但(我也不甚至有一个),这是因为我工作的页面是概念页的快速和肮脏的验证的一部分 编辑 - 当我说没” t的工作,我的意思是一个小绿色的“图片”图标出现在左上角的一个地方应该是pplet,但我没有收到错误消息 – Alex

+0

代码库必须是URL/URI而不是本地计算机路径。这样想:这是另一个国家的浏览器需要能够打开的东西...因此它必须是一个URL。 –

+0

就像我上面说过的,我无处可放.jar,因此使用相对路径。 – Alex

0
  1. 创建一个简单的Java Applet。
  2. 创建一个默认的Web应用程序。
  3. 将Applet.class文件复制到Web应用程序文件夹。
  4. 将默认用户控件添加到Web应用程序。
  5. 在用户控件中添加以下HTML代码。

<applet name="applet" code="applet.class" width="640" height="480" archive="applet.jar" 
    >  <param name="foreground" value="FFFFFF"/> 
    >  <param name="background" value="008080"/> 
    >  <param name="label" value="This string was passed from the HTML host."/> </applet> 
  1. 构建和运行Web应用程序

    而且不要忘了添加java.policy.applet。 欢呼,:)

相关问题