我有一个使用服务器中运行的JBOSS
服务器托管的swing应用程序。在我的笔记本电脑中,我下载了该远程应用程序的JNLP
并成功启动了它。我也可以通过点击按钮等与应用程序进行交互。
现在我使用名为Marathon
的API,它是Selenium webdriver
的包装,不过它用于测试swing应用程序。现在如果我使用这个Marathon API启动JNLP文件就可以了。问题是当我点击login
按钮使用这个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
按钮,它可以正常工作。只有当我尝试使用Marathon API以编程方式单击按钮时,问题似乎才会发生。
我甚至试过传递
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");
没有任何作用。知道发生了什么吗?
答案 0 :(得分:0)
您是否设置了上下文,试试这个
createjs.Tween.get(testImg)
.set({alpha:0}) // Still requires an initial set
.wait(2000)
.to({alpha:1})
.call(brute)
.on("change", function(event) {
// Every time the tween is updated, set the opacity
testImg.style.opacity = testImg.alpha;
});
或将jndi.properties放在您的项目根目录中。