Reading-eScience-Centre / edal-java

Environmental Data Abstraction Layer libraries
Other
39 stars 30 forks source link

failed to visualize cmip5 netcdf files with ncWMS 2.2.1 #60

Closed cehbrecht closed 8 years ago

cehbrecht commented 8 years ago

i've updated ncWMS from 2.0.4 to 2.2.1. Now i get a timestamp problem for cmip5 and cordex netcdf files from the ESGF archive.

2016-07-26` 14:30:42 WARN  WmsServlet:2477 - Wms Exception caught: "The string 2005-12-16T12%3A00%3A00.000Z does not represent an ISO8601 datetime" from:uk.ac.rdg.resc.edal.util.TimeUtils:127

In the 1.x version of ncwms there was a problem with the calendar used in cmip5 and cordex (or something like that).

guygriffiths commented 8 years ago

Can you point me towards a data file I can download to reproduce this error?

cehbrecht commented 8 years ago

you can get cmip5 data from esgf:

https://esgf-data.dkrz.de/search/cmip5-dkrz/

But you need to sign-up for an account and register to the non-commercial group.

I've also some modified testdata on github:

https://github.com/bird-house/flyingpigeon/tree/master/flyingpigeon/tests/testdata

guygriffiths commented 8 years ago

I tried with all of the modified test data, but it works fine at every time step in Godiva3. Can you confirm that you also see this error with your test data? And if so, can you describe how you're getting it (e.g. though Godiva3 by clicking on the variable, by using a specific WMS request string, etc.)?

cehbrecht commented 8 years ago

i'm using the ncwms 2.2.1 war file with tomcat 7. I've added one of my test files (tasmax_Amon_MPI-ESM-MR_rcp45_r1i1p1_200601-200612.nc) both as dynamic and static dataset. I'm using godiva3 to see the map. The time selection and variable name are correctly filled but i still get the Requested time has an invalid format exception. It works with 2.0.4 but no version above ...

In firebug i see the following request:

http://localhost:8080/ncWMS2/wms?request=GetMetadata&item=layerDetails&layerName=test/tasmax&time=2006-12-16T12%253A00%253A00.000Z

which fails then with the response:

 <ServiceException>
    Requested time has an invalid format
</ServiceException>
guygriffiths commented 8 years ago

OK, I have tried with a fresh installation of Tomcat 7 and the 2.2.1 war file, but I still can't reproduce this - I get a similar request string but the time is correctly formatted. To get that request you must already be viewing a variable before you select that dataset - otherwise the time field is omitted. What dataset are you viewing before clicking on the "tasmax" variable (and do you have a copy of it)?

cehbrecht commented 8 years ago

I don't know what to say ... its working now :) Haven't changed anything ... just made a fresh install ... but i did that before as well.

The default base layer "Natural Earth WMS" also shows up which didn't work before.

Maybe a problem with external resources?

What dataset are you viewing before clicking on the "tasmax" variable (and do you have a copy of it)?

I open the godiva with a direct link on a dynamic dataset from another app, for example:

http://localhost:8080/ncWMS2/Godiva3.html?dataset=outputs/tasmax_Amon_MPI-ESM-MR_rcp45_r1i1p1_200601-200612.nc

guygriffiths commented 8 years ago

OK, I'll close this one for now, but if it happens again, let me know and I'll look into it further :)