Hi everybody,

I tried to understand differences between the 4 versions of 
postgresql/postgis drivers I found at different places.
Here are the results of my investigations
Comments are welcome.

*Different versions I found
*1 - a plugin (postgis_1_0_0.jar) from 2005 written by Markus Schaber 
and bundled with OpenJUMP distribution. As far as I could see, the 
plugin is bundled but unused in the distribution (nothing happened, even 
after I have had the jar file to the classpath)
2 - a plugin from uwe dalluege distributed as the "PostGIS PlugIn" on 
OpenJUMP sourceforge site (2006-11-19). May be based on the previous one.
3 - datastore api from vividsolutions added to the code on december of 
2005, but not activated in the original jump version
4 - paolo rizzi's SIS plugin for postgresql/postgis and oracle database 
access, based on the framework developped in 3

*Disimilarities between versions*
*1 - postgis plugin* 1.0.0
- Don't know how to make this postgis_1_0_0.jar work. If it has no use, 
it should be removed from the distribution
*2 - Uwe's postgis plugin*
- the plugin is the only one able to create/update the database. Other 
ones are read only
- it works well with postgresql 8.2 and postgis 1.1+
- the plugin load data from the load dataset menu and does not use the 
nice interface from vividsolution in the layer menu (see 3)
- the plugin load data (in-memory) and does not offer a select option or 
a feature-on-demand option
*3 - Vividsolutions's framework*
- Vividsolutions's datastore api has a nice design and a nice user 
interface, but at the moment, it is read-only.
- the interface make it possible to cache features (in-memory ?) or not 
(feature on demand ?)
- I could not read a posgis table with Vividsolution's api and OpenJUMP 
until I made two changes in the code :
a) in PostgisValueConverterFactory, if dbTypeName is geometry, I return 
WKB mapper instead of WKT (since postgis 1.0, default storage format in 
postgis is binary)
b) If there are more than one geometry type in the resultset, the second 
is read as AttributeType.STRING instead of throwing an exception (in a 
select * statement, I can get more than one geometry from my database).
*4 - SIS PlugIn from Paolo Rizzi
*- The plugin is based on Vividsolutions's api
- It is a read-only driver for postgis and oracle tables
- The plugin includes many dependencies (3 Mo). I don't know why it 
needs all this stuff because there is not much more features in this 
plugin than in vivid's api (maybe hidden classes for futur work).
- I found postgis_1_1_0 in dependencies but I don't know if it is 
related to 1- and if it is used
- I get geometry, int, double and date values, but I cannot get string 
values when loading a table or a selection !

PS : I know there is also a hard work done by projet-SIGLE team to write 
a generic data/database driver called GDBMS...

Hope that helps,

Michaël

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to