<div id="RTEContent"><br> <blockquote class="replbq" style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;">Could you explain for java-impaired people like me what jni is, how it<br>is connected to java and how your project is different to the other<br>java projects? There is already code that comes with SANE<br>(sane-backends/japi), there is jsane (commercial,<br>http://asprise.com/product/jsane/index.php) and morena<br>(http://www.gnome.sk/Twain/jtp.html).<br> </blockquote><br> JNI = Java Native Interface.&nbsp; Quick summary: Everything within Java runs in a virtual machine.&nbsp; No Java program has access to memory, and it also cannot call libraries or do any real machine-level stuff.&nbsp; This is why Java is so stable and secure: programs can't stomp on memory or do anything else that is not allowed by the JVM and the JVM's security policies.&nbsp; The only way Java can interact with the real hardware is through the interfaces provided by the
 Java Virtual Machine (JVM).&nbsp; In some cases, this is too confining, like if you need to interface to a library.&nbsp; The SANE library is just such a library.&nbsp; In this case, the Java Native Interface can be used.&nbsp; It allows you to write code in C (or C++, etc) and have the JVM dynamically link the library in, and then the Java code can call out to the library.&nbsp; What I have done is use JNI to wrap the SANE library so I can access SANE from within Java.<br> <br> This is very similar to Morena.&nbsp; I think it is similar to jsane, except jsane only works with network scanners (I may be wrong on that).&nbsp; The difference is that we can release this under GPL because we don't anticipate trying to sell this code as its own product.<br> <br> As for japi in the SANE backends, yes, this is very similar to that, except that code is about 9 years old and doesn't seem to be maintained.&nbsp; Java has changed a lot in 9 years.&nbsp; Unless there is some reason not to, it
 makes sense to remove japi from sane-backends.<br> <br> <blockquote class="replbq" style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;">There are some possibilities to include such a project into SANE: <br><br>1) Place it in sane-backends. There you have CVS and it would come<br>   with every sane-backends installation. However this only makes<br>   sense if it is widely used and maintained. For this reason I<br>   already thought about removing japi from sane-backends beacuse its<br>   unmaintained and doesn't seem to be used.<br></blockquote> <br> It really belongs in the front-ends I believe.&nbsp; There seem to be requests and commercial products that do the same thing, so I think there is interest.&nbsp; Obviously japi is no longer maintained and is not really set up for modern Java use.&nbsp; For example japi can't do something simple like scan and save as a JPEG.&nbsp; My code can.&nbsp; Also my company will sponsor maintenance of the code,
 with the hope that SANE will just put a simple small link to the company site.<br> <br> There are some good advantages for this.&nbsp; In the future, we could have an alternative to xscanimage that is written in Java.&nbsp; This would have have advantages in terms of stability, ease of use, and ability to easily integrate into other Java apps.&nbsp; Java is starting to make an entrance into the Linux desktop world.&nbsp; As you may know, gcc now has a powerful and capable Java compiler, called gcj, so it is now possible to compile Java applications into native binaries and run them just like any other program, without needing a JVM at all.&nbsp; Also Trolltech is releasing an official Qt binding for Java, so we could have a full Qt/KDE scanner application in Java using this code.&nbsp; Java is becoming a bigger part of the Linux desktop.<br> <br> <blockquote class="replbq" style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;">Until now I only mention
 Debian's and redhat's contributions<br>explicitely, but explicitely mentionning the company/person who wrote<br>the code isn't a problem.<br></blockquote> Ah, that is good.&nbsp; Actually we ideally would like a HTML link.&nbsp; They will sponsor maintenance and answer questions on it.<br> <blockquote class="replbq" style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;">Including into SANE really needs a maintainer, however. So either you<br>must manintain it also in future or we must wait for somebody else who<br>volunteers to do so.<br></blockquote> <br> We'll do it.<br> <blockquote class="replbq" style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;">Your other mails don't seem to contain any links, maybe this is<br>because I use a non-graphical mail program?<br></blockquote> <br> Yes.&nbsp; I'm using this crazy Yahoo JavaScript mail client which seems more frustrating than helpful.&nbsp; Here's the URL:
 http://chiralsoftware.net/scanner/applet.html .&nbsp; Hopefully that will get through.&nbsp; If not, it's chiralsoftware dot net slash scanner slash applet.html<br> <br></div><p>
                <hr size=1>Do you Yahoo!?<br> 
With a free 1 GB, there's more in store with <a href="http://us.rd.yahoo.com/mail_us/taglines/mailstorage/*http://mail.yahoo.com/">Yahoo! Mail.</a>