[sane-devel] Best Java programming API library available

Henning Meier-Geinitz henning@meier-geinitz.de
Wed, 30 Oct 2002 10:48:19 +0100


Hi,

On Wed, Oct 30, 2002 at 02:44:21AM +0000, sony antony wrote:
> Today as the Architect of the project I just succeeded in getting the 
> management to accept using SANE for our project.
> I have been reading some literature and compiling the RPMs available.

I hope, the RPM's you are talking about, are complete. Better get the
latest (1.0.9) .tar.gz from the SANE website.

> 1. What is the licensing terms for SANE.

See file LICENSE in the sane-backends-1.0.9 directory.

> Is it OK to use it for our project ( Its not a product sold outside.
> But a software used in our company )

I am not a lawyer :-) I think, Frank Zago is right. If you change the
existing code or use parts of it in our own product and make it
available for anyone else, you should carefully check the license.

> 2. I was reading that SANE is actually a standard that neatly helps to 
> abstract teh driver-specifics, away from teh user programs like GUI etc.

Yes.

> Is 
> it this standard that is GPLd ( I didn t know specifications can be GPLd. I 
> thought only software can be GPLd )

The standard itsself is public domain. You can implement a SANE
backend or frontend and use any license you want. Only if you use code
from existing backends or frontends, you must obey the license.

> 3.Though I read SANE is a standard, I was also reading about ( like teh RPM 
> I downloaded from rpmfind.net ) SANE as a product.

There is a software package called "sane-backends" or "SANE
distribution", that include a lot of SANE backends. It can be
downloaded from http://www.mostang.com/sane/.
You could call that a product.

> Are there more than one implementation of that standard.

Basically, every backend and every frontend is an implementation of
the standard. So sane-backends contains quite a lot implementations
but there are also some external ones. See the list of backends on
mostang.com.

> Was I reading about one particular ( maybe most popular - or even the
> only one ) implementation.

Most backend maintainers aim to include their backends in the SANE
distribution (sane-backends).

There is also a sane-frontends distribution conatining the frontends
xscanimage, xcam and scanadf. But most of the frontends are external.
There is also a page on mostang.com about the frontends.

> 4. Our project is in Java with remote scanning requirement ( This was my 
> main argument against TWAIN ). Though I was reading about some discussions 
> on Java APIs in this group ( also on Issue 47 of old linuxjournal ), I 
> couldn t come across a downloadable java library for sane. Is there one 
> that is the most popular Java implementation.

There is nothing popular. There is some code in sane-backends/japi,
but as Frank said, it's old and doesn't really work. I've tried to fix
them for some time but interest was very low so I didn't do any
further work (and won't do in futire). See the sane-devel archives.
But that shouldn't stop you from writing a nice java application for
SANE :-)

By the way, there is also a link to "scanlite - free beta version of a
java frontend using josi" on the frontends page on mostang.com. 

> 8. Finally has teh on-the-wire protocol for sane been implemented/mapped to 
> Java. IOW if I have a Java client, can my client process completely in Java 
> ( bottommost layer in java talks this protocol, that is then sent over the 
> wire with Java sockets APIs - So its Java all the way )

I don't know java, so I'm guessing: If it can manipulate data on the
level of bytes, it should be possible.

Bye,
  Henning