我想在我的java应用程序上生成BSE的实时自动收录器。 现在我有这个小程序代码,它应该在HTMl页面中显示股票代码/股票价格。
<applet code="bse_ticker.class" width="95%" codebase="http://www.bseindia.com/applet/ticker" height="40" archive="mainticker_finals.jar"></p>
<div class="style8">
<param value="HTTP://www.bseindia.com:5000/price_finder/stockreach.asp?scripcd=" name="url"/>
<param value="#0000FF" name="nullarrowcolor"/>
<param value="_blank" name="window"/>
<param value="#8C8C8C" name="WATERCOLOR"/>
<param value="#000000" name="fgcolor"/>
<param value="#ffffff" name="bgcolor"/>
<param value="#00FF00" name="uparrowcolor"/>
<param value="#0671B0" name="fgcolor1"/>
<param value="0" name="default_ticker"/>
<param value="#FF0000" name="downarrowcolor"/>
<param value="21600000" name="thread_sleeptime"/>
<param value="applet" name="INDEXOF"/>
<param value="TickerData_final.asp" name="dataurl"/>
</div>
<p></applet><br />
但是,当我尝试打开其中嵌入了此代码的HTML页面时,我收到错误说:
www.java-ticker.net
Site: investgeeta.com Date: 09-17-2005
==============================================已加载图片: http://www.investgeeta.com/include/ticker/img/separator.gif 加载图片: http://www.investgeeta.com/include/ticker/img/up4.gif 加载图片: http://www.investgeeta.com/include/ticker/img/stay4.gif 加载图片: http://www.investgeeta.com/include/ticker/img/down4.gif java.lang.ClassFormatError: 不兼容的魔法值1013478509 in 类文件bse_ticker at java.lang.ClassLoader.defineClass1(母语 方法)at java.lang.ClassLoader.defineClassCond(未知 来源)at 需要java.lang.ClassLoader.defineClass(未知 来源)at java.security.SecureClassLoader.defineClass(未知 来源)at sun.plugin2.applet.Applet2ClassLoader.findClass(未知 来源)at java.lang.ClassLoader.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(未知 来源)at java.lang.Thread.run(未知来源) 例外:java.lang.ClassFormatError: 不兼容的魔法值1013478509 in class file bse_ticker
这是什么意思?
答案 0 :(得分:2)
十六进制的数字1013478509是0x3C68746D。打破这一点,你得到
0x3C = <
0x68 = h
0x74 = t
0x6D = m
<htm
或者看起来像是HTML文档的开头。
看起来Web服务器正在提供一些HTML而不是Java类。
尝试访问applet本身的URL并查看其外观(并确保查看HTTP标头)。
答案 1 :(得分:0)
这很可能是尝试运行使用较新版本的Java创建的Jar而不是试图执行代码的JVM的问题。
你有多个版本的bse_ticker吗?它打算用什么版本运行?