Motivation: |
Use of an EPSG Authority implementation in a Java EE environment |
|
|---|---|---|
Contact: |
||
Tracker: |
http://jira.codehaus.org/browse/GEOT-1219 | |
Tagline: |
|
This page represents the current plan; for discussion please check the tracker link above.
Use of an EPSG Authority implementation in a Java EE container.
Initial research completed J2EE and Connection Pools, this first proposal only touches on the use of data source with respect to EPSG Authority.
|
|
|
no progress |
|
done |
|
impeded |
|
lack mandate/funds/time |
|
volunteer needed |
|---|
A target release is also provided for each milestone.
Milestone 1 |
2.4-M2 |
|
|---|---|---|
|
Initial Implementation for oracle-epsg |
|
|
Testing and review |
|
Milestone 2 |
2.5-M1 |
|
|
test and release |
|
|
update documentation |
|
Milestone 3 |
2.5.0 |
|
|
|
verify user documentation |
|
|
include in release |
Before this change GeoTools relies on a javadoc comment - to wit: use of the the hard coded JNDI look up String "epsg/authority".
This change involves the introduction of a new Hint to control the lookup string used.
class Hints {
/**
* The {@link org.opengis.referencing.crs.CRSAuthorityFactory} instance to use.
*
* @see org.geotools.referencing.FactoryFinder#getCRSAuthorityFactory
*/
public static final Key CRS_DATASOURCE = new Key(
"org.opengis.referencing.cra.datasource");
...
}
|
This functionality was based on a documented behaviour - previously the JDBC EPSG Authority implementations would be connected based on:
public CoordinateReferenceSystem acquireCRS(){
return CRS.decode( "EPSG:4326", hints );
}
|
For the above to work only a single epsg authority plugin is allowed to be on the class path, for example "epsg-postgres".
We expect the following to work regardless of which epsg authority plugins are included on the classpath.
/**
* Please note hints will need to be used every time.
*/
public CoordinateReferenceSystem acquireCRS(){
Hints hints = new Hints();
hints.add( HINTS.CRS_DATASOURCE, "epsg/authority" );
return CRS.decode( "EPSG:4326", hints );
}
|
It appears that we should control the "default" (ie when Hints is null) by use of a System property.
Website:
User Guide:
Issue Tracker: