有没有人对Graph算法的任何Java库有很好的经验.我试过JGraph并发现它没关系,谷歌中有很多不同的.是否有人实际在生产代码中成功使用或推荐?
为了澄清,我不是在寻找一个产生图形/图表的库,我正在寻找一个有助于Graph算法的库,例如最小生成树,Kruskal的算法节点,边缘等.理想情况下,它有一些好的算法/数据一个不错的Java OO API中的结构.
我正在尝试授权我的应用程序与Google云端硬盘集成.谷歌文档提供了基于服务器的授权和代码示例细节的各种服务器技术.
还有一个JavaScript Google API库,它支持授权.在维基的示例部分中,有一个用于创建配置和调用授权功能的代码片段.我已将范围改为我认为驱动所需的范围:
var config = {
'client_id': 'my_client_ID',
'scope': 'https://www.googleapis.com/auth/drive.file'
};
gapi.auth.authorize(config, function() {
console.log(gapi.auth);
});
Run Code Online (Sandbox Code Playgroud)
永远不会调用回调函数(是的,已加载Google API库)查看Java Retrieve和使用OAuth 2.0凭据示例,客户端机密似乎是一个参数,如果进入配置?
有没有人在JS,Drive或其他Google API中试过这个?有谁知道调试这样一个问题的最佳途径,即我是否需要单步执行库并停止发牢骚?
请不要建议在服务器端进行授权,我们的应用程序完全是客户端,我不希望服务器上有任何状态(我理解这将导致令牌刷新问题).我熟悉Google控制台中的API配置,我相信它和驱动器SDK设置是正确的.
我有一个现有的支持Google Drive的应用程序正在使用Google Java客户端库和服务器流程验证.
如果您没有登录该应用程序并导航到该网址并且您已在该浏览器上登录了多个Google帐户(只有一个个人Google帐户,则其他任何一个都必须是Google商家帐户)OAuth回调优惠选择要使用的Google帐户的选项.
但是,在测试使用JavaScript客户端库的开关时,我无法使用gapi.auth.authorize激活多个帐户选择屏幕.是否可以使用JS库处理多个帐户?
更新:我尝试了immediate
参数false
.只要我不在弹出窗口中更改帐户,我就可以登录.如果我更改帐户,我会:
在一个新标签中没有任何反应.我制作了一个视频来演示.
更新2:已接受针对需要双重选择多个帐户的JS客户端库的此错误.
我希望用Java创建一个GUI,我将控件或元素放在左窗格上,然后将它们拖到设计器窗格上,类似于在Visio中创建模型.
我正在看的当前是JGraphX,它允许你创建图表等.
有没有其他项目支持这个,或工具等.
我正在尝试以编程方式读取由draw.io生成的XML文件,这是一个在线流程图/图表创建服务.Draw.io是使用mxGraph构建的,最近外部命名为jgraphx(因此是这篇文章中的标记),尽管类名保持不变.
这篇StackOverflow文章展示了如何从文件中读取原始XML数据并将其转换为mxGraph对象,mxGraph Javadocs的这一页描述了如何将mxGraph对象转换为可渲染图像.
然而,对我来说不幸的是,尽管遵循这两个指南,"渲染"的图像始终为空并且IllegalArgumentException
抛出一个(因为图像为空).我的代码如下:
String xmlFile = "work/test.xml";
String imageFile = "work/test.png";
mxGraph graph = new mxGraph();
try {
Document doc = mxXmlUtils.parseXml(mxUtils.readFile(xmlFile));
mxCodec codec = new mxCodec(doc);
codec.decode(doc.getDocumentElement(), graph.getModel());
} catch (IOException e) {
e.printStackTrace();
}
RenderedImage image = mxCellRenderer.createBufferedImage(graph, null, 1, \\
Color.WHITE, false, null);
try {
ImageIO.write(image, "png", new File(imageFile));
} catch (IOException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
如您所见,此代码应读入XML数据,从该数据创建mxGraph对象,然后将mxGraph对象呈现为当前工作目录中的图像.但是,没有任何反应,也没有创建图像.
有没有人经历过这样的事情?我忽略了什么吗?有没有更好的方法来做我想做的事情?任何帮助,将不胜感激.
我正在构建一个复杂的网络分析应用程序,我想知道你们对此有何看法.
拥有6个左右的微型实例或2个或3个EC2中小型实例更好吗?
一些背景:
我正在开发一个使用mxGraph的项目,我需要在PDF中为服务流程图导出高分辨率输出.我尝试使用JGraphX,Java Swing客户端重新创建图形并将其导出为PDF,但结果与浏览器显示的结果并不接近.
在客户端的JavaScript中没有PDF导出,mxGraph是否明确支持从JavaScript生成PDF?
我在一个java服务器端应用程序中使用Apache Commons FileUpload,该应用程序具有带字段的html表单:
这个应用程序我想在GAE上传.我可以接收上传的文件(作为流,使用org.apache.commons.fileupload.FileItemStream
).
我想收到太多的输入文本字段(即1)和2)) - 由app的用户完成
我想访问这些org.apache.commons.fileupload.FileItem
但我收到了java.rmi.server.UID is a restricted class
java google-app-engine file-upload apache-commons-fileupload
在我们的网站http://www.draw.io/右上角有一个Google Drive集成按钮,它使用JS API客户端库进行授权.这在除了iOS 6上的Safari之外的任何地方都可以正常工作.当点击它时,新选项卡会短暂地弹回然后消失.从我们的日志记录中调用了我们的授权调用,但是从未到达我们的回调函数.
我们按照此主题中的提示来获得合理级别的多个帐户处理工作,并且它在我们测试过的所有其他环境中都能正常工作,包括iOS 5.如果我们在gapi.auth.authorize调用中将immediate参数设置为true 登录适用于iOS 6,因为可以避免弹出窗口.但是,这仅适用于拥有一个Google帐户的用户,如果他们有多个帐户,则会始终使用其默认帐户.
如果,当你读到这个问题时,主站点没有显示这种行为,那么我们可能已修补它以检测iOS 6上的Safari并将立即标志设置为true.这样可以解决问题的一部分,所以在iOS 6用户可以与我们的应用程序使用的驱动器在所有的,但我们仍然需要支持多个帐户.
java ×3
javascript ×2
mxgraph ×2
oauth-2.0 ×2
algorithm ×1
amazon-ec2 ×1
amazon-rds ×1
cross-domain ×1
draw.io ×1
file-upload ×1
firebase ×1
graph ×1
ios6 ×1
safari ×1