访问应用程序时javax.naming.NoInitialContextException
我有一个swing应用程序,它使用运行在服务器中的访问应用程序时javax.naming.NoInitialContextException,java,swing,jboss,Java,Swing,Jboss,我有一个swing应用程序,它使用运行在服务器中的JBOSS服务器托管。在我的笔记本电脑中,我下载了那个远程应用程序的JNLP,并成功启动了它。我还可以通过点击按钮等与应用程序交互 现在我正在使用一个名为Marathon的API,它是SeleniumWebDriver的包装,只是用于测试swing应用程序。现在,如果我使用这个Marathon API启动JNLP文件,它就可以正常启动了。问题是,当我通过其驱动程序使用此Marathon API单击登录按钮时,我看到以下异常 7286 ER
JBOSS
服务器托管。在我的笔记本电脑中,我下载了那个远程应用程序的JNLP
,并成功启动了它。我还可以通过点击按钮等与应用程序交互
现在我正在使用一个名为Marathon
的API,它是SeleniumWebDriver
的包装,只是用于测试swing应用程序。现在,如果我使用这个Marathon API启动JNLP文件,它就可以正常启动了。问题是,当我通过其驱动程序使用此Marathon API单击登录按钮时,我看到以下异常
7286 ERROR [AWT-EventQueue-1]: Root cause: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.lookup(Unknown Source)
在Marathon启动的同一个会话中,如果我手动单击login
按钮,它工作正常。只有当我尝试使用MarathonAPI以编程方式单击按钮时,问题才会出现
我甚至试过传球
profile.addWSArgument("-J-Djavax.net.ssl.trustStore=C:/Users/xxx/Downloads/ssl.keystore");
profile.addWSArgument("-J-Djava.naming.factory.initial=org.jnp.interfaces.NamingContextFactory");
profile.addWSArgument("-J-Djava.naming.provider.url=10.66.87.0:7001");
什么都不管用。知道发生了什么吗?设置好上下文后,试试这个
System.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
System.setProperty("java.naming.provider.url", "localhost:<port>");
System.setProperty(“java.naming.factory.initial”、“org.jnp.interfaces.NamingContextFactory”);
setProperty(“java.naming.provider.url”,“localhost:”);
属性是您的项目根目录