2011-11-01 69 views
0

我是新来的java。我一直在学习小程序和所有,我一直在试图做一个简单的程序,使用系统类来获取机器的属性。 简而言之,我试图输出窗口名称,版本和体系结构。 我试着做点什么。当我试着通过appletviewer运行它时,它会运行,但是当我尝试在服务器上运行它时,它会显示一些错误。可能是代码错误?请帮助,因为我是新手。 继承人链接到小程序。使用java中的系统属性时发生错误

http://ashish.club-tec.co.il/sysf.html

和继承人的代码

import java.applet.*; 
import java.awt.*; 


public class sysf extends Applet 
{ 
Label l1,l2; 
String p; 
public void init() 
{ 
    l1=new Label("Operating system is "); 
    l2=new Label(""); 
    add(l2); 
    add("Center",l1); 

    p=System.getProperty("user.name"); 
    l2.setText("Hi "+p+",your system info is as follows"); 
    p= System.getProperty("os.name"); 
    l1.setText(l1.getText()+p); 
    p=System.getProperty("os.version"); 
    p=" version "+p+" "; 
    l1.setText(l1.getText()+p); 
    p=System.getProperty("os.arch"); 
    p=" and architecture is "+p+" "; 
    l1.setText(l1.getText()+p); 
} 
} 

谢谢!

回答

0

您需要设置自定义小程序安全策略。这里是一个涵盖了包括设置策略来启用user.home要读教程:

http://geosim.cs.vt.edu/Java/MigModel/help/Policies.html

这类疼痛大部分是专门针对小程序。出于安全原因,Java对Applets的限制很大。如果您想学习Java,更好的方法是学习桌面JSE或开始使用servlet。

0

错误在于你的Applet不包含这个类。

在你的Applet包装的某个地方,你忘记了包括这个类,或者没有更新指向这个类的Applet的web链接。

顺便说一句,大致上可以大写类。

错误输出如下

load: class sysf.class not found. 
java.lang.ClassNotFoundException: sysf.class 
    at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source) 
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source) 
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source) 
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source) 
    at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source) 
    at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
Exception: java.lang.ClassNotFoundException: sysf.class