Commit 6839697
committed
[CSAPI] Fix exception after parsing procedure XML
When parsing the XML for a (new) procedure, BaseResourceHandler.create()
calls SmlProcessBindingSmlXml.deserialize() repeatedly until there is no
more data to be parsed.
However, the code that decides there is no more data did not actually
work. After parsing the last object, the parser would still point at the
last closing tag, so hasNext() would return true. However, the only
event that then is still available is END_OF_DOCUMENT, which is not
enough for nextTag(), which then throws.
In practice, this meant that an object to be added would be added as
expected but then an exception was raised.
Note that this has not been tested with actually adding more than one
object, since I could not figure out how to format multiple objects in
a way they would be accepted at all (simply concatenating them produces
"Illegal to have multiple roots").
This fixes #2511 parent 5a70843 commit 6839697
File tree
1 file changed
+19
-1
lines changed- sensorhub-service-consys/src/main/java/org/sensorhub/impl/service/consys/sensorml
1 file changed
+19
-1
lines changedLines changed: 19 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
77 | | - | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
78 | 96 | | |
79 | 97 | | |
80 | 98 | | |
| |||
0 commit comments