public abstract class SOAPMessage extends Object
A SOAPMessage объект состоит из части SOAP и дополнительно одной или более присоединяемых частей. Часть SOAP для a SOAPMessage объект является a SOAPPart объект, который содержит информацию, используемую для маршрутизации сообщения и идентификации, и который может содержать специализированный контент. Все данные в Части SOAP сообщения должны быть в формате XML.
Новое SOAPMessage объект содержит следующий по умолчанию:
SOAPPart объект SOAPEnvelope объект SOAPBody объект SOAPHeader объект SOAPMessage.getSOAPPart(). SOAPEnvelope объект получается от SOAPPart объект, и SOAPEnvelope объект используется, чтобы получить SOAPBody и SOAPHeader объекты.
SOAPPart sp = message.getSOAPPart();
SOAPEnvelope se = sp.getEnvelope();
SOAPBody sb = se.getBody();
SOAPHeader sh = se.getHeader();
В дополнение к обязательному SOAPPart объект, a SOAPMessage объект может содержать нуль или больше AttachmentPart объекты, каждый из которых содержит специализированные данные. SOAPMessage интерфейс обеспечивает методы для того, чтобы они создали AttachmentPart объекты и также для того, чтобы добавить их к a SOAPMessage объект. Сторона, которая получила a SOAPMessage объект может исследовать свое содержание, получая отдельные присоединяемые части.
В отличие от остальной части сообщения SOAP, присоединение не обязано быть в формате XML и может поэтому быть чем-либо от простого текста до файла изображения. Следовательно, любой контент сообщения, который не находится в формате XML, должен быть в AttachmentPart объект.
A MessageFactory объект может создать SOAPMessage объекты с поведением, которое специализируется к определенной реализации или приложению SAAJ. Например, a MessageFactory объект может произвести SOAPMessage объекты, которые соответствуют определенному Профилю, такому как ebXML. В этом случае a MessageFactory объект мог бы произвести SOAPMessage объекты, которые инициализируются с ebXML заголовками.
Чтобы гарантировать обратную исходную совместимость, методы, которые добавляются к этому class после того, как версия 1.1 спецификации SAAJ является всем бетоном вместо краткого обзора и у них всех есть реализации по умолчанию. Если не указано иное, в JavaDocs для тех методов реализации по умолчанию просто бросают UnsupportedOperationException и код реализации SAAJ должен переопределить их с методами, которые обеспечивают указанное поведение. У клиентского кода наследства нет этого ограничения, однако, пока нет никакой претензии, внесенной, что это соответствует некоторой более поздней версии спецификации, чем это было первоначально записано для. Наследство class, который расширяет class SOAPMessage, может быть скомпилировано и/или выполнено против последующих версий API SAAJ без модификации. Если такой class был правильно реализован тогда, он будет продолжать вести себя правильно относительно версии спецификации, против которой он был записан.
MessageFactory, AttachmentPart| Модификатор и Тип | Поле и Описание |
|---|---|
static String |
CHARACTER_SET_ENCODING
Определяет кодирование символьного типа для сообщения SOAP.
|
static String |
WRITE_XML_DECLARATION
Определяет, будет ли сообщение SOAP содержать объявление XML, когда оно будет отправлено.
|
| Конструктор и Описание |
|---|
SOAPMessage() |
| Модификатор и Тип | Метод и Описание |
|---|---|
abstract void |
addAttachmentPart(AttachmentPart AttachmentPart)
Добавляет данный
AttachmentPart возразите против этого SOAPMessage объект. |
abstract int |
countAttachments()
Получает количество числа присоединений в этом сообщении.
|
abstract AttachmentPart |
createAttachmentPart()
Создает новое пустое
AttachmentPart объект. |
AttachmentPart |
createAttachmentPart(DataHandler dataHandler)
Создает
AttachmentPart возразите и заполняет это использующий данный DataHandler объект. |
AttachmentPart |
createAttachmentPart(Object content, String contentType)
Создает
AttachmentPart возразите и заполняет это с указанными данными указанного типа контента. |
abstract AttachmentPart |
getAttachment(SOAPElement element)
Возвраты
AttachmentPart объект, который связывается с присоединением, на которое ссылается это SOAPElement или null если никакое такое присоединение не существует. |
abstract Iterator |
getAttachments()
Получает весь
AttachmentPart объекты, которые являются частью этого SOAPMessage объект. |
abstract Iterator |
getAttachments(MimeHeaders headers)
Получает весь
AttachmentPart объекты, у которых есть записи заголовка, которые соответствуют указанные заголовки. |
abstract String |
getContentDescription()
Получает описание этого
SOAPMessage контент объекта. |
abstract MimeHeaders |
getMimeHeaders()
Возвраты все транспортно-специфичные заголовки MIME для этого
SOAPMessage объект независимым от транспорта способом. |
Объект |
getProperty(String property)
Получает значение указанного свойства.
|
SOAPBody |
getSOAPBody()
Содержали Тело SOAP в этом
SOAPMessage объект. |
SOAPHeader |
getSOAPHeader()
Содержали Заголовок SOAP в этом
SOAPMessage объект. |
abstract SOAPPart |
getSOAPPart()
Получает часть SOAP этого
SOAPMessage объект. |
abstract void |
removeAllAttachments()
Удаляет все
AttachmentPart объекты, которые были добавлены к этому SOAPMessage объект. |
abstract void |
removeAttachments(MimeHeaders headers)
Удаляет весь
AttachmentPart объекты, у которых есть записи заголовка, которые соответствуют указанные заголовки. |
abstract void |
saveChanges()
Обновления это
SOAPMessage объект со всеми изменениями, которые были произведены в этом. |
abstract boolean |
saveRequired()
Указывает ли это
SOAPMessage возразите должен иметь метод saveChanges обращенный это. |
abstract void |
setContentDescription(String description)
Устанавливает описание этого
SOAPMessage контент объекта с данным описанием. |
void |
setProperty(String property, Object value)
Связывает указанное значение с указанным свойством.
|
abstract void |
writeTo(OutputStream out)
Записи это
SOAPMessage возразите против данного потока вывода. |
public static final String CHARACTER_SET_ENCODING
SOAPMessage.setProperty, Постоянные Значения полейpublic static final String WRITE_XML_DECLARATION
SOAPMessage.setProperty, Постоянные Значения полейpublic abstract void setContentDescription(String description)
SOAPMessage контент объекта с данным описанием.description - a String описание контента этого сообщенияgetContentDescription()public abstract String getContentDescription()
SOAPMessage контент объекта.String описание контента этого сообщения или null если никакое описание не было установленоsetContentDescription(java.lang.String)public abstract SOAPPart getSOAPPart()
SOAPMessage объект.
SOAPMessage объект содержит одно или более присоединений, Часть SOAP должна быть первой частью тела MIME в сообщении.
SOAPPart объект для этого SOAPMessage объектpublic SOAPBody getSOAPBody() throws SOAPException
SOAPMessage объект. SOAPBody объект содержится этим SOAPMessage объектSOAPException - если Тело SOAP не существует или не может быть полученоpublic SOAPHeader getSOAPHeader() throws SOAPException
SOAPMessage объект. SOAPHeader объект содержится этим SOAPMessage объектSOAPException - если Заголовок SOAP не существует или не может быть полученpublic abstract void removeAllAttachments()
AttachmentPart объекты, которые были добавлены к этому SOAPMessage объект. Этот метод не касается части SOAP.
public abstract int countAttachments()
AttachmentPart объекты, которые являются частью этого SOAPMessage объектpublic abstract Iterator getAttachments()
AttachmentPart объекты, которые являются частью этого SOAPMessage объект.public abstract Iterator getAttachments(MimeHeaders headers)
AttachmentPart объекты, у которых есть записи заголовка, которые соответствуют указанные заголовки. Отметьте, что у возвращенного присоединения могли быть заголовки в дополнение к определенным.headers - a MimeHeaders объект, содержащий заголовки MIME, которые можно искатьpublic abstract void removeAttachments(MimeHeaders headers)
AttachmentPart объекты, у которых есть записи заголовка, которые соответствуют указанные заголовки. Отметьте, что у удаленного присоединения могли быть заголовки в дополнение к определенным.headers - a MimeHeaders объект, содержащий заголовки MIME, которые можно искатьpublic abstract AttachmentPart getAttachment(SOAPElement element) throws SOAPException
AttachmentPart объект, который связывается с присоединением, на которое ссылается это SOAPElement или null если никакое такое присоединение не существует. Ссылки могут быть сделаны через href припишите как описано в , или через сингл Text дочерний узел, содержащий URI как описано в Присоединяемом Профиле WS-I 1.0 для элементов схемы, вводит . Эти два механизма должны поддерживаться. Поддержка ссылок через href атрибут также подразумевает, что этот метод должен также поддерживаться на элементе, который является xop:Include элементом . другие ссылочные механизмы могут поддерживаться отдельными реализациями этого стандарта. Свяжитесь со своим поставщиком для деталей.element - SOAPElement содержа ссылку на ПрисоединениеAttachmentPart или нуль, если не такой AttachmentPart существует или никакая ссылка не может быть найдена в этом SOAPElement.SOAPException - если есть ошибка в попытке получить доступ к присоединениюpublic abstract void addAttachmentPart(AttachmentPart AttachmentPart)
AttachmentPart возразите против этого SOAPMessage объект. AttachmentPart объект должен быть создан прежде, чем он сможет быть добавлен к сообщению.AttachmentPart - AttachmentPart объект, который должен стать частью этого SOAPMessage объектIllegalArgumentExceptionpublic abstract AttachmentPart createAttachmentPart()
AttachmentPart объект. Отметьте что метод addAttachmentPart должен быть вызван с этим новым AttachmentPart возразите как параметр для этого, чтобы стать присоединением к этому SOAPMessage объект.AttachmentPart объект, который может быть заполнен и добавлен к этому SOAPMessage объектpublic AttachmentPart createAttachmentPart(DataHandler dataHandler)
AttachmentPart возразите и заполняет это использующий данный DataHandler объект.dataHandler - javax.activation.DataHandler объект, который генерирует контент для этого SOAPMessage объектAttachmentPart объект, который содержит данные, сгенерированные данным DataHandler объектIllegalArgumentException - если была проблема с указанным DataHandler объектDataHandler, DataContentHandlerpublic abstract MimeHeaders getMimeHeaders()
SOAPMessage объект независимым от транспорта способом.MimeHeaders объект, содержащий MimeHeader объектыpublic AttachmentPart createAttachmentPart(Object content, String contentType)
AttachmentPart возразите и заполняет это с указанными данными указанного типа контента. Тип Object должен соответствовать значению, данному для Content-Type.content - Object содержа контент для AttachmentPart объект, который будет созданcontentType - a String объект, дающий тип контента; примерами является "text/xml", "текст/плоскость", и "image/jpeg"AttachmentPart объект, который содержит определенные данныеIllegalArgumentException - может быть брошен, если contentType не соответствует тип объекта контента, или если было нет DataContentHandler объект для данного объекта контентаDataHandler, DataContentHandlerpublic abstract void saveChanges()
throws SOAPException
SOAPMessage объект со всеми изменениями, которые были произведены в этом. Этот метод вызывают автоматически когда writeTo(OutputStream) вызывается. Однако, если изменения производятся в сообщении, которое было получено или в том, который был уже отправлен, метод saveChanges потребности, которые вызовут явно, чтобы сохранить изменения. Метод saveChanges также генерирует любые изменения, которые могут быть считаны назад (например, MessageId в профилях, которые поддерживают идентификатор сообщения). У всех заголовков MIME в сообщении, которое создается для того, чтобы отправить цели, как гарантируют, будут допустимые значения только после saveChanges был вызван. Кроме того, этот метод отмечает точку в который данные от всей составляющей AttachmentPart объекты вытягивают в сообщение.
SOAPException - если была проблема, сохраняющая изменения к этому сообщению.SOAPExceptionpublic abstract boolean saveRequired()
SOAPMessage возразите должен иметь метод saveChanges обращенный это.true если saveChanges потребности, которые вызовут; false иначе.public abstract void writeTo(OutputStream out) throws SOAPException, IOException
SOAPMessage возразите против данного потока вывода. Формат воплощения как определяется SOAP 1.1 с Присоединяемой спецификацией. Если нет никаких присоединений, только поток XML выписывается. Для тех сообщений, у которых есть присоединения, writeTo пишет закодированный MIME поток байтов.
Отметьте, что этот метод не пишет транспортно-специфичные Заголовки MIME сообщения
out - OutputStream возразите против который это SOAPMessage объект будет записанIOException - если ошибка ввода-вывода происходитSOAPException - если была проблема в воплощении этого сообщения SOAPpublic void setProperty(String property, Object value) throws SOAPException
Допустимые имена свойства включают WRITE_XML_DECLARATION и CHARACTER_SET_ENCODING. Все эти стандартные свойства SAAJ снабжаются префиксом "javax.xml.soap". Поставщики могут также добавить реализацию определенные свойства. Эти свойства должны быть снабжены префиксом имена пакета, которые уникальны для поставщика.
Установка свойства WRITE_XML_DECLARATION к "true" заставит XML Объявление быть выписанным в начале сообщения SOAP. Значение по умолчанию "лжи" подавляет это объявление.
Свойство CHARACTER_SET_ENCODING значения по умолчанию к значению "utf-8" который заставляет сообщение SOAP быть закодированным, используя UTF-8. Установка CHARACTER_SET_ENCODING к "utf-16" заставляет сообщение SOAP быть закодированным, используя UTF-16.
Некоторые реализации могут позволить кодировки в дополнение к UTF-8 и UTF-16. Сошлитесь на документацию своего поставщика для деталей.
property - свойство, с которым должно быть связано указанное значение.value - значение, которое будет связано с указанным свойствомSOAPException - если имя свойства не распознается.public Object getProperty(String property) throws SOAPException
property - имя свойства, чтобы получитьnull если никакое такое свойство не существует.SOAPException - если имя свойства не распознается.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92