我们正在为bigquery编写一个开源jdbc驱动程序,并遇到以下问题:
我们希望使用Oauth 2授权我们的驱动程序为已安装的应用程序。在Windows XP,Windows 7 X64,Windows 7 X64 +
RDP上运行正常。但是在作为Windows Server 2008 R2 + RDP的测试台上,它失败了。
基本上,我们打开一个网络浏览器,他登录,我们捕获回复并验证用户身份。
这是网址打开的代码:
private static void browse(String url) {
// first try the Java Desktop
logger.debug("First try the Java Desktop");
if (Desktop.isDesktopSupported()) {
Desktop desktop = Desktop.getDesktop();
if (desktop.isSupported(Action.BROWSE))
try {
desktop.browse(URI.create(url));
return;
} catch (IOException e) {
// handled below
}
}
// Next try rundll32 (only works on Windows)
logger.debug("Try the rundll32");
try {
Runtime.getRuntime().exec(
"rundll32 url.dll,FileProtocolHandler " + url);
return;
} catch (IOException e) {
// handled below
}
// Next try browsers
logger.debug("Try with browsers");
BareBonesBrowserLaunch.openURL(url);
}
我发现的是:BareBonesBrowserLaunch不会打开链接,FileProtocolHandler也不会打开。
URL长度少于250个字符。
任何援助将不胜感激!