Bible Desktop
  1. Bible Desktop
  2. BD-172

With Java SE 7 Update 1 (64 bit) BD does not display any of the installed books

    Details

    • Type: Bug Bug
    • Status: Resolved (View Workflow)
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 1.6.1
    • Fix Version/s: None
    • Component/s: book display
    • Labels:
      None
    • Environment:

      Windows 7 x64 (fully patched)
      Oracle Java SE Version 7 Update 1 (64-bit)

      Description

      Since I installed Java 7 (64-bit) and now have this as the only version of Java SE in my PC, none of the installed books are displayed, even though I can see all their names in dropdown selectors, etc.

      All the books that I have installed are in C:\Users\David\AppData\Roaming\Sword
      and this is correctly specified in BD Preferences | Additional Book locations.

      BD used to work fine with this configuration when I was using Java SE 6 Update 29 (prior to Oracle releasing a 64 bit version 7).

      The nightly build of BD fares no better.

        Activity

        Hide
        DM Smith added a comment -

        For Windows, the reason to install both 32-bit and 64-bit Java is that on Win 7, (both 32-bit and 64-bit) the default IE browser is 32-bit, which requires the 32-bit Java for Java enabled websites. Win 7 64-bit also has IE 64-bit, which requires 64-bit Java. I think the same is true with Firefox, that you need to match the bit level of the app and the Java plugin.

        Except possibly for FireBible in FireFox, this is moot when it comes to JSword and the JSword family of applications.

        I'm testing now in 64-bit Win 7. I'll report back when I'm done.

        One of the changes in Java 7 was that optional settings have changed. Some of them are quite buggy.

        Show
        DM Smith added a comment - For Windows, the reason to install both 32-bit and 64-bit Java is that on Win 7, (both 32-bit and 64-bit) the default IE browser is 32-bit, which requires the 32-bit Java for Java enabled websites. Win 7 64-bit also has IE 64-bit, which requires 64-bit Java. I think the same is true with Firefox, that you need to match the bit level of the app and the Java plugin. Except possibly for FireBible in FireFox, this is moot when it comes to JSword and the JSword family of applications. I'm testing now in 64-bit Win 7. I'll report back when I'm done. One of the changes in Java 7 was that optional settings have changed. Some of them are quite buggy.
        Hide
        DM Smith added a comment -

        Works for me. Here was my test:
        I created a clean VM of Windows 7 64-bit with nothing else of significance installed. I then fully updated it (took several tries to get all the patches.)

        I then downloaded BibleDesktopSetup.exe, for the latest release, aka 1.6. Not the nightly build.

        I ran BD, downloaded the version of Java that it provided, installed the KJV and created a search index and went to "Tools > Options" and then without making any changes, clicked on apply (this creates %APPDATA%/JSword/desktop.properties).

        I then edited %APPDATA%\JSword\desktop.properties and changed
        Advanced.IncludeAdvancedTabs=false
        to
        Advanced.IncludeAdvancedTabs=true
        This adds an extra tab to Help > About that will show the system properties. With this I can see the version of Java that is actually run.

        I then downloaded and installed the 64-bit version of Java 7 and uninstalled the version that BD downloaded.

        I found no way to run BD using BibleDesktop.exe that would find a 64-bit JRE. It always insisted on downloading Java 6. And within the Java control panel I unchecked all the available versions of Java, but this seems to only affect the browser plugin, not what was actually used by BD.

        So, I created a bat file to run the java of my choice by doing the following:

        I created a folder named BD on my desktop. I then copied all the jar files from c:\Program Files (x86)\CrossWire\BibleDesktop into that folder.

        I then created BD.bat in that folder with the content (on a single line):

        "C:\Program Files\Java\jre7\bin\javaw.exe" -classpath "bibledesktop-1.6.jar;commons-codec-1.3.jar;commons-httpclient-3.1.jar;commons-logging-1.1.1.jar;commons-net-1.4.1.jar;javatar-2.5.jar;jdom-1.0.jar;jlfgr-1_0.jar;jsword-1.6.jar;jsword-common-1.6.jar;jsword-common-aqua-1.0.6.jar;jsword-common-swing-1.6.jar;lucene-analyzers-2.3.2.jar;lucene-core-2.3.2.jar;lucene-snowball-2.3.2.jar" org.crosswire.bibledesktop.desktop.Desktop

        You can change the path of the executable to match your installation.

        I then ran BD and had no problems.

        Can you do the same for the latest stable release and let me know the outcome.

        If it works for you, but 1.6.1beta does not, then we have a problem with the nightly build.

        Show
        DM Smith added a comment - Works for me. Here was my test: I created a clean VM of Windows 7 64-bit with nothing else of significance installed. I then fully updated it (took several tries to get all the patches.) I then downloaded BibleDesktopSetup.exe, for the latest release, aka 1.6. Not the nightly build. I ran BD, downloaded the version of Java that it provided, installed the KJV and created a search index and went to "Tools > Options" and then without making any changes, clicked on apply (this creates %APPDATA%/JSword/desktop.properties). I then edited %APPDATA%\JSword\desktop.properties and changed Advanced.IncludeAdvancedTabs=false to Advanced.IncludeAdvancedTabs=true This adds an extra tab to Help > About that will show the system properties. With this I can see the version of Java that is actually run. I then downloaded and installed the 64-bit version of Java 7 and uninstalled the version that BD downloaded. I found no way to run BD using BibleDesktop.exe that would find a 64-bit JRE. It always insisted on downloading Java 6. And within the Java control panel I unchecked all the available versions of Java, but this seems to only affect the browser plugin, not what was actually used by BD. So, I created a bat file to run the java of my choice by doing the following: I created a folder named BD on my desktop. I then copied all the jar files from c:\Program Files (x86)\CrossWire\BibleDesktop into that folder. I then created BD.bat in that folder with the content (on a single line): "C:\Program Files\Java\jre7\bin\javaw.exe" -classpath "bibledesktop-1.6.jar;commons-codec-1.3.jar;commons-httpclient-3.1.jar;commons-logging-1.1.1.jar;commons-net-1.4.1.jar;javatar-2.5.jar;jdom-1.0.jar;jlfgr-1_0.jar;jsword-1.6.jar;jsword-common-1.6.jar;jsword-common-aqua-1.0.6.jar;jsword-common-swing-1.6.jar;lucene-analyzers-2.3.2.jar;lucene-core-2.3.2.jar;lucene-snowball-2.3.2.jar" org.crosswire.bibledesktop.desktop.Desktop You can change the path of the executable to match your installation. I then ran BD and had no problems. Can you do the same for the latest stable release and let me know the outcome. If it works for you, but 1.6.1beta does not, then we have a problem with the nightly build.
        Hide
        David Haslam added a comment -

        Meanwhile, I recently installed BD on my wife's machine, which is also Windows 7, but only 32 bit.
        This has Java 7 Update 1 installed. BD worked OK.

        On my own machine, I'd also re-installed Java 6 Update 29 (which is 32 bit), yet without uninstalling Java 7 Update 1 (64 bit). BD still does not display content.

        I've only just read your comment, and it may be some time before I get chance to "do the same" as you requested.

        David

        Show
        David Haslam added a comment - Meanwhile, I recently installed BD on my wife's machine, which is also Windows 7, but only 32 bit. This has Java 7 Update 1 installed. BD worked OK. On my own machine, I'd also re-installed Java 6 Update 29 (which is 32 bit), yet without uninstalling Java 7 Update 1 (64 bit). BD still does not display content. I've only just read your comment, and it may be some time before I get chance to "do the same" as you requested. David
        Hide
        DM Smith added a comment -

        There's a bug in Java WebStart that is rendering BibleDesktop unusable. The symptom is that it won't show any module content, but puts up an error message.

        This started with Java 6 update 23 and is still a bug with the latest Java 7.

        You can read about the bug here: https://forums.oracle.com/forums/thread.jspa?messageID=10786421

        That the original bug report was hidden/removed indicates that it is an exploitable bug or related to one.

        I'll be removing the WebStart links until this is fixed.

        Show
        DM Smith added a comment - There's a bug in Java WebStart that is rendering BibleDesktop unusable. The symptom is that it won't show any module content, but puts up an error message. This started with Java 6 update 23 and is still a bug with the latest Java 7. You can read about the bug here: https://forums.oracle.com/forums/thread.jspa?messageID=10786421 That the original bug report was hidden/removed indicates that it is an exploitable bug or related to one. I'll be removing the WebStart links until this is fixed.
        Hide
        DM Smith added a comment -

        Fixed by removing WebStart as an option

        Show
        DM Smith added a comment - Fixed by removing WebStart as an option

          People

          • Assignee:
            DM Smith
            Reporter:
            David Haslam
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: