2012-03-04 164 views
2

我有XMLSlurper无法解析的以下XML。我认为XMLSlurper认为xxx:yyy是某种名称空间。有没有机会改变这种行为?没有命名空间的Groovy XMLSlurper命名空间错误

<node> 
    <application app_name="export" 
       app_data="nolocal:api_on_answer=sched_hangup +3600 40887ffe-65de-11e1-89da-e9feb0a98acf alloted_timeout" 
       app_stamp="1330854103808996"> 
    </application> 
</node> 

我无法更改XML。 错误,我得到:

The prefix "nolocal" for element "nolocal:api_on_answer" is not bound.. Stacktrace follows: 
Message: The prefix "nolocal" for element "nolocal:api_on_answer" is not bound. 
Line | Method 
->> 48 | doCall in sipsy.admin.WebapiController$_closure4$$ENQh9JnT 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
| 1110 | runWorker in java.util.concurrent.ThreadPoolExecutor 
| 603 | run . . . in java.util.concurrent.ThreadPoolExecutor$Worker 
^ 722 | run  in java.lang.Thread 
+0

我无法使用Groovy 1.8.5重现此问题。你使用什么版本? – Antoine 2012-03-04 17:17:32

+0

Sry,我的错(像往常一样:D)。我使用了错误的数据。有2个xml字符串,我发布的和一个类似的字符串,带有标签。耻辱对我... 谢谢你的时间:) – thelittlebug 2012-03-04 17:57:46

+0

只是要完成:如果你需要解析不是100%有效的XML,你可以传递2布尔值到XmlSlurper(a,b)的构造函数。 A用于验证,b用于名称空间感知。 – thelittlebug 2012-03-05 08:16:51

回答

1

对不起,我的错(像往常一样:d)。我使用了错误的数据。有2个xml字符串,我发布的和一个类似的字符串,带有一个标签。耻辱对我来说......谢谢你的时间:)

只是要完成:如果你需要解析不是100%有效的XML,你可以传递2布尔值到XmlSlurper(a,b)的构造函数。 A用于验证,b用于名称空间感知。