Async20Access. Failed to change state(true) on Ubuntu

427 views
Skip to first unread message

Илдус В

unread,
May 21, 2016, 6:19:39 AM5/21/16
to openSCADA
Hello!

I use utgard library to connect opc server through Async20Access.
It works on windows, but on Ubuntu the following error:

Sending REQUEST
май 21, 2016 1:02:55 PM rpc.DefaultConnection processIncoming
INFO:
 Recieved FAULT
13:02:55.344 [main] ERROR org.openscada.opc.lib.da.AccessBase - Failed to change state (true)
org.jinterop.dcom.common.JIException: The RPC server is unavailable. Please check if the COM server is up and running and that route to the COM Server is accessible (A simple "Ping" to the Server machine would do). Also please confirm if the Windows Firewall is not blocking DCOM access. [0x800706BA]
    at org.jinterop.dcom.core.JIComServer.call(JIComServer.java:1004) ~[jar:rsrc:org.openscada.jinterop.core_1.1.0.v20130529.jar!/:na]
    at org.jinterop.dcom.core.JIComServer.call(JIComServer.java:951) ~[jar:rsrc:org.openscada.jinterop.core_1.1.0.v20130529.jar!/:na]
    at org.jinterop.dcom.core.JIComObjectImpl.call(JIComObjectImpl.java:295) ~[jar:rsrc:org.openscada.jinterop.core_1.1.0.v20130529.jar!/:na]
    at org.jinterop.dcom.core.JIComObjectImpl.call(JIComObjectImpl.java:161) ~[jar:rsrc:org.openscada.jinterop.core_1.1.0.v20130529.jar!/:na]
    at org.jinterop.dcom.core.JIFrameworkHelper.attachEventHandler(JIFrameworkHelper.java:285) ~[jar:rsrc:org.openscada.jinterop.core_1.1.0.v20130529.jar!/:na]
    at org.openscada.opc.dcom.da.impl.OPCGroupStateMgt.attach(OPCGroupStateMgt.java:188) ~[jar:rsrc:org.openscada.opc.dcom_1.1.0.v20130529.jar!/:na]
    at org.openscada.opc.lib.da.Group.attach(Group.java:408) ~[jar:rsrc:org.openscada.opc.lib_1.1.0.v20130529.jar!/:na]
    at org.openscada.opc.lib.da.Async20Access.start(Async20Access.java:67) ~[jar:rsrc:org.openscada.opc.lib_1.1.0.v20130529.jar!/:na]
    at org.openscada.opc.lib.da.AccessBase.connectionStateChanged(AccessBase.java:190) [jar:rsrc:org.openscada.opc.lib_1.1.0.v20130529.jar!/:na]
    at org.openscada.opc.lib.da.Server.addStateListener(Server.java:436) [jar:rsrc:org.openscada.opc.lib_1.1.0.v20130529.jar!/:na]
    at org.openscada.opc.lib.da.AccessBase.bind(AccessBase.java:96) [jar:rsrc:org.openscada.opc.lib_1.1.0.v20130529.jar!/:na]
    at fromOPCtoDB_Async.fromOPCtoDB_Async.main(fromOPCtoDB_Async.java:255) [rsrc:./:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_101]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_101]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_101]
    at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_101]
    at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58) [asyncc.jar:na]
Caused by: rpc.FaultException: Received fault. (unknown)
    at rpc.ConnectionOrientedEndpoint.call(ConnectionOrientedEndpoint.java:147) ~[jar:rsrc:org.openscada.jinterop.deps_1.1.0.v20130529.jar!/:na]
    at rpc.Stub.call(Stub.java:134) ~[jar:rsrc:org.openscada.jinterop.deps_1.1.0.v20130529.jar!/:na]
    at org.jinterop.dcom.core.JIComServer.call(JIComServer.java:999) ~[jar:rsrc:org.openscada.jinterop.core_1.1.0.v20130529.jar!/:na]
    ... 16 common frames omitted

What's the problem?

Jens Reimann

unread,
May 21, 2016, 10:03:28 AM5/21/16
to openSCADA

Hi,

Did you check: The RPC server is unavailable. Please check if the COM server is up and running and that route to the COM Server is accessible (A simple "Ping" to the Server machine would do). Also please confirm if the Windows Firewall is not blocking DCOM access?

--
You received this message because you are subscribed to the Google Groups "openSCADA" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openscada+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Илдус В

unread,
May 23, 2016, 1:36:35 AM5/23/16
to openSCADA
Yes, COM server is up and running, DCOM settings are configurated, OPC server is available from Matrikon or any OPC clients.
SyncAccess method works stable on Windows and Ubuntu OS's.
Async20Access method works just on Windows OS, not on Ubuntu.
Trying on Ubuntu 12.04 and 14.04 under x32, x64.
Async20Access method was written under JRE 1.7 (SyncAccess method also).
Log:

Jens Reimann

unread,
May 23, 2016, 6:05:21 AM5/23/16
to openSCADA

Could this be an issue that the windows server cannot access the Ubuntu machine?

--

Илдус В

unread,
May 23, 2016, 6:46:58 AM5/23/16
to openSCADA
Ubuntu machine is connected to Windows OPC server directly through Ethernet cable, ping is OK. Also SyncAccess method working properly.

понедельник, 23 мая 2016 г., 13:05:21 UTC+3 пользователь Jens Reimann написал:

Jens Reimann

unread,
May 23, 2016, 8:37:31 AM5/23/16
to openSCADA

Will ping yes, but it could be a firewall issue?!

Danish Shrestha

unread,
Jun 27, 2017, 12:02:57 AM6/27/17
to openSCADA
Hi Илдус,
Did you find out what was causing the issue? I am running into the same issue trying to connect CentOS to windows OPC server.

Thanks,
Danish

Danish Shrestha

unread,
Jun 28, 2017, 9:44:19 AM6/28/17
to openSCADA
It was the firewall issue. I didnt realize with async in OPC the OPC server makes a new socket to the OPC Client in random high port. I had to add a rule to accept all connections from OPC Server to the client.

Danish
Reply all
Reply to author
Forward
0 new messages