JahSync: The Free Calendar Sync Solution

Tuesday, October 09, 2007

JahSync ICal support now available

JahSync now includes ICal and basic text CSV read and write functionality! This means, that in addition to the ability to write to many popular online and stand-alone calendar systems, JahSync can now also support any calendar that can read (or write) ICal standard files. This includes offerings such as Mozilla Sunbird, Evolution and Apple's own ICal scheduling app. The latest version of JahSync is now 0.43, and is available on the downloads page. Look out for continued improvements in the synchronization logic, event recurrence detection, and even more calendar plugins.

10 Comments:

  • This is a great idea for a program! I've desperately been looking for a free solution to sync Google Calendar and Notes.

    However, after copying the files to my directory (C:/Program Files/JahSync) and then updating the batch file, I get an exception error:

    Exception in thread "main" java.lang.NoClassDefFoundError Files\JahSync/google/gdata-base-1/0/jar;C:\Program

    Is there something obvious I'm doin wrong/not doing? Any help would be greatly appreciated.

    By Blogger lucasmcdonnell, at 10:52 AM  

  • Well, off the top of my head, my first thought is that the spaces in the directory name (Program Files) are messing up the CLASSPATH for the Jahsync libraries. Try enclosing the entire path in double quotes. HTH!

    By Blogger Duane Cato, at 11:50 AM  

  • Thanks for the quick reply on this. I've enclosed the entire path in double quotes, and that seemed to get things moving a bit further, but now I've encountered a different error:

    Exception in thread "main" java.lang.NoClassDefFoundError: com/jabob/com/Dispatch
    at java.lang.Class.forName0(NativeMethod)
    at java.lang.Class.forName(Unknown Source)
    at otac.jahsync.GUIAppFrame.jbInit(GUIAppFrame.java:102)
    at otac.jahsync.GUIAppFrame.(init)(GUIAppFrame.java:76)
    at otac.jahsync.GUIManager.(init)(GUIManager.java:48)
    at otac.jahsync.JahSync.(init)(JahSync.java:40)
    at otac.jahsync.JahSync.main(JahSync.java:236)

    Any thoughts on what might cause this exception? Thanks again for your help and patience with this (and for working on such a great project!).

    By Blogger lucasmcdonnell, at 12:01 PM  

  • It appears that Jahsync is not finding the Jacob libraries used for communicating with Outlook; there should be a jacob subdirectory with a jacob.dll and jacob.jar file in it. Copy the Jacob.dll to your windows\System32 directory (or somewhere in your PATH). Also make sure the batch file is updated to point to the jacob subdirectory (enclosing any long or space-containing paths with double-quotes).

    By Blogger Duane Cato, at 12:10 PM  

  • Aha, I must've misread the instructions. I thought the Jacob.dll was only if you wanted to sync with Outlook.

    I've copied the dll over to the system32 directory, but I'm unsure what to change in jahsync.bat. I'm assuming I should change "set JACOB=%JAHSYNC_HOME%/jacob" to indicate that the dll is in C:\WINDOWS\system32, but I'm not sure what the line should look like. Thanks again for all your help.

    By Blogger lucasmcdonnell, at 12:44 PM  

  • Set JACOB to the directory where the jacob.jar file is located. Once the jacob.dll is in the Windows PATH, the jacob.jar file will be able to find it.

    By Blogger Duane Cato, at 1:02 PM  

  • OK I'm making progress! I now got the GUI to launch by removing '/jacob' and '/google' from the batch file (it didn't occur to me that there were actually no subdirectories in the directory I created, so obviously the program couldn't find anything in '/jacob' and '/google'.

    I installed NotesSQL (version 3.0.2j I believe) and pointed it at my notes.ini file.

    So now I've entered my user name and password in the prorpeties box (I'm assuming this is Google user name and password, is that correct?), but then I get:

    JahSync Google read error:java.lang.NullPointerException

    Does this have anything to do with me getting rid of the '/google' in the jahsync.bat file (I could be way off on that)?

    By Blogger lucasmcdonnell, at 1:29 PM  

  • Sounds like you have it correctly set up, so that message is odd; keep in mind that Jahsync is still a work in progress. However, you can check if it's actually connecting to your Google Calendar, by trying to sync it to a file output (e.g., ICAL or text). Just put the path/name of the output file in the user-defined field. Please let me know what issues you meet as you try it out, so I can investigate (and hopefully correct)!

    By Blogger Duane Cato, at 1:56 PM  

  • I'm not sure if this helps at all, but I've taken a look at the command prompt window and when I click synchronize, this is what comes up:

    java.sql.SQLException: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
    Jan 10, 2008 2:00:19 PM com.google.gdata.util.XmlParser$ElementHandler getChildH
    andler
    INFO: No child handler for timezone. Treating as an extension element.
    Jan 10, 2008 2:00:19 PM com.google.gdata.util.XmlParser$ElementHandler getChildH
    andler
    INFO: No child handler for timezone. Treating as an extension element.
    Jan 10, 2008 2:00:19 PM com.google.gdata.util.XmlParser$ElementHandler getChildH
    andler
    INFO: No child handler for timezone. Treating as an extension element.
    Jan 10, 2008 2:00:19 PM com.google.gdata.util.XmlParser$ElementHandler getChildH
    andler
    INFO: No child handler for where. Treating as an extension element.
    Jan 10, 2008 2:00:19 PM com.google.gdata.util.XmlParser$ElementHandler getChildH
    andler
    INFO: No child handler for timezone. Treating as an extension element.

    None of it really means much to me, but I thought it might help to see what the command prompt was producing.

    By Blogger lucasmcdonnell, at 2:05 PM  

  • OK, that does help a lot. Firstly, the error you see at the top "java.sql.SQLException: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified", is due to an actual missing ODBC connection for the Notes access. See the post on the site here:
    http://jahsync.blogspot.com/2007/09/jahsync-more-config-options.html
    and it gives all the instructions.
    You should be able ignore the other warning messages being generated, since JahSync seems to be seeing your Google Calendar.

    By Blogger Duane Cato, at 2:22 PM  

Post a Comment

<< Home