Author: dkulp
Date: Fri Aug 31 08:50:55 2007
New Revision: 571500
URL: http://svn.apache.org/viewvc?rev=571500&view=rev
Log:
Fix looking up parts that point to elements that may be in different namespaces.
Fix issue with Faults that have an empty details element on the wire causing an
NPE
Modified:
incubator/cxf/trunk/api/src/main/java/org/apache/cxf/service/model/AbstractMessageContainer.java
incubator/cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/ClientFaultConverter.java
Modified:
incubator/cxf/trunk/api/src/main/java/org/apache/cxf/service/model/AbstractMessageContainer.java
URL:
http://svn.apache.org/viewvc/incubator/cxf/trunk/api/src/main/java/org/apache/cxf/service/model/AbstractMessageContainer.java?rev=571500&r1=571499&r2=571500&view=diff
==============================================================================
---
incubator/cxf/trunk/api/src/main/java/org/apache/cxf/service/model/AbstractMessageContainer.java
(original)
+++
incubator/cxf/trunk/api/src/main/java/org/apache/cxf/service/model/AbstractMessageContainer.java
Fri Aug 31 08:50:55 2007
@@ -130,7 +130,15 @@
* @return the message part; or <code>null</code> if not found.
*/
public MessagePartInfo getMessagePart(QName name) {
- return messageParts.get(name);
+ MessagePartInfo mpi = messageParts.get(name);
+ if (mpi == null) {
+ for (MessagePartInfo mpi2 : messageParts.values()) {
+ if (name.equals(mpi2.getConcreteName())) {
+ return mpi2;
+ }
+ }
+ }
+ return mpi;
}
/**
Modified:
incubator/cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/ClientFaultConverter.java
URL:
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/ClientFaultConverter.java?rev=571500&r1=571499&r2=571500&view=diff
==============================================================================
---
incubator/cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/ClientFaultConverter.java
(original)
+++
incubator/cxf/trunk/rt/core/src/main/java/org/apache/cxf/interceptor/ClientFaultConverter.java
Fri Aug 31 08:50:55 2007
@@ -72,6 +72,9 @@
protected void processFaultDetail(Fault fault, Message msg) {
Element exDetail = (Element) DOMUtils.getChild(fault.getDetail(),
Node.ELEMENT_NODE);
+ if (exDetail == null) {
+ return;
+ }
QName qname = new QName(exDetail.getNamespaceURI(),
exDetail.getLocalName());
FaultInfo faultWanted = null;
MessagePartInfo part = null;