Skip to content

Commit a3517d4

Browse files
veithengregturn
authored andcommitted
SWS-1006 - Make AxiomSoapHeader compatible with Axiom 1.3
AxiomSoapHeaderElementIterator expects an Iterator<SOAPHeaderBlock> as input. However, it is also used together with getChildrenWithName, which (since it's defined by OMContainer), will actually return an Iterator<OMElement> in Axiom 1.3. Therefore it should use Iterator<? extends OMElement>.
1 parent 10de93f commit a3517d4

File tree

2 files changed

+5
-4
lines changed

2 files changed

+5
-4
lines changed

spring-ws-core/src/main/java/org/springframework/ws/soap/axiom/AxiomSoapHeader.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -114,9 +114,9 @@ protected SOAPHeader getAxiomHeader() {
114114

115115
protected class AxiomSoapHeaderElementIterator implements Iterator<SoapHeaderElement> {
116116

117-
private final Iterator<SOAPHeaderBlock> axiomIterator;
117+
private final Iterator<? extends OMElement> axiomIterator;
118118

119-
protected AxiomSoapHeaderElementIterator(Iterator<SOAPHeaderBlock> axiomIterator) {
119+
protected AxiomSoapHeaderElementIterator(Iterator<? extends OMElement> axiomIterator) {
120120
this.axiomIterator = axiomIterator;
121121
}
122122

@@ -128,7 +128,7 @@ public boolean hasNext() {
128128
@Override
129129
public SoapHeaderElement next() {
130130
try {
131-
SOAPHeaderBlock axiomHeaderBlock = axiomIterator.next();
131+
OMElement axiomHeaderBlock = axiomIterator.next();
132132
return new AxiomSoapHeaderElement(axiomHeaderBlock, getAxiomFactory());
133133
}
134134
catch (OMException ex) {

spring-ws-core/src/main/java/org/springframework/ws/soap/axiom/AxiomSoapHeaderElement.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818

1919
import javax.xml.transform.Result;
2020

21+
import org.apache.axiom.om.OMElement;
2122
import org.apache.axiom.om.OMException;
2223
import org.apache.axiom.soap.SOAPFactory;
2324
import org.apache.axiom.soap.SOAPHeaderBlock;
@@ -27,7 +28,7 @@
2728
/** Axiom-specific version of {@code org.springframework.ws.soap.SoapHeaderHeaderElement}. */
2829
class AxiomSoapHeaderElement extends AxiomSoapElement implements SoapHeaderElement {
2930

30-
public AxiomSoapHeaderElement(SOAPHeaderBlock axiomHeaderBlock, SOAPFactory axiomFactory) {
31+
public AxiomSoapHeaderElement(OMElement axiomHeaderBlock, SOAPFactory axiomFactory) {
3132
super(axiomHeaderBlock, axiomFactory);
3233
}
3334

0 commit comments

Comments
 (0)