Re: [thredds] WMS remote dataset request

Hi Jeremy,

I'm going to start with your

THREDDS supports a variety of data access services besides WMS and WCS,
e.g., OPeNDAP. You can see the access services available for the SLOSH
dataset given in your URL below by going to the catalog page for that
dataset

http://thredds.coastal.ufl.edu:8080/thredds/catalog/SLOSH/catalog.html?dataset=SLOSH-DatasetScan/2008Ike_egl2.nc

For your remote WMS URL below, you would be much better off using the
OPeNDAP URL instead of the HTTPServer/FileServer URL. (Your server is
using the netCDF-Java library to access the remote dataset. With the
HTTP access, it is using HTTP byte-range access to read the necessary
sections of the remote netCDF file. OPeNDAP access will be much more
efficient than the HTTP byte-range access.)

The REQUEST parameter is required for all WMS requests as are SERVICE
and VERSION. Others may be required depending on the type of REQUEST.
Try appending the following to the WMS remote dataset URL:

  &service=WMS&version=1.3.0&request=GetCapabilities

So, using the OPeNDAP URL it would be

http://129.252.139.124/thredds/wms?dataset=http://thredds.coastal.ufl.edu:8080/thredds/dodsC/SLOSH/2008Ike_egl2.nc&service=WMS&version=1.3.0&request=GetCapabilities

On another note, we don't recommend allowing remote WMS services. It
opens your server up so that anyone can ask it to serve up any remote
dataset. Another option for serving remote datasets without allowing
your server to be used to serve any remote dataset is to configure your
server to provide services for particular remote datasets. For instance,
you could serve the SLOSH dataset by adding the following to your TDS
catalog configuration files:

<dataset name="SLOSH" ID="SLOSH"
         urlPath="really/cool/SLOSH/data.nc">
  <serviceName>ncdods</serviceName>
  <netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2";

location="http://thredds.coastal.ufl.edu:8080/thredds/dodsC/SLOSH/2008Ike_egl2.nc";>
    ...
  </netcdf>
</dataset>

Hope that helps.

Ethan

On 2/23/2012 8:30 PM, Jeremy Cothran wrote:
> I've just installed thredds on bitnami tomcat vmware stack 
> http://bitnami.org/stack/tomcatstack with latest versions of java&tomcat
> on ubuntu and latest promoted download version of thredds(4.2)
> 
> Enabled all the extra service options(WMS/allow=true, allowRemote=true)
> in the threddsConfig.xml file for WMS,etc and they work fine on local
> files, but when I try to run WMS on a remote file like below
> 
> http://129.252.139.124/thredds/wms?dataset=http://thredds.coastal.ufl.edu:8080/thredds/fileServer/SLOSH/2008Ike_egl2.nc
> 
> 
> I get the below message where thredds thinks I'm trying to make a local
> WMS request
> 
> <ServiceExceptionReport xmlns="http://www.opengis.net/ogc"; 
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; version="1.3.0" 
> xsi:schemaLocation="http://www.opengis.net/ogc
> http://schemas.opengis.net/wms/1.3.0/exceptions_1_3_0.xsd";>
> <ServiceException>Must provide a value for parameter
> REQUEST</ServiceException>
> </ServiceExceptionReport>
> 
> Also does thredds support remote dataset services other than WMS and WCS
> ?   Most of the examples and servers I've seen are serving local
> datasets, how would one search for thredds catalogs with remotely
> serviced datasets and what are the issues or limitations with that type
> of centralized thredds server(reservicing just HTTP remotely accessible
> CF-compliant netCDF files) approach? 
> 
> Thanks
> Jeremy