- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我深入研究了 dcm4che 的源代码,发现如果有任何一种情况,都会抛出 IncompatibleConnectionException
我不知道“已安装”连接是什么意思,但可以手动设置此标志,因此我将本地和远程连接都设置为 true
(甚至检查了它们使用 getInstalled()
它们是否“已安装” - 是的,它们现在是 - 以前此属性为 null
)。
至于协议(protocol),它们没有指定,所以对于两个连接,我都将它们设置为 DICOM
。
结果:我仍然得到相同的异常。
我想在 dcm4chee 之间建立一个 DICOM 关联(2.18.3) 和我的 JAVA 应用程序使用 dcm4che (5.12.0) 工具包。
问题是它似乎没有任何关于如何在 JAVA 应用程序中使用 dcm4che 的文档,所以我所能做的就是阅读 dcm4che 的源代码并尝试弄清楚它的类和方法是做什么的,但我卡住了。如果有人已经有一个工作示例,那将非常有帮助。
到目前为止我有:
import org.dcm4che3.net.ApplicationEntity;
import org.dcm4che3.net.Association;
import org.dcm4che3.net.Connection;
import org.dcm4che3.net.Device;
import org.dcm4che3.net.pdu.AAssociateRQ;
import org.dcm4che3.net.pdu.PresentationContext;
...
ApplicationEntity locAE = new ApplicationEntity();
locAE.setAETitle("THIS_JAVA_APP");
Connection localConn = new Connection();
localConn.setCommonName("loc_conn");
localConn.setHostname("localhost");
localConn.setPort(11112);
localConn.setProtocol(Connection.Protocol.DICOM);
localConn.setInstalled(true);
locAE.addConnection(localConn);
ApplicationEntity remAE = new ApplicationEntity();
remAE.setAETitle("DCM4CHEE");
Connection remoteConn = new Connection();
remoteConn.setCommonName("rem_conn");
remoteConn.setHostname("localhost");
remoteConn.setPort(11112);
remoteConn.setProtocol(Connection.Protocol.DICOM);
remoteConn.setInstalled(true);
remAE.addConnection(remoteConn);
AAssociateRQ assocReq = new AAssociateRQ();
assocReq.setCalledAET(remAE.getAETitle());
assocReq.setCallingAET(locAE.getAETitle());
assocReq.setApplicationContext("1.2.840.10008.3.1.1.1");
assocReq.setImplClassUID("1.2.40.0.13.1.3");
assocReq.setImplVersionName("dcm4che-5.12.0");
assocReq.setMaxPDULength(16384);
assocReq.setMaxOpsInvoked(0);
assocReq.setMaxOpsPerformed(0);
assocReq.addPresentationContext(new PresentationContext(
1, "1.2.840.10008.1.1", "1.2.840.10008.1.2"));
Device device = new Device("device");
device.addConnection(localConn);
device.addApplicationEntity(locAE);
Association assoc = locAE.connect(remAE, assocReq);
但我不知道我是否走在正确的道路上。
我得到的错误:
org.dcm4che3.net.IncompatibleConnectionException: No compatible connection to DCM4CHEE available on THIS_JAVA_APP
at org.dcm4che3.net.ApplicationEntity.findCompatibelConnection(ApplicationEntity.java:646)
at org.dcm4che3.net.ApplicationEntity.connect(ApplicationEntity.java:651)
最佳答案
可能是您的设置中缺少 Device
实例?看来,您需要一个 Device
,您将 ApplicationEntity
和 Connection
附加到它。
查看FindSCU.java来源来自 dcm4che 来源。
private final Device device = new Device("findscu");
private final ApplicationEntity ae = new ApplicationEntity("FINDSCU");
private final Connection conn = new Connection();
public FindSCU() throws IOException {
device.addConnection(conn);
device.addApplicationEntity(ae);
ae.addConnection(conn);
}
我还认为,也许本地 Connection
对象可以在没有任何参数的情况下被实例化,如此处的 FindSCU 示例所示。也许参数以某种方式混淆了它,特别是考虑到您有指向 localhost:11112
的本地和远程连接。
但是,是的,必须承认,dcm4che3 API 的文档是完全不充分的。
关于java - 从 JAVA 程序使用 dcm4che 连接到 dcm4chee,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49048428/
我想在远程 ubuntu 14.04 服务器上安装 Eclipse Che IDE。这是我所做的: 打开从我的笔记本电脑到 ubuntu 服务器的 SSH session ,以“useradm” 身份
我最近尝试在 Windows 10 64 位上安装 Eclipse Che。我安装了所有先决条件,但是当我运行 che.bat 时,它给了我以下消息: 我该怎么做才能解决这个问题? 最佳答案 此错误是
我在服务器上安装了 Eclipse Che,当我在本地使用它时,它在我的机器上运行完美 localhost:8080 我想让它在 NGINX 前端反向代理之后从 Internet 上可用。这是想法:
Eclipse Che被Eclipse官方称为下一代IDE,作为老牌的IDE,被其寄予厚望的Eclipse Che到底有什么特点,在这篇文章中我们来一探究竟。 开发团队的Kuberentes原生I
我已经在我的 Ubuntu 16.04 上安装了 Eclipse Che,并且我正在使用外部 IP 从远程计算机连接到我的 eclipse che。 我在我的 ubuntu 防火墙上打开了 8000,
我正在尝试从 multi-machine workspace 中的另一个 NodeJS 运行时连接到 MySQL 运行时中的数据库. 在测试中,我使用目标用户列表调用 API http://local
我对eclipse che很感兴趣,因此在codenvy上开了一个测试账号。我尝试了几个模板,到目前为止一切正常。 下https://eclipse.org/che/features/它说您可以“通过
我目前正在评估使用 Eclipse Che Cloud IDE 作为在 Jboss 上运行的现有项目本地运行 Eclipse Neon 的替代方案。 在 Eclipse Neon 中,在“首选项”下,
对于我的 Eclipse Che 项目,每次加载工作区时我都必须重新安装我的 python 模块 (blegh)。有没有办法将我的团队需要的模块安装到全局文件夹中,这样他们就不必在每次加载项目时都安装
本文整理了Java中org.eclipse.che.api.fs.server.WsPathUtils类的一些代码示例,展示了WsPathUtils类的具体用法。这些代码示例主要来源于Github/S
本文整理了Java中org.eclipse.che.plugin.yaml.shared.YamlDTO类的一些代码示例,展示了YamlDTO类的具体用法。这些代码示例主要来源于Github/Stac
本文整理了Java中org.eclipse.che.plugin.yaml.shared.YamlPreference类的一些代码示例,展示了YamlPreference类的具体用法。这些代码示例主要
有字体巴塘和一个字体 八塘车 ,其他韩文字体 Dotum、Gulim 和 Gungsuh 也是如此。但有什么区别呢? “车”是什么意思? 最佳答案 哦,终于,我们来了: http://blog.kor
可以 eclipse 车 用于传统的单体应用程序开发?不使用 Docker 的应用程序。如果可能的话,从桌面 Eclipse 迁移到 Eclipse Che 是一个不错的决定吗? Che 是否提供各种
使用 Eclipse Che,我最近能够按照说明中的说明毫无问题地部署 docker 容器。 我正试图了解更多关于 Che 扩展开发的知识,我正在阅读位于下一页上的“开发你的第一个插件”的简短介绍:
如何在 mac osx 上完全卸载 eclipse che? 使用 mac osx 安装程序来安装二进制文件。看来 che 总是在 8080 上运行,甚至杀死了进程并停止了 docker。 https
我正在尝试让 Eclipse-Che 在 EC2 上运行,但遇到了一些问题。如果我只映射端口 8080,我可以启动 Eclipse-Che 服务器,但随后我无法连接到任何工作区,大概是因为我缺少端口
我们有基于 xtext 的领域特定语言。对于语言表示,我们在 Eclipse 中有自己的编辑器。这个编辑器基本上是 Eclipse 插件。 有什么方法可以将这个 eclipse 编辑器插件移植到 Ch
我正在使用 openshift.io 上托管的 Eclipse Che 7 来开发一个简单的 java 项目。可以调试测试吗?我找不到启动它们的方法。如果我打开测试 View 有 最佳答案 总是可以使
我刚刚开始使用 Eclipse che 并启动了一个项目。我没有 Main 类,我想从 Console 包中名为 TBB_SQLBuilder.java 的类开始运行该项目。 我根本不知道如何运行它。
我是一名优秀的程序员,十分优秀!