2012-03-04 165 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用於名稱空間感知。