[jsword-devel] API Example
Matthias Wegner
mic.mat.wegner at web.de
Fri Sep 10 10:49:13 MST 2010
Hi All,
my Name is Matthias Wegner from Germany, Freiburg. I develop since 13 years
java and want to use the jsword api for an own application. For that I need
some bibles and a search for the bible text in dependency of the "key". I
try since three days to get the given API Example working. I think I
understood in a raw concept what the different Installer-Classes and the
WebRessource-Class are doing, but I don't get it what is going wrong.
i tried to get a working APIExample. I use the newest Eclipse, load all
Librarys from Maven and have a working set. My problem is, that I always get
a timeout (I moved, so I only have UMTS at the moment). When I put the
timeout in WebResource-Class to 5000ms the Application below starts, but I
always get in the Console
ESV
Book contains key: false
Text is ''
I don't get what i am doing wrong. Is the problem a connection problem? When
I put manually the esv.conf in the mods.d-directory, then the book is
removed and deleted (that means only the config-file). Is that the way it
goes? I downloaded the esv and put it relative to mods.d to "../modules". In
the full desktop application this works fine, so I don't understood whats
wrong.
I really appreciate some help or hints. Can you give me some tryouts, so I
can find the "real" problem?
Warm Regards,
Matthias
Example Code:
public static void main(String[] args) {
InstallManager imanager = new InstallManager();
Installer installer = imanager.getInstaller("CrossWire");
try {
installer.reloadBookList();
}
catch (InstallException e) {
e.printStackTrace();
}
List availableBooks = installer.getBooks(new MyBookFilter("ESV"));
Book book = (Book) availableBooks.get(0);
if (book != null) {
try {
if (Books.installed().getBook("ESV") != null) {
System.out.println("Book " + book.getInitials() + " is
removed");
Books.installed().removeBook(book);
System.out.println("Book " + book.getInitials() + " is
deleted");
book.getDriver().delete(book);
}
}
catch (BookException e1)
{
e1.printStackTrace();
}
}
System.out.println(book.getInitials());
try {
installer.install(book);
if (Books.installed().getBook("ESV") != null) {
System.out.println("Book is NOT empty");
}
}
catch (InstallException e) {
e.printStackTrace();
}
try {
Key key = book.getKey("Gen 1:1");
System.out.println("Book contains key: "+
book.contains(key));
BookData data = new BookData(book, key);
String text =
OSISUtil.getCanonicalText(data.getOsisFragment());
System.out.println("Text is '" + text+"'");
} catch (NoSuchKeyException e) {
e.printStackTrace();
} catch (BookException e) {
e.printStackTrace();
}
System.exit(1);
}
static class MyBookFilter implements BookFilter
{
public MyBookFilter(String bookName)
{
name = bookName;
}
public boolean test(Book bk)
{
return bk.getInitials().equals(name);
}
private String name;
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.crosswire.org/pipermail/jsword-devel/attachments/20100910/6d23c946/attachment-0001.html>
More information about the jsword-devel
mailing list