[英]java.lang.ClassCastException: class com.sun.org.apache.xerces.internal.dom.ElementNSImpl cannot be cast to class
[英]Object of type ElementNSImpl coming as com.sun.org.apache.xerces.internal.dom.ElementNSImpl
因此,我在JDK1.8.0_161環境中部署的WS-Trust服務器期望的請求將包含org.apache.xerces.dom.ElementNSImpl
類型的xml節點,但是當請求到達時,這些節點的類型為com.sun.org.apache.xerces.internal.dom.ElementNSImpl
,這不是讓我不從請求讀取數據。 我正在使用xerces:xercesImpl:2.11.0
庫,但想知道JDK是否搞亂了服務器端的請求解析。 當前,我僅看到包含com.sun.org.apache.xerces.internal.dom.ElementNSImpl
rt.jar
。 我想念什么? 有沒有人看到這個錯誤?
我通過使用Element
作為接口而不是使用實現ElementNSImpl
解決了這個問題。 這將使實現環境獨立。
所以代碼看起來像這樣
if(object instanceof org.w3c.dom.Element)
代替
if(object instanceof ElementNSImpl)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.