final File parentDir = new File("S:\\PDSPopulatingProgram");
parentDir.mkdir();
final String hash = "popupateData";
final String fileName = hash + ".txt";
final File file = new File(parentDir, fileName);
file.createNewFile(); // Creates file PDSPopulatingProgram/popupateData.txt
Run Code Online (Sandbox Code Playgroud)
我正在尝试在文件夹中创建一个文件但我得到例外
java.security.AccessControlException: Access denied
Run Code Online (Sandbox Code Playgroud)
我在Windows环境中工作.我可以从Windows资源管理器创建一个文件夹,但不能从Java代码创建.
我该如何解决这个问题?
java security file-io file-permissions accesscontrolexception
嘿我AccessControlException: access denied在尝试启动我正在编写的RMI应用程序时遇到了问题,如果我在默认端口1099上打开它,或者在另一个动态端口,我的策略文件当前打开它,我无法理解为什么会出现此异常授予一切(在应用完成后会改变).
我被困在哪里出错了,任何帮助都会很有用
我的代码
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws RemoteException, AlreadyBoundException, MalformedURLException {
if (System.getSecurityManager() == null)
{
System.setSecurityManager ( new RMISecurityManager() );
}
CreditCardServer ccs = new CreditCardServer();
int port = 1099;
try {
port = Integer.valueOf(args[0]);
}
catch (Exception e)
{
System.out.println("Invlaid Port");
}
if (((port <= 65535) && (port >= 49152)) || port ==1099)
{
System.out.println("Valid Port");
}
else
{ …Run Code Online (Sandbox Code Playgroud) 我从Netbeans 6.8中尝试在Tomcat上重新部署webapp时遇到以下错误.它可能与保存和热交换功能的新部署有关.有任何想法如何解决这个问题?
INFO: Error registering wrapper with jmx StandardEngine[Catalina].StandardHost[localhost].StandardContext[/CubeAdSaSim2] Catalina:j2eeType=WebModule,name=//localhost/CubeAdSaSim2,J2EEApplication=none,J2EEServer=none java.security.AccessControlException: access denied (javax.management.MBeanTrustPermission register)
java.security.AccessControlException: access denied (javax.management.MBeanTrustPermission register)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:568)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanTrustPermission(DefaultMBeanServerInterceptor.java:1824)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:310)
at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:482)
at org.apache.tomcat.util.modeler.Registry.registerComponent(Registry.java:805)
at org.apache.catalina.core.StandardContext.registerJMX(StandardContext.java:5281)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4482)
at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1249)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:377)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:196)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
at java.lang.Thread.run(Thread.java:619)
Run Code Online (Sandbox Code Playgroud) 我创建了一个小程序,打开JFileChooser一个文件,点击一下即可选择一个文件JButton.当我在Eclipse中运行它时,它工作正常.当我将它嵌入带有applet标签的HTML页面时,单击按钮时没有任何反应.
任何关于为什么JFileChooser不在浏览器中打开的建议都会受到赞赏,但我的主要问题是如何调试这个?我无法在Google上找到有关如何将Java控制台添加到Firefox 3.6或Chrome的任何内容.有没有办法获得有关JFileChooser无法打开的原因的某种信息?
调试在下面的评论中回答
所以控制台说有一个访问被拒绝的异常,我猜是因为我还没有"签名"applet.在签署applet时,开发过程应该是什么?在我可以在浏览器中测试之前,是否必须使用由有效CA颁发的证书对其进行签名,或者在测试时是否可以执行一些简单的操作?
这是我的代码:
package com.putapplet;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.File;
import java.io.InputStreamReader;
import java.net.URL;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
import javax.swing.SwingUtilities;
@SuppressWarnings("serial")
public class PutToS3Applet extends JApplet {
private static long maxFileSizeInBytes = 1048576;
private static String listenerUrl = "xxx";
private String listenerQueryString;
private String signedPutUrl;
private JProgressBar progressBar;
private JButton button;
private JLabel messageField; …Run Code Online (Sandbox Code Playgroud) 我有一个小Java小程序,我有一个恼人的问题.我使用jarsigner工具(遵循这些说明)使用我自己的密钥库签署了我的JAR .
Java Applet下载已签名的 JAR并尝试使用扩展类URLClassLoader启动它.这个JAR试图执行这行代码:
ClassLoader.getSystemClassLoader().getResource("aResource");
Run Code Online (Sandbox Code Playgroud)
它失败了,堆栈跟踪很大,完成了:
Caused by: java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "getClassLoader")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:366)
at java.security.AccessController.checkPermission(AccessController.java:555)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1476)
at test.SecondJAR.main(SecondJAR.java:8)
Run Code Online (Sandbox Code Playgroud)
(test.SecondJAR的第8行对应于getResource(...)方法
启动Java Applet时,如果用户信任发布者,则会提示用户接受证书:

即使我接受它,也会发生异常.即使我安装了证书,并且自动接受了提示消息,也会发生异常.
我也试过这个:
AccessController.doPrivileged(new PrivilegedAction<Object>() {
public Object run() {
ClassLoader.getSystemClassLoader().getResource("aResource");
return null;
}
});
Run Code Online (Sandbox Code Playgroud)
它失败了同样的例外.
任何帮助,将不胜感激!
我有一个简单的自签名小程序(用keytool和jarsigner完成):
public class NetAppletLauncher extends JApplet {
private static final long serialVersionUID = 1L;
public void init() {
exec("notepad c:/hello.txt");
}
public void exec(String command) {
try {
// launch EXE and grab stdin/stdout and stderr
Process process = Runtime.getRuntime().exec(command);
// OutputStream stdin = process.getOutputStream();
InputStream stderr = process.getErrorStream();
InputStream stdout = process.getInputStream();
// "write" the parms into stdin
// stdin.write(arguments.getBytes());
// stdin.flush();
// stdin.close();
// clean up if any output in stdout
String line = "";
BufferedReader brCleanUp = …Run Code Online (Sandbox Code Playgroud) 我正在编写一个elasticsearch插件,它依赖于从磁盘上的文件中读取数据.当我尝试在我的代码中访问此文件时,我得到以下异常.
Caused by: java.security.AccessControlException: access denied ("java.io.FilePermission" "patient_similarity/codes.txt" "read")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)
at java.security.AccessController.checkPermission(AccessController.java:884)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at java.lang.SecurityManager.checkRead(SecurityManager.java:888)
at java.io.FileInputStream.<init>(FileInputStream.java:127)
at org.gatech.lucene.search.store.DotProductStore.<init>(DotProductStore.java:22)
at org.gatech.lucene.search.store.DotProductStore.newInstance(DotProductStore.java:71)
at org.gatech.elasticsearch.CommonsPlugin.onModule(CommonsPlugin.java:39)
Run Code Online (Sandbox Code Playgroud)
有没有推荐的方法来访问elasticsearch插件中的文件?有没有快速的解决方法来访问我的插件中的文件?
java accesscontrolexception elasticsearch elasticsearch-plugin
我知道这是常见的事情,使用早期版本的chrome我用来设置"C:\ Program Files(x86)\ Google\Chrome\Application\chrome.exe"--args --disable-web-security --user Chrome快捷方式选项卡中的-data-dir,以避免"Access-Control-Allow-Origin"错误.使用最新版本,似乎此修复程序不再起作用.安装最新版本53.0.2785.89 m后,这是控制台中的错误
XMLHttpRequest无法加载https://example.org:15003/apps/services/preview/rr/common/1.0/default/index.html.对预检请求的响应未通过访问控制检查:当凭证标志为真时,不能在"Access-Control-Allow-Origin"标头中使用通配符"*".因此不允许原点' http:// ibm-pb7en65:10080 '访问.XMLHttpRequest的凭证模式由withCredentials属性控制.
我不确定要添加哪些附加属性以避免"Access-Control-Allow-Origin"错误.这有什么办法可以实现吗?
javascript google-chrome xmlhttprequest accesscontrolexception angularjs
我有一个单元测试,它使用Elasticsearch的集成测试框架.使用Elasticsearch 2.0.0-2.1.2执行时工作正常,但是当我在IntelliJ中运行最新的Elasticsearch 2.2.0时,我得到以下内容,知道需要调整哪些不使用IntelliJ中的安全管理器?
java.security.AccessControlException: access denied ("org.elasticsearch.ThreadPermission" "modifyArbitraryThreadGroup")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)
at java.security.AccessController.checkPermission(AccessController.java:884)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at org.elasticsearch.SecureSM.checkThreadGroupAccess(SecureSM.java:166)
at org.elasticsearch.SecureSM.checkAccess(SecureSM.java:113)
at java.lang.ThreadGroup.checkAccess(ThreadGroup.java:315)
at java.lang.ThreadGroup.getParent(ThreadGroup.java:167)
at com.carrotsearch.randomizedtesting.Threads$2.run(Threads.java:127)
at com.carrotsearch.randomizedtesting.Threads$2.run(Threads.java:123)
at java.security.AccessController.doPrivileged(Native Method)
at com.carrotsearch.randomizedtesting.Threads.getTopThreadGroup(Threads.java:123)
at com.carrotsearch.randomizedtesting.Threads.getAllThreads(Threads.java:99)
at com.carrotsearch.randomizedtesting.ThreadLeakControl.<init>(ThreadLeakControl.java:348)
at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:673)
at com.carrotsearch.randomizedtesting.RandomizedRunner.access$200(RandomizedRunner.java:140)
at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:591)
Run Code Online (Sandbox Code Playgroud)