Yes, I did that also. And the coordinate reference system is seen in the 
SRS-list in geoserver. So that should be OK. 
But to be more specific the error output says: "Unable to find a CRS for the 
provided variable: lon"

The header of the Netcdf file is as follows:


netcdf stockholm_110_historic_crun-monthly_mean {
dimensions:
        x = 110 ;
        y = 110 ;
        time = UNLIMITED ; // (60 currently)
        bnds = 2 ;
variables:
        float lon(y, x) ;
                lon:standard_name = "longitude" ;
                lon:long_name = "longitude" ;
                lon:units = "degrees_east" ;
                lon:_CoordinateAxisType = "Lon" ;
                lon:grid_mapping = "projection" ;
        float lat(y, x) ;
                lat:standard_name = "latitude" ;
                lat:long_name = "latitude" ;
                lat:units = "degrees_north" ;
                lat:_CoordinateAxisType = "Lat" ;
                lat:grid_mapping = "projection" ;
        float x(x) ;
                x:standard_name = "projection_x_coordinate" ;
                x:long_name = "x coordinate of projection" ;
                x:units = "m" ;
                x:axis = "X" ;
        float y(y) ;
                y:standard_name = "projection_y_coordinate" ;
                y:long_name = "y coordinate of projection" ;
                y:units = "m" ;
                y:axis = "Y" ;
        int projection ;
                projection:false_easting = 150000. ;
                projection:false_northing = 0. ;
                projection:grid_mapping_name = "projection" ;
                projection:latitude_of_projection_origin = 0. ;
                projection:longitude_of_central_meridian = 18. ;
                projection:proj4 = "+proj=tmerc +lat_0=0 +lon_0=18 +k=1 
+x_0=150000 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs" ;
                projection:scale_factor_at_central_meridian = 1. ;
                projection:semi_major_axis = 6378137. ;
                projection:inverse_flattening = 298.257222101 ;
                projection:spatial_ref = "PROJCS[\"SWEREF99 18 
00\",GEOGCS[\"SWEREF99\",DATUM[\"SWEREF99\",SPHEROID[\"GRS 1980\", 6378137.0, 
298.257222101, AUTHORITY[\"EPSG\",\"7019\"]],TOWGS84[0.0, 0.0, 0.0, 0\
.0, 0.0, 0.0, 0.0],AUTHORITY[\"EPSG\",\"6619\"]],PRIMEM[\"Greenwich\", 0.0, 
AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\", 
0.017453292519943295],AXIS[\"Geodetic latitude\", NORTH],AXIS[\"Geodetic 
longitude\", E\
AST],AUTHORITY[\"EPSG\",\"4619\"]],PROJECTION[\"Transverse_Mercator\", 
AUTHORITY[\"EPSG\",\"9807\"]],PARAMETER[\"central_meridian\", 
18.0],PARAMETER[\"latitude_of_origin\", 0.0],PARAMETER[\"scale_factor\", 1.0]\
,PARAMETER[\"false_easting\", 150000.0],PARAMETER[\"false_northing\", 
0.0],UNIT[\"m\", 1.0],AXIS[\"Northing\", NORTH],AXIS[\"Easting\", 
EAST],AUTHORITY[\"EPSG\",\"3011\"]]" ;
        float time(time) ;
                time:standard_name = "time" ;
                time:long_name = "time" ;
                time:bounds = "time_bnds" ;
   time:units = "hours since 2006-01-01 00:00" ;
                time:calendar = "standard" ;
                time:axis = "T" ;
        double time_bnds(time, bnds) ;
        float crun(time, y, x) ;
                crun:long_name = "runoff" ;
                crun:units = "mm h-1" ;
                crun:grid_mapping = "projection" ;
                crun:coordinates = "lat lon" ;
                crun:_FillValue = -1.e+20f ;
                crun:missing_value = -1.e+20f ;
                crun:ModelAttributes = "{\'Hydrological Model\': \'HYPE\'}" ;
                crun:DataAttributes = "{\"ECV\": \"monthly mean\", 
\"ECV_calculated_on\": \"2017-10-25\"}" ;

// global attributes:
                :history = "Wed Oct 25 16:19:58 2017: cdo monmean 
timeseries/stockholm_110_presclim_crun.nc 
ecvs/stockholm_110_presclim_crun-monthly_mean.nc\nThu Jun 29 12:33:05 2017: 
ncks -4 /data/proj/UrbanSI\
S/workspace/JR/hype2grid/Stockholm/Harmonie/timeCRUN.nc 
/data/proj/UrbanSIS/workspace/JR/hype2grid/Stockholm/Harmonie/publish/timeCRUN.nc\nThu
 Jun 29 12:32:44 2017: ncrcat /data/proj/UrbanSIS/workspace/JR/hype2\
grid/Stockholm/Harmonie/timeCRUN-2006-2007_original_resampled.nc 
/data/proj/UrbanSIS/workspace/JR/hype2grid/Stockholm/Harmonie/timeCRUN-2012-2014_original_resampled.nc
 /data/proj/UrbanSIS/workspace/JR/hype2grid\
/Stockholm/Harmonie/timeCRUN.nc" ;
                :Conventions = "CF-1.6" ;
                :contact1 = "Lena Stromback, SMHI, [email protected]" ;
                :Originating_center = "Swedish Meteorological and Hydrological 
Institute (SMHI)" ;
                :Downscaling_model = "S-HYPE2012_version_4_0_0 adapted for 
Urban SIS" ;
                :Downscaling_projection = "SWEREF-99 1800" ;
                :Downscaled_area = "Watershed based on Urban Atlas" ;
                :Forcing_boundary_conditions = "Urban SIS Harmonie Stockholm 
historic" ;
                :Topography_routing = "SVAR 
http://www.smhi.se/publikationer/svar-svenskt-vattenarkiv-1.17833"; ;
                :Land_use = "Urban Atlas 2012 
http://land.copernicus.eu/local/urban-atlas/urban-atlas-2012, CORINE Land COVER 
2000 
http://www.eea.europa.eu/data-and-maps/data/corine-land-cover-2000-clc2000-seam\
less-vector-database" ;
                :Soil_type = "SGU http://www.sgu.se/"; ;
                :Lake_information = "SVAR 
http://www.smhi.se/publikationer/svar-svenskt-vattenarkiv-1.17833"; ;
                :nco_openmp_thread_number = 1 ;
                :NCO = "4.4.4" ;
                :frequency = "mon" ;
data:

...


Kind regards,

Frank van der Stelt
Systems developer
SMHI - Swedish Meteorological and Hydrological Institute








________________________________________
Från: Alexander Petkov [[email protected]]
Skickat: den 21 augusti 2019 15:27
Till: Van Der Stelt Frank
Kopia: Marks, Constant; [email protected]
Ämne: Re: [Geoserver-users] [EXT] Can't read Netcdf with WKT attributes

Your projection probably needs a definition in one of the
user_projections/ files.

>From the Geoserver documentation:

User defined NetCDF Coordinate Reference Systems with their custom
EPSG need to be provided in
user_projections\netcdf.projections.properties file inside your data
directory (you have to create that file if missing).

I have been pasting projection definitions in
user_projections/epsg.properties for now.
Here is a link to the documentation regarding Netcdf:

https://docs.geoserver.org/stable/en/user/extensions/netcdf/netcdf.html

Alex


On 8/21/19, Van Der Stelt Frank <[email protected]> wrote:
> Hi, Thank you for you answer. It unfortunately did not work. The
> NetCDF-plugin does not seem to read the .prj file. The projection
> information is in the NetCDF file already. Probably something wrong with the
> structure of the NetCDF-file. unsure what though.
>
> Kind regards,
>
> Frank van der Stelt
> Systems developer
> SMHI - Swedish Meteorological and Hydrological Institute
> ________________________________
> Från: Marks, Constant [[email protected]]
> Skickat: den 20 augusti 2019 15:17
> Till: Van Der Stelt Frank; [email protected]
> Ämne: RE: [EXT] [Geoserver-users] Can't read Netcdf with WKT attributes
>
> I had an issue loading some geotiffs that needed an .prj file created before
> I could add them as a raster data store. Maybe you could create one for your
> netcdf file?
>
>
>
> Constant Marks
> Research Assistant | Computer Science and Engineering
> University of North Texas
> Office: Discovery Parks F216
> e: [email protected]<mailto:[email protected]>
> t: (303) 482 7292<tel:482%207292>
>
>
> -------- Original message --------
> From: Van Der Stelt Frank <[email protected]>
> Date: 8/20/19 6:52 AM (GMT-06:00)
> To: [email protected]
> Subject: [EXT] [Geoserver-users] Can't read Netcdf with WKT attributes
>
> Hi All,
>
> I'm using the Netcdf input plugin with geoserver 2.15.2. However when I try
> to read my files I get a warning "unable to connect" This because the CRS is
> not found:
>
> Caused by: java.io.IOException: java.lang.IllegalArgumentException: Unable
> to find a CRS for the provided variable: lon
>
> Before this warning another warning appears:
>
> WARNING: Unable to setup a CRS from the specified WKT:
> PROJCS['unnamed',GEOGCS['GRS 1980(IUGG,
> 1980)',DATUM['unknown',SPHEROID['GRS80',6378137,298.257222101],TOWGS84[0,0,0,0,0,0,0]],PRIMEM['Greenwich',0],UNIT['degree',0.0174532925199433]],PROJECTION['Transverse_Mercator'],PARAMETER['latitude_of_origin',0],PARAMETER['central_meridian',18],PARAMETER['scale_factor',1],PARAMETER['false_easting',150000],PARAMETER['false_northing',0],UNIT['Meter',1]]
>
> My netcdf has a variable projection which is read by the netcdf plugin
> according to the documentation:
>
> https://docs.geoserver.org/stable/en/user/extensions/netcdf/netcdf.html#wkt-attributes<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.geoserver.org%2Fstable%2Fen%2Fuser%2Fextensions%2Fnetcdf%2Fnetcdf.html%23wkt-attributes&data=02%7C01%7Cconstant.marks%40unt.edu%7Ce946b07be26740a024de08d72564d01d%7C70de199207c6480fa318a1afcba03983%7C0%7C0%7C637018987240916010&sdata=saMoWokHdHbYg8Nl4Aopsaudx9Lz%2FbGyCs7r93sVXPY%3D&reserved=0>
>
> It looks like this (ncdump):
>
>      int projection ;
>                 projection:grid_mapping_name = "transverse_mercator" ;
>                 projection:proj4 = "+proj=tmerc +lat_0=0 +lon_0=18 +k=1
> +x_0=150000 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs" ;
>                 projection:scale_factor_at_central_meridian = 1. ;
>                 projection:longitude_of_central_meridian = 18. ;
>                 projection:latitude_of_projection_origin = 0. ;
>                 projection:false_easting = 150000. ;
>                 projection:false_northing = 0. ;
>                 projection:semi_major_axis = 6378137. ;
>                 projection:inverse_flattening = 298.257222101 ;
>                 projection:spatial_ref = "PROJCS[\"unnamed\",GEOGCS[\"GRS
> 1980(IUGG,
> 1980)\",DATUM[\"unknown\",SPHEROID[\"GRS80\",6378137,298.257222101],TOWGS84[0,0,0,0,0,0,0]],PRIMEM[\"Greenwich\",0],UNIT[\"degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",18],PARAMETER[\"scale_factor\",1],PARAMETER[\"false_easting\",150000],PARAMETER[\"false_northing\",0],UNIT[\"Meter\",1]]"
> ;
>
> The WKT syntax is parsed (parseWKT in geotools) but the coordinate reference
> system is not created.
>
> Does anyone else have this problem when using the WKT-syntax in netcdf?
> Something wrong with the WKT-syntax? Any way to turn of the parsing by
> geoserver?
>
> Kind regards,
>
> Frank van der Stelt
> Systems developer
> SMHI - Swedish Meteorological and Hydrological Institute
>


_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this 
list:
- Earning your support instead of buying it, but Ian Turton: 
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: 
http://geoserver.org/comm/userlist-guidelines.html

If you want to request a feature or an improvement, also see this: 
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer


[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Reply via email to