Class XmppMessageSender
java.lang.Object
org.springframework.ws.transport.AbstractWebServiceMessageSender<XmppDestinationDescriptor>
org.springframework.ws.transport.xmpp.XmppMessageSender
- All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean,WebServiceMessageSender
public class XmppMessageSender
extends AbstractWebServiceMessageSender<XmppDestinationDescriptor>
implements org.springframework.beans.factory.InitializingBean
WebServiceMessageSender implementation that uses XMPP
Messages. Requires a
connectionto be set.
This message sender supports URI's of the following format:
xmpp:toThe to represents a Jabber ID.
For WebServiceMessageSender.UriSource.APPLICATION, default checks accept any xmpp: URI. For
WebServiceMessageSender.UriSource.REMOTE, default checks require a configured XMPPConnection
and accept only URIs whose JID domain matches the connection's XMPP service domain (see
XmppDestinationDescriptor.domain()). Use a
WebServiceMessageSender.DestinationPolicy for allow-lists, multi-tenant
routing, or stricter JID checks.
- Since:
- 2.0
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.springframework.ws.transport.WebServiceMessageSender
WebServiceMessageSender.DestinationDescriptor, WebServiceMessageSender.DestinationPolicy<D extends WebServiceMessageSender.DestinationDescriptor>, WebServiceMessageSender.UriSource -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringDefault encoding used to read from and write toMessagemessages.static final longDefault timeout for receive operations: -1 indicates a blocking receive without timeout. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcreateConnection(URI uri) Create a newWebServiceConnectionto the specified URI.protected XmppDestinationDescriptorcreateDescriptor(URI uri, WebServiceMessageSender.UriSource uriSource) protected Stringprotected Predicate<XmppDestinationDescriptor>defaultChecks(WebServiceMessageSender.UriSource uriSource) Return the default checks to apply for the givenWebServiceMessageSender.UriSource.voidsetConnection(org.jivesoftware.smack.XMPPConnection connection) Sets theXMPPConnection.voidsetMessageEncoding(String messageEncoding) Sets the encoding used to read fromMessageobject.voidsetReceiveTimeout(long receiveTimeout) Set the timeout to use for receive calls.Methods inherited from class org.springframework.ws.transport.AbstractWebServiceMessageSender
getDestinationPolicy, setDestinationPolicy, supportsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.ws.transport.WebServiceMessageSender
supports
-
Field Details
-
DEFAULT_RECEIVE_TIMEOUT
public static final long DEFAULT_RECEIVE_TIMEOUTDefault timeout for receive operations: -1 indicates a blocking receive without timeout.- See Also:
-
DEFAULT_MESSAGE_ENCODING
Default encoding used to read from and write toMessagemessages.- See Also:
-
-
Constructor Details
-
XmppMessageSender
public XmppMessageSender()
-
-
Method Details
-
setConnection
public void setConnection(org.jivesoftware.smack.XMPPConnection connection) Sets theXMPPConnection. Setting this property is required. -
setReceiveTimeout
public void setReceiveTimeout(long receiveTimeout) Set the timeout to use for receive calls. The default is -1, which means no timeout.- See Also:
-
StanzaCollector.nextResult(long)
-
setMessageEncoding
Sets the encoding used to read fromMessageobject. Defaults toUTF-8. -
afterPropertiesSet
- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean- Throws:
Exception
-
createConnection
Description copied from interface:WebServiceMessageSenderCreate a newWebServiceConnectionto the specified URI.- Specified by:
createConnectionin interfaceWebServiceMessageSender- Parameters:
uri- the URI to open a connection to- Returns:
- the new connection
- Throws:
IOException- in case of I/O errors
-
createDescriptor
protected XmppDestinationDescriptor createDescriptor(URI uri, WebServiceMessageSender.UriSource uriSource) Description copied from class:AbstractWebServiceMessageSender- Specified by:
createDescriptorin classAbstractWebServiceMessageSender<XmppDestinationDescriptor>- Parameters:
uri- the URI to checkuriSource- the source of the URI- Returns:
- a suitable descriptor
-
defaultChecks
protected Predicate<XmppDestinationDescriptor> defaultChecks(WebServiceMessageSender.UriSource uriSource) Description copied from class:AbstractWebServiceMessageSenderReturn the default checks to apply for the givenWebServiceMessageSender.UriSource.- Specified by:
defaultChecksin classAbstractWebServiceMessageSender<XmppDestinationDescriptor>- Returns:
- the default checks to apply
-
createThread
-