Hello,

I created a GIS application using the ESRI soap Services and stumbled a bit. 
From a layer I get the WKT per soap request for the reference system and I 
would like to use the wkt to transform into a corrdinate reference system the 
user have chosen.

But I got a ParseExcpetion for the AUTHORITY Parameter:

java.text.ParseException: Error in "AUTHORITY": Parameter "code" is missing.
        at org.geotools.referencing.wkt.Element.pullString(Element.java:419)
        at org.geotools.referencing.wkt.Parser.parseAuthority(Parser.java:338)
        at org.geotools.referencing.wkt.Parser.parseProjCS(Parser.java:883)
        at 
org.geotools.referencing.wkt.Parser.parseCoordinateReferenceSystem(Parser.java:222)
        at 
org.geotools.referencing.wkt.Parser.parseCoordinateReferenceSystem(Parser.java:201)

within the wkt-string the AUTHORITY section looks like : 

    AUTHORITY["ESRI",102018] 

I read the document 
(http://geoapi.sourceforge.net/snapshot/javadoc/org/opengis/referencing/doc-files/WKT.html)
 and dived into the Parser code too. I guess the code value should be a string.

Did somebody else run into such problems? And what's the best way to handle 
these WKT's? Is it required to call setAuthority before 
parseCoordinateReferenceSystem? See the attached file for the test that fails.

Thanks for help!

Regards, 

Frank
import org.geotools.referencing.wkt.Parser;
import org.junit.Test;

public class WKTParserTests
{

    private String ORG_ESRI_WKT_FROM_SOAP = "PROJCS[\"North_Pole_Stereographic\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Stereographic\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",90.0],UNIT[\"Meter\",1.0],AUTHORITY[\"ESRI\",102018]]";


    /**
     * should run but fails with an ParseException
     * @throws Exception
     */
    @Test
    public void testParserFailed() throws Exception
    {

        Parser parser = new Parser();
        parser.parseCoordinateReferenceSystem(ORG_ESRI_WKT_FROM_SOAP);

    }
}
------------------------------------------------------------------------------
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to