-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PvaClientRPC and exceptions from server #28
Comments
@MattTaylorDLS can you be a bit more precise on what this means? cc @ifmalcuaz |
This came from a discussion in epics-base/epicsCoreJava#50 The basics of it are: We were using RPCClientImpl to make an RPC call to an EpicsV4 server. These two methods of connecting are apparently incompatible and so shouldn't be used together. This issue was opened to implement handing of exceptions in PcaClientRPC in the same way that they can be handled using RPCClientImpl. |
On 4/2/19 6:25 AM, Matthew Taylor wrote:
This came from a discussion in epics-base/epicsCoreJava#50
<epics-base/epicsCoreJava#50>
The basics of it are:
We were using RPCClientImpl to make an RPC call to an EpicsV4 server.
We were at the same time using PvaClient to create Channels, perform
Gets etc.
These two methods of connecting are apparently incompatible and so
shouldn't be used together.
We were originally using PvaClientRPC to do the RPC call, but changed
to RPCClientImpl because PvaClientRPC doesn't support passing
exceptions back down the channel.
This issue was opened to implement handing of exceptions in
PcaClientRPC in the same way that they can be handled using RPCClientImpl.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#28 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AF1Q1kSztOaYGUGyeXV5w4sgme31_2v5ks5vczAKgaJpZM4cLz_o>.
Let me see if I now understand what you are asking.
RPCClient throws an RPCRequestException if a request fails.
PvaClientRPC just returns if a request fails.
What you want is for PvaClientRPC to also throw an RPCRequestException
if a request fails.
Is this correct?
|
I don't have much knowledge of the internals of this, but that sounds like it could be right yes. Basically. if the channel threw an exception with a message, on the connecting client, we couldn't get the message with PvaClientRPC but we could with RPCClient. Thanks, Matt |
On 4/5/19 5:44 AM, Matthew Taylor wrote:
I don't have much knowledge of the internals of this, but that sounds
like it could be right yes.
Basically. if the channel threw an exception with a message, on the
connecting client, we couldn't get the message with PvaClientRPC but
we could with RPCClient.
Thanks,
Matt
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#28 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AF1Q1lDz-P2oKPp39_kXFAUeb5rsml80ks5vdxr3gaJpZM4cLz_o>.
I am looking at this and I think I see a fix.
I have created a branch named issue28 where I am making the changes.
I have not pushed the changes because I have not tested
I also have to change exampleJava/helloRPC.
I have a branch pvaClientissue28 in exampleJava where I will make the
changes.
These will test the changes in pvaClientJava
I am using eclipse for my Java IDE and made some hacks so that I can
build against code checked out from github.
I never got eclipse to work properly with maven.
So I do not know how the change the pom.xml files in pvaClientJava and
all the pom.xml files in exampleJava.
Also it does not look like the pom.xml files were changed for release
7.0.1 of epicsCoreJava.
Matt,
If I push the changes in the source code for pvaClientJava and
exampleJava do you know how to build with my changes?
If not do you have someone at Diamond who can help?
This is without me changing any pom.xml files.
Marty
|
PvaClient does not handle exceptions from server.
It should act similar to RPCClient from pvAccess.
This was reported by Matthew Taylor.
The text was updated successfully, but these errors were encountered: