Tag: 小程序

Java编译错误:类Appletprac是公共的,应该在名为Appletprac.java的文件中声明

当我编译java程序时,我收到此错误:类Appletprac是公共的,应该在名为Appletprac.java的文件中Appletprac.java 这是我的java代码: import java.applet.*; import java.awt.*; // Graphics Class import javax.swing.*; import java.awt.event.*; /* */ public class Appletprac extends JApplet implements ActionListener { JButton OK; JRadioButton Font_Style1,Font_Style2,Font_Style3; ButtonGroup bg; JCheckBox Font_Family_Name; JTextField jt; int i; String s=””; public void init() { OK=new JButton(“OK”); Font_Family_Name=new JCheckBox(“Serif”); Font_Style1=new JRadioButton(“Plain”); Font_Style2=new JRadioButton(“Bold”); Font_Style3=new JRadioButton(“BoldItalic”); bg=new ButtonGroup(); jt=new JTextField(20); […]

对未签名的Java小程序可以做什么的限制?

我正在尝试编译一个完整的列表,列出对未签名的Java小程序的所有限制 (定义为普通Java应用程序可以执行的操作,但未签名的Java小程序不能)。 这是我到目前为止编译的列表: 一个未签名的Java小程序…… 无法访问本地文件系统。 无法访问系统剪贴板。 无法启动打印作业。 无法连接或从任何第三方服务器(applet源自的服务器以外的任何服务器)检索资源。 无法使用多播套接字。 无法创建或注册SocketImplFactory , URLStreamHandlerFactory或ContentHandlerFactory 。 无法侦听传入的套接字连接。 无法收听数据报。 无法访问某些系统属性(java.class.path,java.home,user.dir,user.home,user.name)。 无法创建或注册SecurityManager对象。 无法使用Runtime或System的load()或loadLibrary()方法动态加载本机代码库。 无法通过调用任何Runtime.exec()方法生成新进程。 无法在运行不受信任代码的线程组之外创建或访问线程或线程组。 无法在java.* , sun.*和netscape.*定义类。 无法从sun.*包显式加载类。 无法通过调用System.exit()或Runtime.exit()退出Java运行时。 无法访问系统事件队列。 无法使用java.lang.Classreflection方法获取有关类的非公共成员的信息,除非该类是从与不受信任的代码相同的主机加载的。 无法以任何方式操纵安全身份(java.security)。 无法设置或读取安全属性(java.security)。 无法列出,查找,插入或删除安全提供程序(java.security)。 问题:是否有任何限制缺失? 如果是这样,请清楚说明您认为列表中缺少的限制。

Java Applet可以使用打印机吗?

Java Applet能够轻松地将text / html打印到标准打印机驱动程序(所有常见平台Win / Mac / Linux)吗? 需要签名吗?

这个小程序是否适用于冰茶JRE?

我提到了一个小型演示。 在为HTML中嵌入的Applet设置策略和冰茶JRE用户评论该演示。 他们失败了。 他们拒绝了对applet的许可 (因此将其限制在沙盒中)并且应该看到绿色的“这个applet是沙盒子”页面。 相反,小程序完全失败了,他们看到了小程序应该在的“灰色空间”。 我想说它正在尝试实例化一个与众不同的File对象。 IE Sun / Oracle JRE将允许它没有问题,只在applet尝试创建JFileChooser时抛出安全exception。 OTOH冰茶JRE不允许创建File 。 因此,此代码应该解决该问题。 它会移动创建/添加JEditorPane并在new File(..)调用之前安装第一个“所有其他失败”消息,然后是绿色的“沙盒”页面。 我的问题是。 对于使用Iced Tea JRE的用户,此代码是否“广告化”? 测试它: 访问pscode.org/test/docload/applet-latest.html上的applet 拒绝经过数字签名的代码。 这对于创建测试applet的正确条件非常重要。 观察/报告applet是否加载了绿色的sandbox.html 。 沙箱文档将代表修复错误的“成功”。 同样令人感兴趣的是(可能很少)是可信小程序防御加载演示的主页,它链接到小应用程序页面,小程序中显示的每个HTML文件,以及包含源代码的ZIP存档代码和HTML,以及Ant build.xml,这样你就可以“在家里,孩子们”这样做。 这是新代码。 package org.pscode.eg.docload; import java.awt.BorderLayout; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import javax.swing.JApplet; import javax.swing.JButton; import javax.swing.JEditorPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JFileChooser; import java.net.URL; import java.net.MalformedURLException; […]

时间不会在Applet中重新绘制

我有一个小问题,但我不知道要解决它。 我创建了简单的Applet,其中应该是简单的数字时钟。 我正确地创建了所有方法,但重绘方法不会重新绘制我的applet。 你能检查我的代码并说出错误的地方吗? 谢谢。 public class DigitalClock extends JApplet implements Runnable { private Thread timeThread; Date date = new Date(); public void start() { timeThread = new Thread(this, “Clock”); timeThread.start(); } @Override public void stop() { if (timeThread == null) { return; } timeThread = null; } @Override public void run() { while (timeThread […]

如何在java中的applet中写入文件?

由于Applet在浏览器中以沙盒模式运行,因此我使用AccessController.doPrivileged来写入文件。 它在Eclipse中运行时写入文件,但在浏览器中访问applet时不写入。 我错过了什么? 这是代码: public class HelloWorld extends Applet { public void paint(Graphics g) { AccessController.doPrivileged(new PrivilegedAction() { public Boolean run() { try { System.out.println(System.getProperty(“user.home”)); String userHome = System.getProperty(“user.home”); FileWriter fw = new FileWriter(userHome + File.separator + “test” + File.separator + “area.txt”); fw.write(“The area is 20m”); fw.flush(); fw.close(); } catch (IOException ioe) { System.err.println(ioe); } […]

如何启动具有更多内存的Java小程序?

对于大型Java应用程序,默认的64 MB最大堆内存可能很小。 是否有任何applet参数可以为签名的applet增加此值? 对于Java程序,这是一个简单的命令行参数,但这对于浏览器中的applet是如何工作的。

.class vs .java

.class文件和.java文件之间有什么区别? 我试图让我的applet工作,但目前我只能在Eclipse中运行它,我还不能嵌入HTML。 谢谢 **编辑:如何用JVM编译呢?

访问被拒绝(java.net.SocketPermission 127.0.0.1:8080 connect,resolve)

我在位于http:// localhost:8080 / index.html的简单HTML页面上插入了一个Java Applet: Java Applet有一个类似于下面代码的方法: public void PostStuffToServer() { String server = “http://localhost:8080/PostHandler.ashx”; URL u = new URL(server); URLConnection con = u.openConnection(); con.setDoOutput(true); con.getOutputStream().write(stream.toByteArray()); con.connect(); } 当我从JavaScript执行applet代码时,如下所示: obj = document.getElementById(‘applet’); obj.getClipboardImageURL(); 我收到以下错误: 访问被拒绝(java.net.SocketPermission 127.0.0.1:8080 connect,resolve) 似乎Java代码将域localhost解析为其等效的IP地址,因此引发了跨域安全限制。 当我从http://127.0.0.1:8080/index.html执行相同的代码时,它工作正常。 lib.jar文件已签名。 反正有没有避免这个?

用Java录制语音

我想用Java应用程序录制语音; 我想这基本上是一个将在客户端运行的applet。 但我不知道该怎么做……任何想法? 另外,我想播放录制的声音。 我听说过Java Speech API。 有什么想法可以帮忙吗?