Java Bookmark-Synchronizer
One of the projects I'm currently working on is a Java Bookmark-Synchronizer based on Java (v1.4.x). I started this project in January 2006 but it got delayed one year. Because I've got several computers with more then one Operating System (OS) installed (usually eComStation (eCS), WindowsXP and Debian Linux) a solution is very important for me. Now try to have the same bookmarks available on each of those computers and on each OS. You will fail - even if you use the same browser (e.g. Firefox v1.5.x.y or Firefox 2.x) on each of them.
Why does it fail? Well the profile (stored on a USB-Key) may not be readable on each installed Operating System or you simple don't have the same version of the browser installed and the installed Extensions don't work with the other version of Firefox and so on. If you don't use the same browser on the different Operating Systems it will get worse.
To get around these problems you have to have one place you can reach
from every OS and you need to define your own bookmark
standard that allows to store the superset of elements each browser
supports. It's also possible to use the XML Bookmark
Extension Language (XBEL).
The problem I have with it (beside it's XML):
Most appplications using XBEL only store basic information (title,
description, URL).
It XBEL allows to store more information but most applications are limited
to the basic fields and additional information like favicon
(Base64 encoded) and dates (added, modified, visited) are not supported.
I wanted the class to be reusable, so the basic information had to be defined in my own bookmark data structure. From there I could plug it into other Java based applications by using some Glue Code.
I've already created several Java classes that allow me to store all
bookmark information I don't want to lose. I've also written parser
to read the Netscape (used in Netscape, Firefox, Mozilla-Suite,
Seamonkey,...) and the Opera bookmark format.
Also finished is the export of bookmarks stored in Open-Xchange in the Netscape- (Mozilla, Firefox, Seamonkey) and Opera v2 bookmark format. You can even choose which subfolder you want to export.
Currently I'm working to extend the Groupware System Open-Xchange (OX)
to save the bookmark data. Because the Open-Xchange code is not documented
at all I'm currently stuck at the actual synchronization. The changed
data has to be stored in the database used by Open-Xchange.
Uploading the bookmarks works very well and is very fast! The code will
be available after I finally have some days in a row to
understand the OX-Code to get the bookmarks stored.
JBMSync bookmarks.java and JBMSync-Classes
It's a replacement (GPL) of the Open-Xchange WebDAV bookmarks class with
Atom v1.0 support some RSS 2.0 addons and extended query functions.
A detailed description can be found in the readme.txt provided with
the archive or in the News
section (2007-04-17)!
The current JBMSync Sourcecode is also included (the XBEL Export is missing)!
Replaces: ./src/com/openexchange/webdav/bookmarks.java
New.....: ./src/de/juergenulbts/jbookmarksync/*
Download bookmarks.java replacement class (Open-Xchange v0.8.2) and JBMSync components [2007-04-17]
ZIP package (75 kB)
Download
Download the 91-pages long JBMSync developer documentation (English; created with JavaDoc) [2007-06-13]
PDF package (377 kB)
Download
Download the B.CompSc. Thesis (German: Individual Project) about: [2007-06-13]
"Synchronisation of bookmarks with the Groupware-System Open-Xchange™"
Written in GERMAN!
PDF package (1271 kB)
Download