[Commits] r2727 - in core/trunk/geoext: lib/GeoExt/data tests/lib/GeoExt/data

commits at geoext.org commits at geoext.org
Wed Jun 8 23:05:18 CEST 2011


Author: bartvde
Date: 2011-06-08 23:05:18 +0200 (Wed, 08 Jun 2011)
New Revision: 2727

Modified:
   core/trunk/geoext/lib/GeoExt/data/WMSCapabilitiesReader.js
   core/trunk/geoext/tests/lib/GeoExt/data/WMSCapabilitiesReader.html
   core/trunk/geoext/tests/lib/GeoExt/data/WMSCapabilitiesReader.js
Log:
WMSCapabilitiesReader should better deal with service exceptions, r=tschaub (closes #426)

Modified: core/trunk/geoext/lib/GeoExt/data/WMSCapabilitiesReader.js
===================================================================
--- core/trunk/geoext/lib/GeoExt/data/WMSCapabilitiesReader.js	2011-05-31 07:48:00 UTC (rev 2726)
+++ core/trunk/geoext/lib/GeoExt/data/WMSCapabilitiesReader.js	2011-06-08 21:05:18 UTC (rev 2727)
@@ -165,6 +165,9 @@
         if(typeof data === "string" || data.nodeType) {
             data = this.meta.format.read(data);
         }
+        if (!!data.error) {
+            throw new Ext.data.DataReader.Error("invalid-response", data.error);
+        }
         var version = data.version;
         var capability = data.capability || {};
         var url = capability.request && capability.request.getmap &&

Modified: core/trunk/geoext/tests/lib/GeoExt/data/WMSCapabilitiesReader.html
===================================================================
--- core/trunk/geoext/tests/lib/GeoExt/data/WMSCapabilitiesReader.html	2011-05-31 07:48:00 UTC (rev 2726)
+++ core/trunk/geoext/tests/lib/GeoExt/data/WMSCapabilitiesReader.html	2011-06-08 21:05:18 UTC (rev 2727)
@@ -31,6 +31,17 @@
                  fields.items[3].name == 'bar',
                  'field values set from configuration are correct');
         }
+
+        function test_read_exception(t) {
+            t.plan(1);
+            var reader = new GeoExt.data.WMSCapabilitiesReader({}, []);
+            try {
+                var records = reader.read({responseXML: exceptionsDoc});
+            } catch(e) {
+                t.ok(true, "Exception thrown when getting a service exception");
+            }
+        }
+
         function test_read(t) {
             t.plan(40);
 

Modified: core/trunk/geoext/tests/lib/GeoExt/data/WMSCapabilitiesReader.js
===================================================================
--- core/trunk/geoext/tests/lib/GeoExt/data/WMSCapabilitiesReader.js	2011-05-31 07:48:00 UTC (rev 2726)
+++ core/trunk/geoext/tests/lib/GeoExt/data/WMSCapabilitiesReader.js	2011-06-08 21:05:18 UTC (rev 2727)
@@ -1,3 +1,10 @@
+var exception = [];
+exception.push('<?xml version="1.0" encoding="UTF-8" standalone="no" ?>',
+'<!DOCTYPE ServiceExceptionReport SYSTEM "http://schemas.opengis.net/wms/1.1.1/WMS_exception_1_1_1.dtd">', 
+'<ServiceExceptionReport version="1.1.1"><ServiceException> Plain text message about an error. </ServiceException>', 
+'</ServiceExceptionReport>');
+var exceptionsDoc = (new OpenLayers.Format.XML()).read(exception.join(" "));
+
 var wmscaps = [];
 wmscaps.push('<?xml version="1.0" encoding="UTF-8"?>' ,
     '<!DOCTYPE WMT_MS_Capabilities SYSTEM "http://schemas.opengis.net/wms/1.1.1/WMS_MS_Capabilities.dtd">' ,
@@ -4782,4 +4789,4 @@
       '</Capability>' ,
     '</WMT_MS_Capabilities>'
 );
-var doc = (new OpenLayers.Format.XML).read(wmscaps.join(" "));
+var doc = (new OpenLayers.Format.XML()).read(wmscaps.join(" "));



More information about the Commits mailing list