ace and java

Danielle et jean Thierry-Mieg mieg at alpha.crbm.cnrs-mop.fr
Thu Jul 15 14:32:13 EST 1999

following a question by  Gudmundur zgudmunt at my-deja.com

the jade code i wrote with lincoln was a real try at interfacing
acedb to java 
it works very well, with local caching, threading etc and is
a very evolved software in terms of database

what was not so complete in our 97 work was the graphic interface although it
did reproduce the sort of graphics we have in webace and in the recent

In addition Jade has authentic java graphics following the
model of exchanging data via tables which we discussed at length in
 (Stein. Cartinhour, ThMieg, ThMieg, Gene, 1998, 209,pp 39-43)

This implies that Jade also suppports data imported from other
databases, as for example in our GDB demo which gets its data from a
relational Oracle server.

However, over the last 2 years, the java graphic library, JDK, evolved
in a very disappointing way. Most programmers i know who have tried to
develop in java have been taken aback by the diffculty of writing
applets:  write once-debug everywhere !

Java really works well only in intranet where you have control of the
browser beeing used or as stand alone applications

For those reason Lincoln ported the jade library in perl and i adapted
the server, constructing in this way the central core of the AcePerl

Contrary to java, we have had no problem at all with perl.

AcePerl is a great success and the webace code of Bigwood et al,
(thanks Doug for this excellent work that we did use for deveral
years), has now been superseeded on several sites, including
www.sanger, by aceperl, although, and this is very confusing, aceperl
was renamed webace on the sanger site.

Webace is the code of 95 by Bigwood et al,
Aceperl is the code of 98 by Stein et al,

 Both import data from the acedb server but
actually in a different format
   webace uses the -p[erl] format
	 i.e  full fleshed perl acedb objects
   whereas aceperl uses the same -j[ava] format
	 i.e. the format we developped for jade


As far as connection goes, AcePerl talks rpc to the acedb rpc server
and Jade talks socket to a small daemon running on the web server
called jade2ace which itself talks rpc to the acedb rpc server located
presumably on a different machine

Note that even when Ed Griffith and I finish the acedb socket server
(say in a couple of weeks), we will still need a jade2ace daemon
because the applets are not allowed to talk to any machine but the

however standalone java applications will be able to talk to the server
directly (i.e. intranet type java usage)


The real benefit of the socket connetion concern aceperl and the xaceclient.

xaceclient is a full fledged graphic acedb which automatically
import data from the server
The current xaceclient only works on Unix machines because it talks rpc
with the new socket  protocol  we will be able to port xaceclient
to a mac and pc

Aceperl like xace, on a non rpc machine, can only talk to a local database


i hope this clarifies a little the discussion

More information about the Acedb mailing list

Send comments to us at biosci-help [At] net.bio.net