1 /* 2 * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 package javax.xml.soap; 27 28 import javax.xml.namespace.QName; 29 30 /** 31 * The definition of constants pertaining to the SOAP protocol. 32 * 33 * @since 1.6 34 */ 35 public interface SOAPConstants { 36 /** 37 * Used to create <code>MessageFactory</code> instances that create 38 * <code>SOAPMessages</code> whose concrete type is based on the 39 * <code>Content-Type</code> MIME header passed to the 40 * <code>createMessage</code> method. If no <code>Content-Type</code> 41 * header is passed then the <code>createMessage</code> may throw an 42 * <code>IllegalArgumentException</code> or, in the case of the no 43 * argument version of <code>createMessage</code>, an 44 * <code>UnsupportedOperationException</code>. 45 * 46 * @since 1.6, SAAJ 1.3 47 */ 48 public static final String DYNAMIC_SOAP_PROTOCOL = "Dynamic Protocol"; 49 50 /** 51 * Used to create <code>MessageFactory</code> instances that create 52 * <code>SOAPMessages</code> whose behavior supports the SOAP 1.1 specification. 53 * 54 * @since 1.6, SAAJ 1.3 55 */ 56 public static final String SOAP_1_1_PROTOCOL = "SOAP 1.1 Protocol"; 57 58 /** 59 * Used to create <code>MessageFactory</code> instances that create 60 * <code>SOAPMessages</code> whose behavior supports the SOAP 1.2 61 * specification 62 * 63 * @since 1.6, SAAJ 1.3 64 */ 65 public static final String SOAP_1_2_PROTOCOL = "SOAP 1.2 Protocol"; 66 67 /** 68 * The default protocol: SOAP 1.1 for backwards compatibility. 69 * 70 * @since 1.6, SAAJ 1.3 71 */ 72 public static final String DEFAULT_SOAP_PROTOCOL = SOAP_1_1_PROTOCOL; 73 74 /** 75 * The namespace identifier for the SOAP 1.1 envelope. 76 * @since 1.6, SAAJ 1.3 77 */ 78 public static final String 79 URI_NS_SOAP_1_1_ENVELOPE = "http://schemas.xmlsoap.org/soap/envelope/"; 80 /** 81 * The namespace identifier for the SOAP 1.2 envelope. 82 * @since 1.6, SAAJ 1.3 83 */ 84 public static final String 85 URI_NS_SOAP_1_2_ENVELOPE = "http://www.w3.org/2003/05/soap-envelope"; 86 87 /** 88 * The namespace identifier for the SOAP 1.1 envelope, All SOAPElements in this 89 * namespace are defined by the SOAP 1.1 specification. 90 */ 91 public static final String 92 URI_NS_SOAP_ENVELOPE = URI_NS_SOAP_1_1_ENVELOPE; 93 94 /** 95 * The namespace identifier for the SOAP 1.1 encoding. 96 * An attribute named <code>encodingStyle</code> in the 97 * <code>URI_NS_SOAP_ENVELOPE</code> namespace and set to the value 98 * <code>URI_NS_SOAP_ENCODING</code> can be added to an element to indicate 99 * that it is encoded using the rules in section 5 of the SOAP 1.1 100 * specification. 101 */ 102 public static final String 103 URI_NS_SOAP_ENCODING = "http://schemas.xmlsoap.org/soap/encoding/"; 104 105 /** 106 * The namespace identifier for the SOAP 1.2 encoding. 107 * @since 1.6, SAAJ 1.3 108 */ 109 public static final String 110 URI_NS_SOAP_1_2_ENCODING = "http://www.w3.org/2003/05/soap-encoding"; 111 112 /** 113 * The media type of the <code>Content-Type</code> MIME header in SOAP 1.1. 114 * @since 1.6, SAAJ 1.3 115 */ 116 public static final String 117 SOAP_1_1_CONTENT_TYPE = "text/xml"; 118 119 /** 120 * The media type of the <code>Content-Type</code> MIME header in SOAP 1.2. 121 * @since 1.6, SAAJ 1.3 122 */ 123 public static final String 124 SOAP_1_2_CONTENT_TYPE = "application/soap+xml"; 125 126 /** 127 * The URI identifying the next application processing a SOAP request as the intended 128 * actor for a SOAP 1.1 header entry (see section 4.2.2 of the SOAP 1.1 specification). 129 * <p> 130 * This value can be passed to 131 * {@link SOAPHeader#examineMustUnderstandHeaderElements(String)}, 132 * {@link SOAPHeader#examineHeaderElements(String)} and 133 * {@link SOAPHeader#extractHeaderElements(String)} 134 */ 135 public static final String 136 URI_SOAP_ACTOR_NEXT = "http://schemas.xmlsoap.org/soap/actor/next"; 137 138 /** 139 * The URI identifying the next application processing a SOAP request as the intended 140 * role for a SOAP 1.2 header entry (see section 2.2 of part 1 of the SOAP 1.2 141 * specification). 142 * @since 1.6, SAAJ 1.3 143 */ 144 public static final String 145 URI_SOAP_1_2_ROLE_NEXT = URI_NS_SOAP_1_2_ENVELOPE + "/role/next"; 146 147 /** 148 * The URI specifying the role None in SOAP 1.2. 149 * @since 1.6, SAAJ 1.3 150 */ 151 public static final String 152 URI_SOAP_1_2_ROLE_NONE = URI_NS_SOAP_1_2_ENVELOPE + "/role/none"; 153 154 /** 155 * The URI identifying the ultimate receiver of the SOAP 1.2 message. 156 * @since 1.6, SAAJ 1.3 157 */ 158 public static final String 159 URI_SOAP_1_2_ROLE_ULTIMATE_RECEIVER = 160 URI_NS_SOAP_1_2_ENVELOPE + "/role/ultimateReceiver"; 161 162 /** 163 * The default namespace prefix for http://www.w3.org/2003/05/soap-envelope 164 * @since 1.6, SAAJ 1.3 165 */ 166 public static final String SOAP_ENV_PREFIX = "env"; 167 168 /** 169 * SOAP 1.2 VersionMismatch Fault 170 * @since 1.6, SAAJ 1.3 171 */ 172 public static final QName SOAP_VERSIONMISMATCH_FAULT = 173 new QName(URI_NS_SOAP_1_2_ENVELOPE, "VersionMismatch", SOAP_ENV_PREFIX); 174 175 /** 176 * SOAP 1.2 MustUnderstand Fault 177 * @since 1.6, SAAJ 1.3 178 */ 179 public static final QName SOAP_MUSTUNDERSTAND_FAULT = 180 new QName(URI_NS_SOAP_1_2_ENVELOPE, "MustUnderstand", SOAP_ENV_PREFIX); 181 182 /** 183 * SOAP 1.2 DataEncodingUnknown Fault 184 * @since 1.6, SAAJ 1.3 185 */ 186 public static final QName SOAP_DATAENCODINGUNKNOWN_FAULT = 187 new QName(URI_NS_SOAP_1_2_ENVELOPE, "DataEncodingUnknown", SOAP_ENV_PREFIX); 188 189 /** 190 * SOAP 1.2 Sender Fault 191 * @since 1.6, SAAJ 1.3 192 */ 193 public static final QName SOAP_SENDER_FAULT = 194 new QName(URI_NS_SOAP_1_2_ENVELOPE, "Sender", SOAP_ENV_PREFIX); 195 196 /** 197 * SOAP 1.2 Receiver Fault 198 * @since 1.6, SAAJ 1.3 199 */ 200 public static final QName SOAP_RECEIVER_FAULT = 201 new QName(URI_NS_SOAP_1_2_ENVELOPE, "Receiver", SOAP_ENV_PREFIX); 202 203 }