Hi Lin
JCAE and CA are both libraries developed (together with Cosylab) and actively maintained by the Paul Scherrer Institute. The aim of both libraries is to provide an Java like way to interact with Channel Access. As Mark already pointed out JCAE is an abstraction layer to JCA/CAJ. This library provides abstractions for both, client and server functionality.
CA is a pure client side library. It was developed from scratch building on latest Java 8 concepts and technologies. It left behind all legacy and complexity of the older libraries.
At PSI both libraries are actively used in production and almost all Controls supported Java applications here are based on them. Whenever we need to touch our applications, and where possible we are actively migrating our applications to the CA library. So if you are starting from scratch, you are planning to use one of these two libraries and you only need client side functionality, I would heavily suggest to start with the CA library.
Not directly related to your question, but something you might find useful, both of these libraries you can also easily use from within Matlab to access Channel Access (Linux, Mac, Windows).
If you have more questions related to these two libraries, feel free to contact me.
Best
Simon
> On 7 Jun 2017, at 13:10, Mark Rivers <[email protected]> wrote:
>
> Hi Lin,
>
> I just looked at the JCAE code on Github. Its documentation says:
>
> "JCAE is an easy to use ChannelAccess library abstracting the complexity of the JCA and CAJ library and bringing ChannelAccess into the Java domain (i.e. use of Java types)."
>
> If you look in the code, for example CaServer.java it uses JCA:
> import gov.aps.jca.CAException;
> import gov.aps.jca.JCALibrary;
> import gov.aps.jca.cas.ProcessVariable;
> import gov.aps.jca.cas.ServerContext;
> import gov.aps.jca.configuration.DefaultConfiguration;
>
> So JCAE provides an abstraction and easier to use interface, but it does not replace JCA/CAJ. It handles clients and servers.
>
> CA is client only and does not depend on JCA/CAJ. It is for clients only.
>
> Mark
>
> ________________________________________
> From: [email protected] [[email protected]] on behalf of Wang, Lin [[email protected]]
> Sent: Wednesday, June 07, 2017 3:55 AM
> To: [email protected]
> Subject: Questions about Java channel access client
>
> Dear all,
> We need to develop the facility status web UI using Java for CSNS, the web UI will get data from live PVs, and we are now considering which Java channel access client library to use.
>
> On the EPICS official website, the following ones are mentioned.
>
> CAJ: Pure Java Channel Access Client (SF)
> JCA: Channel Access client for Java using JNI (SF) (original at APS/BCDA)
> CA: Another pure Java Channel Access client implementation (Github)
> JCAE: Java Channel Access Extensions library (Github)
>
> So my questions are as follows:
> 1. Are JCA and CAJ already obsolete? I ask because most documentations for them do not seem to be available anymore. Also, they are not moved to github like other active maintained projects.
> 2. Are CA and JCAE the replacement or improvement of JCA/CAJ?
> 3. For CA and JCAE, which one will you recommend?
>
>
> Thanks,
> Lin
- References:
- Questions about Java channel access client Wang, Lin
- RE: Questions about Java channel access client Mark Rivers
- Navigate by Date:
- Prev:
RE: Questions about Java channel access client Mark Rivers
- Next:
double crystal monochromator 梁雅翔
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
<2017>
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
RE: Questions about Java channel access client Mark Rivers
- Next:
Re: Questions about Java channel access client Ralph Lange
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
<2017>
2018
2019
2020
2021
2022
2023
2024
|