Closed DanRamage closed 10 years ago
Hi @DanRamage, can you elaborate a bit more where you see this issue occuring? I've been able to construct an IoosSweSos
collector using that url. I'm assuming it's a transient problem with the server?
Also, your self.capabilities.find
line and _build_metadata
, I'm not sure where those lines are - they don't appear to be in the pyoos codebase.
Dave, Sorry about that, GitHub is eating the underscore characters. In the SensorObservationService_1_0_0 class, the init function is where the issue is occurring.
Further info: File sos100.py, line 56 I have:
se = self._capabilities.find(nspath_eval('ows:ExceptionReport', namespaces))
if se is not None:
raise ows.ExceptionReport(se)
This is the check that fails to catch the exception response from the XML I posted above.
Ah, this is why I am so confused, those files are in OWSLib. I can still fix them, but this bug should really be filed against OWSLib instead of pyoos.
Ahhh, my bad. I wasn't paying attention, just stepping into the code to see what was going on!
Not a problem, the layers are deep!
The check of the self._capabilities for an exception can fail and allow a GetCapabilities response with an exception on through to the _build_metadata(), where an exception is thrown.
Sample code: dataCollector = IoosSweSos(url='http://ioossos.axiomalaska.com/52n-sos-ioos-stable/sos/kvp', xml=None) This will cause the failure, the suspect code sos code is: se = self._capabilities.find(nspath_eval('ows:ExceptionReport', namespaces))
The url generated for the getcapabilities is: http://ioossos.axiomalaska.com/52n-sos-ioos-stable/sos/kvp?service=SOS&request=GetCapabilities&version=1.0.0
The returned xml is: