Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java jInterop-访问被拒绝[0x00000005]_Java_Com Interop - Fatal编程技术网

Java jInterop-访问被拒绝[0x00000005]

Java jInterop-访问被拒绝[0x00000005],java,com-interop,Java,Com Interop,我们有一个带有java组件和com组件的应用程序,它们之间的通信通过j-Interop实现 我们已经使用它近3年了,没有出现任何重大问题,但直到最近,我们才发现java组件在尝试与com对象通信时失败,出现错误-访问被拒绝[0x00000005] com对象正在工作,我们正在测试相同的组件,并且DCOM配置在发生此异常后已多次验证 已针对以下链接验证DCOM设置- 我们使用的版本是j-interop-3.0 我们还与Microsoft支持人员讨论了这一点,根据联合调试,推断调用没有到达ole层

我们有一个带有java组件和com组件的应用程序,它们之间的通信通过j-Interop实现

我们已经使用它近3年了,没有出现任何重大问题,但直到最近,我们才发现java组件在尝试与com对象通信时失败,出现错误-访问被拒绝[0x00000005]

com对象正在工作,我们正在测试相同的组件,并且DCOM配置在发生此异常后已多次验证

已针对以下链接验证DCOM设置-

我们使用的版本是j-interop-3.0

我们还与Microsoft支持人员讨论了这一点,根据联合调试,推断调用没有到达ole层,因此我们需要研究j-Interop引发的错误

我们面临此问题的服务器环境是Windows server R2 2008标准和Windows server 2016标准

为了解决这个问题,是否可以采取不同的措施

下面是我们得到的错误的完整堆栈跟踪:

Aug 09, 2017 4:30:15 PM org.jinterop.dcom.core.JIComOxidRuntime$ClientPingTimerT
ask run
INFO: Running ClientPingTimerTask !
Aug 09, 2017 4:30:15 PM org.jinterop.dcom.core.JIComOxidRuntime$ServerPingTimerT
ask run
INFO: Running ServerPingTimerTask !
Aug 09, 2017 4:30:15 PM org.jinterop.dcom.core.JISession createSession
INFO: Created Session: 1042741037
Aug 09, 2017 4:30:16 PM org.jinterop.dcom.common.JISystem internal_dumpMap
INFO: mapOfHostnamesVsIPs: {}
Aug 09, 2017 4:30:16 PM rpc.DefaultConnection processOutgoing
INFO:
Sending BIND
Aug 09, 2017 4:30:16 PM rpc.DefaultConnection processIncoming
INFO:
Recieved BIND_ACK
Aug 09, 2017 4:30:16 PM rpc.DefaultConnection processOutgoing
INFO:
Sending AUTH3
Aug 09, 2017 4:30:16 PM rpc.DefaultConnection processOutgoing
INFO:
Sending REQUEST
Aug 09, 2017 4:30:16 PM rpc.DefaultConnection processIncoming
INFO:
Recieved FAULT
org.jinterop.dcom.common.JIException: Access is denied, please check whether the
[domain-username-password] are correct. Also, if not already done please check
the GETTING STARTED and FAQ sections in readme.htm. They provide information on
how to correctly configure the Windows machine for DCOM access, so as to avoid s
uch exceptions. [0x00000005]
at org.jinterop.dcom.core.JIComServer.init(JIComServer.java:661)
at org.jinterop.dcom.core.JIComServer.initialise(JIComServer.java:496)
at org.jinterop.dcom.core.JIComServer.<init>(JIComServer.java:460)
at TestConnectivity.initialize(TestConnectivity.java:128)
at TestConnectivity.HDAconnect(TestConnectivity.java:165)
at TestConnectivity.main(TestConnectivity.java:82)
Caused by: rpc.FaultException: Received fault. (unknown)
at rpc.ConnectionOrientedEndpoint.call(ConnectionOrientedEndpoint.java:1
41)
at rpc.Stub.call(Stub.java:113)
at org.jinterop.dcom.core.JIComServer.init(JIComServer.java:626)
... 5 more
Exited
Aug 09, 2017 4:30:16 PM org.jinterop.dcom.core.JISession postDestroy
INFO: About to destroy links for Session: 1042741037 , size of which is 0
2017年8月9日下午4:30:15 org.jinterop.dcom.core.JIComOxidRuntime$ClientPingTimerT
问跑
信息:正在运行ClientPingTimerTask!
2017年8月9日下午4:30:15 org.jinterop.dcom.core.JIComOxidRuntime$ServerPingTimerT
问跑
信息:正在运行ServerPingTimerTask!
2017年8月9日下午4:30:15 org.jinterop.dcom.core.JISession createSession
信息:已创建会话:1042741037
2017年8月9日下午4:30:16 org.jinterop.dcom.common.JISystem internal_dumpMap
信息:mapOfHostnamesVsIPs:{}
2017年8月9日下午4:30:16 rpc.DefaultConnection processOutgoing
信息:
发送绑定
2017年8月9日下午4:30:16 rpc.DefaultConnection processIncoming
信息:
收到绑定确认
2017年8月9日下午4:30:16 rpc.DefaultConnection processOutgoing
信息:
发送AUTH3
2017年8月9日下午4:30:16 rpc.DefaultConnection processOutgoing
信息:
发送请求
2017年8月9日下午4:30:16 rpc.DefaultConnection processIncoming
信息:
收到的过失
org.jinterop.dcom.common.JIException:访问被拒绝,请检查
[域用户名密码]正确无误。此外,如果尚未完成,请检查
readme.htm中的入门和常见问题部分。他们提供关于
如何正确配置Windows计算机进行DCOM访问,以避免
uch例外。[0x00000005]
位于org.jinterop.dcom.core.JIComServer.init(JIComServer.java:661)
位于org.jinterop.dcom.core.JIComServer.initialise(JIComServer.java:496)
位于org.jinterop.dcom.core.JIComServer(JIComServer.java:460)
初始化(TestConnectivity.java:128)
位于TestConnectivity.HDAconnect(TestConnectivity.java:165)
位于TestConnectivity.main(TestConnectivity.java:82)
原因:rpc.FaultException:接收到错误。(未知)
在rpc.ConnectionOrientedEndpoint.call(ConnectionOrientedEndpoint.java:1
41)
在rpc.Stub.call处(Stub.java:113)
位于org.jinterop.dcom.core.JIComServer.init(JIComServer.java:626)
... 还有5个
退出
2017年8月9日下午4:30:16 org.jinterop.dcom.core.JISession postDestroy
信息:即将销毁会话1042741037的链接,其大小为0
任何帮助都将不胜感激


谢谢。

希望以下解决方案适合您。这对我有用

将以下修补程序应用于注册表:

HKEY\U本地\U机器\SOFTWARE\Microsoft\Windows\CurrentVersion\Policys\System 创建或修改32位DWORD:LocalAccountTokenFilterPolicy 将该值设置为:1

你可以参考

--
SK

Hi@merlyn,你在这个问题上运气好吗?我也面临着类似的挑战。谢谢你的解决方案!!!这解决了我在尝试配置策略、帐户、防火墙、DCOM、服务2天后遇到的问题…非常感谢!