Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Replacing the JDBC:ODBC Bridge

 
Neil Barton
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have been using the JDBC:ODBC bridge from Java to access data held in the Sage line 50 database for some time. It works fine for my purposes. Now it has been withdrawn in V8 it is causing me some problems.
I would welcome any suggestions for alternatives but I have been doing a lot of research myself. There are some alternatives but they seem quite expensive. Sage do not provide a JDBS driver (as far as I know) but they do provide SDATA. This is a service running on the server which you can access from a web page. I think it's intended for PHP programmers and I may take the option to re-write everything in PH to utilise this but that's a big job.

How can I use the SDATA interface from a Java program?

The description for SDATA is here: http://sdata.sage.com/sdata11/sdatacore_showcases.html

I'm not sure where to start. Perhaps I need to use a stream of some sort or maybe there is functionality already within Java to access this sort of service. Any pointers would be much appreciated.
 
Paul Clapham
Sheriff
Posts: 21581
33
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I had a look at the protocol specification (that PDF download mentioned in the page you linked to). Somewhere not far from the beginning it says:

SData is a REST-style web services protocol.


Which suggests to me that you need a REST web-service client written in Java. The one which I've heard of is called Jersey, but you might find others with some web searching.

But it seems that you've been accessing the database via SQL up to now? In that case it would be a rewrite to access it via web services, which is what they seem to want you to do.

Hope that's more helpful than it looks to me...
 
Neil Barton
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks Paul,

Pretty much as I expected. I'll have a look around the REST standard and see what I come up with. I dread to think what speed it's going to be :-(

Your response was very helpful, the REST hint is a place to start, which is what I needed!
 
Neil Barton
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I'm coming to the conclusion that SDATA is not the answer. It is incredibly slow and has a lot of restrictions that are going to stop me.

Sage use a generic ODBC database. In the commentary talking about the removal of the JDBC-ODBC bridge the Java guys say "get a JDBC driver from the database supplier". I can't find anywhere where they tell you what to do if the supplier has not provided one. Since the Excel link still works I know that the ODBC is working but is there another way of interfacing to that database? I'm quite surprised that there is no other way of interacting with a generic database type (also that they should arbitrarily remove it!).
 
Dave Tolls
Ranch Hand
Posts: 2112
16
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
It was removed because it was never intended for anything approaching production code.
It was always simply a stop gap.
Oracle stopped supporting it years ago (to be honest, I don't think they ever supported it).

The only thing I can think is continue to use Java 7 (or convince your clients to)...or carve the bridge out of 7, but I suspect there would be licensing issues with that.
 
Neil Barton
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks Dave,

I never realised it was so underrated, I thought it was great! I have seen couple of comments saying things like 'Copy the driver from V7'. It sounds very complicated since I wouldn't even know where that driver would be (java.sql?). I tried looking for a jar file that I could copy but there wasn't one. I'm guessing you're suggesting downloading the raw java code and hacking it. Is that the case?

I am exploring another option as well but if that falls apart as well I might end up having to do something like that. If you can point me at any helpful URLs I'd appreciate it.
 
Dave Tolls
Ranch Hand
Posts: 2112
16
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I've never done it.
I've only seen it mentioned as an option.

I think they're tucked into the rt.jar, so presumably you'd have to extract them.
As I say, I would check on any licensing problems.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic