java.security.AccessControlException:access denied(" java.net.SocketPermission"" localhost:10648"" listen,resolve") [英] java.security.AccessControlException: access denied ("java.net.SocketPermission" "localhost:10648" "listen,resolve")

查看:339
本文介绍了java.security.AccessControlException:access denied(" java.net.SocketPermission"" localhost:10648"" listen,resolve")的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在从CF调用jar文件。内部CF我已经成功创建了一个java类对象。当我要调用我的函数的时候,它会产生以下错误:

I am calling a jar file from CF. Inside CF I have created a java class object successfully. When I am going to call my function that time, it generates the following error:


java.security.AccessControlException:access denied
(java.net.SocketPermissionlocalhost:10648listen,resolve)

java.security.AccessControlException: access denied ("java.net.SocketPermission" "localhost:10648" "listen,resolve")

我已经部署我们的代码在CF 10服务器。这是我的login.cfm文件代码:

How can I overcome this exception? I have deployed our code in a CF 10 server. Here is my login.cfm file code:

<cfsetting requesttimeout="1000000"> 

<!---Setting phantomJS path start--->
<cfset phantompath = #ExpandPath("./")# & "phantomjs\phantomjs.exe">    
<cfoutput>#phantompath#</cfoutput>

<!---Setting phantomJS path ends--->
<cfset sessionCookies="">

<!---Script for setting JAR file and creating java class object--->
<cfscript>
    paths = arrayNew(1);
    paths[1] = expandPath("CFDevshop\lib\Counsel_Cookies_Phantom.jar");
    writeDump(paths);
    loader = createObject("component", "javaloader.JavaLoader").init(paths);
    writedump(loader);
    classObject = loader.create("counsel_cookies.Counsel_Cookies").init();
    writedump(classObject);

    try{
        sessiondata=classObject.getSessionCookies  ("XXX","XXX","https://paser.login.csologin/login.jsf","phantomjs.exe");
    } 
    catch(Any e) { 
        WriteOutput("<p>An Expression exception was thrown.</p>");
        WriteOutput("<p>#e.Message#</p>");
    }
    writedump(sessiondata);                 
</cfscript>

这是我的java代码:

Here is my java code:

public String getSessionCookies(String user, String pass,String loginUrl,String phantomPath) {
         StringBuilder builder=new StringBuilder();        
    try{            

        DesiredCapabilities caps = new DesiredCapabilities();
        caps.setJavascriptEnabled(true);// not really needed: JS enabled by default
        caps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, phantomPath);  
        driver = new PhantomJSDriver(caps);
        driver.get(loginUrl);
        System.out.println(driver.getTitle());
        driver.findElement(By.id("login:loginName")).sendKeys(user);
        driver.findElement(By.id("login:password")).sendKeys(pass);
        waitForJQueryProcessing(driver, 5);
        driver.findElement(By.xpath("/html/body/div[3]/div/div[1]/div[1]/div[15]/div[2]/form/div[2]/button[1]")).click();
        Thread.sleep(10000);

        Set<org.openqa.selenium.Cookie> allCookies=driver.manage().getCookies();
        builder.append(" : Thakre2");
        for ( org.openqa.selenium.Cookie loadedCookie : allCookies) {
            builder.append(String.format("%s->%s, ", loadedCookie.getName(),loadedCookie.getValue()));
                   //System.out.println(String.format("%s->%s, ", loadedCookie.getName(),loadedCookie.getValue()));
        }           

    } catch(Exception e){
        writeFile(e.toString(),logfilepath);
    }

    return builder.toString();
}

请提供您的建议。如何解决此异常?

Please provide your suggestions. How can I resolve this exception?

推荐答案

我是猜测编辑client.policy或server.policy以授予读写权限。

I am guessing its a permission issue. Edit client.policy or server.policy to grant read write permissions.

更多此处

这篇关于java.security.AccessControlException:access denied(&quot; java.net.SocketPermission&quot;&quot; localhost:10648&quot;&quot; listen,resolve&quot;)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆