< prev index next >
jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/soap/ver1_2/Body1_2Impl.java
Print this page
*** 55,83 ****
--- 55,88 ----
public Body1_2Impl(SOAPDocumentImpl ownerDoc, Element domElement) {
super(ownerDoc, domElement);
}
+ @Override
protected NameImpl getFaultName(String name) {
return NameImpl.createFault1_2Name(name, null);
}
+ @Override
protected SOAPBodyElement createBodyElement(Name name) {
return new BodyElement1_2Impl(
((SOAPDocument) getOwnerDocument()).getDocument(),
name);
}
+ @Override
protected SOAPBodyElement createBodyElement(QName name) {
return new BodyElement1_2Impl(
((SOAPDocument) getOwnerDocument()).getDocument(),
name);
}
+ @Override
protected QName getDefaultFaultCode() {
return SOAPConstants.SOAP_RECEIVER_FAULT;
}
+ @Override
public SOAPFault addFault() throws SOAPException {
if (hasAnyChildElement()) {
log.severe("SAAJ0402.ver1_2.only.fault.allowed.in.body");
throw new SOAPExceptionImpl(
"No other element except Fault allowed in SOAPBody");
*** 87,187 ****
--- 92,203 ----
/*
* Override setEncodingStyle of ElementImpl to restrict adding encodingStyle
* attribute to SOAP Body (SOAP 1.2 spec, part 1, section 5.1.1)
*/
+ @Override
public void setEncodingStyle(String encodingStyle) throws SOAPException {
log.severe("SAAJ0401.ver1_2.no.encodingstyle.in.body");
throw new SOAPExceptionImpl("encodingStyle attribute cannot appear on Body");
}
/*
* Override addAttribute of ElementImpl to restrict adding encodingStyle
* attribute to SOAP Body (SOAP 1.2 spec, part 1, section 5.1.1)
*/
+ @Override
public SOAPElement addAttribute(Name name, String value)
throws SOAPException {
if (name.getLocalName().equals("encodingStyle")
&& name.getURI().equals(NameImpl.SOAP12_NAMESPACE)) {
setEncodingStyle(value);
}
return super.addAttribute(name, value);
}
+ @Override
public SOAPElement addAttribute(QName name, String value)
throws SOAPException {
if (name.getLocalPart().equals("encodingStyle")
&& name.getNamespaceURI().equals(NameImpl.SOAP12_NAMESPACE)) {
setEncodingStyle(value);
}
return super.addAttribute(name, value);
}
+ @Override
protected boolean isFault(SOAPElement child) {
return (child.getElementName().getURI().equals(
SOAPConstants.URI_NS_SOAP_1_2_ENVELOPE) &&
child.getElementName().getLocalName().equals(
"Fault"));
}
+ @Override
protected SOAPFault createFaultElement() {
return new Fault1_2Impl(
((SOAPDocument) getOwnerDocument()).getDocument(), getPrefix());
}
/*
* section 5.4 of SOAP1.2 candidate recommendation says that a
* SOAP message MUST contain a single Fault element as the only
* child element of the SOAP Body.
*/
+ @Override
public SOAPBodyElement addBodyElement(Name name) throws SOAPException {
if (hasFault()) {
log.severe("SAAJ0402.ver1_2.only.fault.allowed.in.body");
throw new SOAPExceptionImpl(
"No other element except Fault allowed in SOAPBody");
}
return super.addBodyElement(name);
}
+ @Override
public SOAPBodyElement addBodyElement(QName name) throws SOAPException {
if (hasFault()) {
log.severe("SAAJ0402.ver1_2.only.fault.allowed.in.body");
throw new SOAPExceptionImpl(
"No other element except Fault allowed in SOAPBody");
}
return super.addBodyElement(name);
}
+ @Override
protected SOAPElement addElement(Name name) throws SOAPException {
if (hasFault()) {
log.severe("SAAJ0402.ver1_2.only.fault.allowed.in.body");
throw new SOAPExceptionImpl(
"No other element except Fault allowed in SOAPBody");
}
return super.addElement(name);
}
+ @Override
protected SOAPElement addElement(QName name) throws SOAPException {
if (hasFault()) {
log.severe("SAAJ0402.ver1_2.only.fault.allowed.in.body");
throw new SOAPExceptionImpl(
"No other element except Fault allowed in SOAPBody");
}
return super.addElement(name);
}
+ @Override
public SOAPElement addChildElement(Name name) throws SOAPException {
if (hasFault()) {
log.severe("SAAJ0402.ver1_2.only.fault.allowed.in.body");
throw new SOAPExceptionImpl(
"No other element except Fault allowed in SOAPBody");
}
return super.addChildElement(name);
}
+ @Override
public SOAPElement addChildElement(QName name) throws SOAPException {
if (hasFault()) {
log.severe("SAAJ0402.ver1_2.only.fault.allowed.in.body");
throw new SOAPExceptionImpl(
"No other element except Fault allowed in SOAPBody");
< prev index next >