我知道有一个安全策略限制,不允许在更新版本的Java中的applet和其他应用程序之间进行剪切,复制和粘贴。但是,我的用户需要此功能。更改此处定义的java安全策略文件: https://blogs.oracle.com/kyle/entry/copy_and_paste_in_java
在处理100位用户使用的分布式应用程序时,是不切实际的。那么还有其他可以在代码中完成的替代方案吗?这是一个签名的小程序。
答案 0 :(得分:0)
在Java applet中,即使是签名的applet,我也无法弄清楚如何访问系统剪贴板。这样的陈述:
剪贴板clipboard = Toolkit.getDefaultToolkit()。getSystemClipboard();
实际上冻结applet使其无法继续。这是使用Java 1.8。
我在这里读到了一些东西:
https://brooknovak.wordpress.com/2009/07/28/accessing-the-system-clipboard-with-javascript/
这为解决问题提供了基础。基本上,您在java中捕获所选文本(假设它是要移动到系统剪贴板的文本),然后从applet内部调用Javascript方法,并将所选文本作为参数。 Javascript内置了允许系统剪贴板填充的方法。详细信息在上面的链接中。请注意,这仅在Internet Explorer 11中进行了测试。