作者u9654802 (別人笑我太瘋癲)
看板java
標題[問題] Java(JSP) + dom4j
時間Fri May 22 22:10:55 2009
我寫了一個JSP Page
裡面要用httpconnector跟另外一個Service溝通~
這部份沒問題~
但是由於溝通的封包內容是XML,所以要做XML Parse的動作
所以我在JSP那邊用了dom4j...
但是在
SAXReader reader = new SAXReader();
Document document = reader.read(new InputStreamReader(is));
在上面那行就出現了exception (其中那個is為httpresponse回來的xml(SOAP)格式的封包)
出現的exception如下...
org.dom4j.DocumentException: Error on line 1 of document : The prefix
"SOAP-ENV" for element "SOAP-ENV:Envelope" is not bound. Nested exception:
The prefix "SOAP-ENV" for element "SOAP-ENV:Envelope" is not bound.
我懷疑可能是namespace的問題或者是其XML or SOAP的封包格式不是很標準...
但是由於那個XML是httpresponse直接收下來的又不能改格式...
我文也爬了~Google也咕過了~還是不知道怎麼解~所以上來請問各為大大了~T_T
謝謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.173.4.134
推 Maisky:我猜是少了個namespace的宣告 05/23 00:18
→ Maisky:/" 如果不能更改傳進的response,就把inputstream讀成string 05/23 00:22
→ Maisky:再把namespace加回去,再丟給parser. 05/23 00:24
→ u9654802:hmm~多謝樓上大大~我用ethereal看是有namespace的~@@" 05/23 12:09
→ u9654802:真的很怪...@@" 05/23 12:11
→ u9654802:那換個方式問好了~有沒有辦法讓dom4j parse不標準的XML? 05/23 15:26