Interfacing the JChem Suite outside of Java (Web Services, .NET, SQL, Workflow platforms)Presentation
September 2010
Product
JChem Web Services
Product group
IT platform toolkit
Understand and decide your best interface from the many non-Java programming interfaces to the JChem Suite of tools. Many interfaces will be discussed, such as the pure .Net interface, Oracle Cartridge, Web Services, and workflow platform integrations.
Subtitle for hearing impaired (hide)
0:02
Good morning
0:07
am a little stuck in
0:08
Budapest but actually it’s not stuck I actually like it
0:13
so again I know it’s early
0:15
but I want to say good morning, good morning Ivan
0:18
good morning Pat
0:20
good morning to Dan
0:22
morning Brett
0:24
what I want to say is
0:26
we at ChemAxon like to
0:31
think that we can provide
0:32
for
0:33
each individual
0:36
situation, each individual
0:39
platform
0:40
or technical decision
0:42
and
0:45
with JChem
0:47
we’ve provided a whole number of interfaces to be able
0:51
to allow you guys to do that
0:52
again my name is Jonathan lee
0:55
I’m the project manager of JChem Base our database product and
1:02
Web Services product
1:08
so I’ll talk a little bit about the interfaces
1:12
maybe what’s most important to you guys is the situational factors
1:15
what it is
1:17
what kind of questions that you have
1:19
what kind of doubt that you have
1:23
in your mind when you’re deciding on
1:25
how can I use JChem
1:28
the SQL interface the .NET interface
1:31
Web Services interface
1:33
work flow, pipe-lining tools
1:35
will go over that
1:38
in small details here
1:43
so… on this side
1:46
is all the
1:48
suits of tools that ChemAxon
1:50
provides
1:51
in JChem
1:54
you will hear
1:55
about Marvin today
1:58
you’ve seen
2:00
in
2:01
various talks
2:03
starting off
2:04
yesterday about all the different
2:06
little pieces and tools
2:08
all this little great icons that we’ve got
2:10
put into
2:11
the applications
2:14
that he’s made
2:16
and I’d like to make sure that you know that hey
2:19
you can get your application
2:21
to hooking with all the things that we’ve made
2:24
and that you’ve heard about
2:25
today and yesterday
2:31
so of course
2:32
Dan Durkin said yesterday that how he loves
2:35
ChemAxon because it’s got Java interfaces and it just works works well
2:39
so yes of course
2:40
we work well with playing with Java objects
2:42
we work well with
2:44
service like JSP
2:48
and what I’d like to remind you is that
2:50
yes you can do that but you can also do all these other things
2:53
use SQL
2:54
with our Cartridge product
2:57
work with the .NET framework
3:00
all of the things
3:02
that you can do in Java
3:04
just about everything you can do in the .NET world
3:06
and that’s what really makes you leverage of the
3:10
or use as leverage
3:11
of your platforms that you have
3:14
at your own businesses
3:17
of course Web Services is something near and dear to my heart
3:20
but
3:21
that allows us to say hey you can use JChem but be independent of your platform
3:26
be independent of your
3:27
programming language
3:29
and work with a lot of the
3:32
infrastructure that you’ve built in
3:33
in your own companies
3:38
so what are some of the situational factors that you’ve got
3:41
in fact actually the slide really talks about well… maybe
3:46
all of you here
3:48
you’ve heard about a lot of things that you want to try out you’ve heard about things
3:52
that
3:54
you think that’s actually going to have a good fit
3:56
but maybe you’ve got other folks at your work place that you have to convince
4:00
or you have to
4:02
quarrel the doubts that they have
4:04
and we’re going to say well they have a lot of questions and you’re gonna have answers
4:07
for them as well
4:10
what if we don’t use Java well
4:14
you ask for what actual
4:16
language do you prefer
4:18
you’ve got the .NET
4:20
other web languages that are just
4:23
a forefront for web2.O stuff
4:26
Web2.O stuff
4:27
if it’s going to use
4:29
SOAP or if it’s going to use
4:31
any kind of well
4:33
or it’s going to have any kind of web
4:35
friendly
4:37
libraries then yes of course you’re going to be able to use JChem
4:40
does your environment have just Oracle
4:45
we handle it
4:46
Cartridge
4:47
if it does it that’s fine too
4:48
we’ve got all sorts of connections
4:52
with the JChem suite of tools
4:54
so that shouldn’t be a question about we don’t have
4:57
Oracle so we can’t use this or that
4:59
all the stuff that’s provided
5:02
in the Cartridge
5:03
for example you can also do inside of JChem
5:08
the end user environment
5:10
all we need a desktop application we have products that do that, InstantJChem
5:15
if you want the Web Client, we also have products that do that
5:19
we’ll talk about the other similar things in the future
5:22
about how you can do that the best of
5:26
your situation
5:29
and of course some of our folks out there
5:31
have a service-oriented architecture well that’s that’s actually perfect for
5:36
the Web Services
5:37
that’s perfect for
5:38
building up in re-using all those components and Web Services
5:44
so JChem Cartridge
5:46
that’s a product that
5:48
is entirely tied with the Oracle database of course that’s one of the
5:53
most used
5:54
databases
5:56
of our customers
5:59
but we’ve leverage that system
6:02
being able to use the security and the
6:05
reliability, scalability
6:08
of Oracle
6:10
we also provide
6:11
store procedures
6:13
to handle the database work
6:18
and JChem server to handle things that are outside of that route so maybe it’s
6:22
done better outside of
6:25
the Oracle database
6:26
so we separate the
6:28
work
6:29
to the
6:32
best
6:34
machines
6:39
so
6:42
we’re supporting SQL in that sense
6:44
as as a programming language out so that again we’re talking about data bases outside of Java
6:48
but if you prefer to use the SQL language
6:51
this is something you can use
6:54
and we also support mostly JChem modules in this JChem Cartridge product
7:01
in .NET we’ve made great leaps and bounds
7:05
over the past year too
7:08
to support the .NET framework
7:11
we’re using the
7:13
IKVM
7:14
technology but
7:15
basically we’re transforming
7:17
directly from the Java into the .NET format
7:21
so it’s a lot faster
7:22
and
7:23
and much more compatible
7:26
Marvin applications are in there,
7:29
Marvin View Marvin Sketch
7:32
and as you can see in the
7:35
graphic there
7:36
we’re using that code
7:39
to develope for
7:41
JChem for Excel
7:42
JChem for SharePoint
7:44
and so
7:45
we know it works and you guys can use it as well
7:51
here the .NET stuff of course supports .NET languages
7:55
and all the JChem suit except for
7:57
Cartridge
8:00
which we’ve talked about earlier and Marvin Beans
8:07
Jchem Web Services
8:10
is
8:11
what I would like to think
8:14
that has interoperability as its
8:17
main
8:19
point
8:20
we want to make sure that we use all the standards
8:23
in the industry
8:24
like WSI, SOAP and WSDL
8:27
and allow
8:28
everybody to use
8:30
this outside of Java world
8:32
but inside of the web world
8:35
anybody that is using web clients and wants to use
8:38
friendly
8:39
languages can do that
8:44
AJAX, JavaScript
8:47
Perl, Python, Scripting Languages
8:49
Ruby, PHP
8:51
we have Adobe Flex folks
8:52
a lot of choices here
8:55
and you just want to
8:57
utilize what your company
9:00
has strengthened
9:02
of course you can still use them languages with Web Services like a
9:06
Java
9:08
we have a growing list of models every time we’re making a new model
9:11
we’re going to try and put that into Web Services
9:15
great thing about Web Services that it’s automated client generation so you’re
9:19
doing
9:21
the heavy lifting you’re not doing it we’re doing it
9:24
or the SOAP
9:26
languages or library they come with
9:28
all these languages
9:32
you can use that
9:35
and you wouldn’t have to worry about any of the
9:38
interoperability issues
9:46
I talked a bit about SOAP
9:48
and that’s what’s unlocking
9:49
all of this
9:51
all these interoperability
9:54
blocks of problems
9:55
here you can see
9:57
with this amount code
9:59
and Python with this amount of code JavaScript
10:02
gets translated into something
10:03
like this it’s called SOAP this is the lingua franca of Web Services
10:08
and when you get to use JChem Web Services and of course
10:10
although the rich
10:12
chemical intelligence inside of the JChem suit
10:15
so this is really unlocking it
10:17
unlocking all that intelligence for you
10:22
just a quick
10:24
mention about the architecture
10:26
because i want to make sure that
10:28
it’s it’s clear that you can use
10:29
Web Services on any platform
10:32
with any language we’re using open source components a cynical access to and Tomcat
10:37
you may have heard that in the tech circles
10:40
and here in this red
10:43
what that allows you to do is that hey we can use it on any
10:46
OS, any platform anything that runs Java
10:51
and it’s open source so you get that support of that community
10:54
and the price tag
11:01
a list of all the features here
11:02
we talked about features
11:04
in Cartridge in the .NET
11:06
but here again we have a growing list of these services
11:13
since I’ve been doing this
11:15
a little while
11:16
this list is actually too long for my slide here
11:20
and these future services are coming
11:22
there very soon in 5.4
11:25
the ones that we’ve always
11:28
database related services JChem searching
11:31
data manipulation, all these
11:35
DML, DDL type of functionality
11:38
loading and unloading tables, importing & exporting that sort of things
11:43
Molecular Conversion Services
11:46
Standardization
11:47
these are is a great for registration
11:51
services
11:52
or applications Chemical Terms something that is great for virtual screening
11:57
and Reactor services creating things that are
11:59
chemically visible
12:01
a whole bunch of things that I’m excited about
12:03
that is
12:05
coming in a month or two
12:06
molecular search Markush is something that we’ve got coming up
12:10
in 5.4
12:12
JChem table management
12:14
couple of things you can see up there
12:16
and those are coming a little bit later
12:20
I’ll show you a quick demo
12:28
and the point of the demo is just
12:32
well for me is to show a little of what we’ve done but
12:35
to show you yes
12:37
this is all made in
12:38
in a non Java environment
12:41
it uses the Web Services
12:43
it’s got a whole number
12:47
might have to go and click on the
12:50
user
13:00
the point of the demo’s is to show that hey we can
13:04
create full future applications
13:06
and still get all the features that JChem provides
13:11
but we do it outside the Java
13:56
so my point is that you’ve got a lot of options
13:59
and you’ve got a lot of chemical intelligence that you get ripped out of JChem and put it
14:03
anywhere you want
14:04
use that Marvin
14:05
use the
14:06
Markush stuff
14:08
that you’ve heard about
14:20
well the other things that I want to show you was yes it was that easy
14:24
I guess I downloaded
14:26
the 5.3.8 the latest release
14:31
on one configuration page I just changed right pointed to the
14:36
database
14:38
that I wanted to point to and I just double click on start up top at so
14:43
very easy this is an application a demo
14:45
and actually pretty full-featured application that comes through
14:50
with Web Services server
14:51
and you can go and use it
15:09
OK, there is a quarter of a million structures
15:15
in this large data base
15:18
and if you can see
15:21
when we flip down
15:22
browsing is very very fast
15:27
the great thing about
15:28
the great thing about this application here is that we’re using AJAX and where using any of the libraries
15:33
that
15:34
AJAX well all of that
15:35
community
15:38
provides you when we’re using jQUERY
15:42
Windowing system so
15:45
you get to use whatever your developers like to use
15:49
OK I wont treat you much on this now
15:59
I think the point is made last thing I want to say is is work flow integrations
16:07
for the computational chemist for the folks that like the work flow
16:11
work flow tools to build your own workflows and send it off to your own colleagues
16:15
we support all these major work for integration tools pipeline pilot
16:19
we provide those directly
16:22
we dump the modules
16:24
the modules here
16:26
actually this one!
16:28
and KNIME
16:30
provided by Infocom
16:32
and Inforsense which is done by IDBS
16:39
lot of information on the web sites
16:42
that’s actually a great
16:44
source of
16:45
of information
16:48
we have stuff about Cartridge we have stuff about .NET
16:51
and we have stuff about Web Services
16:54
and these forms a really important for the developers
16:58
so that they have instant
17:01
communication with us
17:04
okay well thank you very much that was my talk hopefully you’ve seen that yes
17:09
you can make these things out of Java we’re not just a Java shop
17:13
and that we can get
17:15
your applications to use ours
17:17
Great, thank you
17:22
We have time for one or two questions if anybody has some few questions for Jonathan
17:31
(Questions from the spectators)
17:32
I’m very curious about the Web Services as well as the nodes and components for
17:37
the work flow tools
17:40
going forward as you release new
17:43
either you know pieces of your infrastructure as Web Services do you intend to deploy a parallel
17:50
nodes to Pipeline Pilot and KNIME or do you recommend that going forward you know we just
17:55
use the native capabilities of those tools and connect to the Web Services directly
18:02
I see, trying to connect to the Web Services through
18:05
like Pipeline Pilot node or through KIME nodes that’s corrected if you deliver a nodes
18:10
you put sort of your framework around it what we intend to use and what may be black box
18:16
whereas if we go to the web service we have more control I don’t mind doing it one way or
18:20
the other but that is kind of parallel tracks
18:23
so am curious what your thoughts are
18:28
well I guess it’s whatever suits your own needs if you’ve got
18:31
if you’re comfortable using the Web Services I think that’s fine that’s another
18:37
option for you to work in that work flow pipelining environment
18:42
I mean it’s really up to you
18:46
to decide I think it works well but of course if its native inside of the PipelinePilot
18:50
nodes and it works for you then you can avoid getting another call up for
18:56
webservices
18:57
(Questions from the spectators)
19:05
that’s true that’s true and actually he has raised a good the point that
19:09
we always like to take the requests of
19:12
of our users say we want this and in the Pipeline node or we want this on the
19:17
Web Services and we’re going to take that use that as to help prioritize they
19:21
work that we do, thank you!
