Add live TLS certificate probing and improve restart error handling.

Configure CertificateCheckUrl per container for curl-like TLS checks, classify Sonic permission errors, and extend setup wizard for container management.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-03 13:16:21 +02:00
co-authored by Cursor
parent d20e0df618
commit 58b7826162
1430 changed files with 358394 additions and 71 deletions
@@ -0,0 +1,483 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_19) on Fri Aug 12 11:25:14 EDT 2011 -->
<TITLE>
QueueSession (Management Application API)
</TITLE>
<META NAME="keywords" CONTENT="javax.jms.QueueSession interface">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="QueueSession (Management Application API)";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="QueueSession.html#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
Sonic Management API</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="QueueSender.html" title="interface in javax.jms"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="ResourceAllocationException.html" title="class in javax.jms"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../index.html@javax%252Fjms%252FQueueSession.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="QueueSession.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="QueueSession.html#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="QueueSession.html#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
javax.jms</FONT>
<BR>
Interface QueueSession</H2>
<DL>
<DT><B>All Superinterfaces:</B> <DD>java.lang.Runnable, <A HREF="Session.html" title="interface in javax.jms">Session</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public interface <B>QueueSession</B><DT>extends <A HREF="Session.html" title="interface in javax.jms">Session</A></DL>
</PRE>
<P>
A <CODE>QueueSession</CODE> object provides methods for creating
<CODE>QueueReceiver</CODE>, <CODE>QueueSender</CODE>,
<CODE>QueueBrowser</CODE>, and <CODE>TemporaryQueue</CODE> objects.
<P>If there are messages that have been received but not acknowledged
when a <CODE>QueueSession</CODE> terminates, these messages will be retained
and redelivered when a consumer next accesses the queue.
<P>A <CODE>QueueSession</CODE> is used for creating Point-to-Point specific
objects. In general, use the <CODE>Session</CODE> object.
The <CODE>QueueSession</CODE> is used to support
existing code. Using the <CODE>Session</CODE> object simplifies the
programming model, and allows transactions to be used across the two
messaging domains.
<P>A <CODE>QueueSession</CODE> cannot be used to create objects specific to the
publish/subscribe domain. The following methods inherit from
<CODE>Session</CODE>, but must throw an
<CODE>IllegalStateException</CODE>
if they are used from <CODE>QueueSession</CODE>:
<UL>
<LI><CODE>createDurableSubscriber</CODE>
<LI><CODE>createTemporaryTopic</CODE>
<LI><CODE>createTopic</CODE>
<LI><CODE>unsubscribe</CODE>
</UL>
<P>
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="Session.html" title="interface in javax.jms"><CODE>Session</CODE></A>,
<A HREF="QueueConnection.html#createQueueSession(boolean, int)"><CODE>QueueConnection.createQueueSession(boolean, int)</CODE></A>,
<A HREF="XAQueueSession.html#getQueueSession()"><CODE>XAQueueSession.getQueueSession()</CODE></A></DL>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_javax.jms.Session"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface javax.jms.<A HREF="Session.html" title="interface in javax.jms">Session</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="Session.html#AUTO_ACKNOWLEDGE">AUTO_ACKNOWLEDGE</A>, <A HREF="Session.html#CLIENT_ACKNOWLEDGE">CLIENT_ACKNOWLEDGE</A>, <A HREF="Session.html#DUPS_OK_ACKNOWLEDGE">DUPS_OK_ACKNOWLEDGE</A>, <A HREF="Session.html#SESSION_TRANSACTED">SESSION_TRANSACTED</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="QueueBrowser.html" title="interface in javax.jms">QueueBrowser</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="QueueSession.html#createBrowser(javax.jms.Queue)">createBrowser</A></B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a <CODE>QueueBrowser</CODE> object to peek at the messages on
the specified queue.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="QueueBrowser.html" title="interface in javax.jms">QueueBrowser</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="QueueSession.html#createBrowser(javax.jms.Queue, java.lang.String)">createBrowser</A></B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue,
java.lang.String&nbsp;messageSelector)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a <CODE>QueueBrowser</CODE> object to peek at the messages on
the specified queue using a message selector.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="Queue.html" title="interface in javax.jms">Queue</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="QueueSession.html#createQueue(java.lang.String)">createQueue</A></B>(java.lang.String&nbsp;queueName)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a queue identity given a <CODE>Queue</CODE> name.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="QueueReceiver.html" title="interface in javax.jms">QueueReceiver</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="QueueSession.html#createReceiver(javax.jms.Queue)">createReceiver</A></B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a <CODE>QueueReceiver</CODE> object to receive messages from the
specified queue.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="QueueReceiver.html" title="interface in javax.jms">QueueReceiver</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="QueueSession.html#createReceiver(javax.jms.Queue, java.lang.String)">createReceiver</A></B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue,
java.lang.String&nbsp;messageSelector)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a <CODE>QueueReceiver</CODE> object to receive messages from the
specified queue using a message selector.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="QueueSender.html" title="interface in javax.jms">QueueSender</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="QueueSession.html#createSender(javax.jms.Queue)">createSender</A></B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a <CODE>QueueSender</CODE> object to send messages to the
specified queue.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="TemporaryQueue.html" title="interface in javax.jms">TemporaryQueue</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="QueueSession.html#createTemporaryQueue()">createTemporaryQueue</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a <CODE>TemporaryQueue</CODE> object.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_javax.jms.Session"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface javax.jms.<A HREF="Session.html" title="interface in javax.jms">Session</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="Session.html#close()">close</A>, <A HREF="Session.html#commit()">commit</A>, <A HREF="Session.html#createBytesMessage()">createBytesMessage</A>, <A HREF="Session.html#createConsumer(javax.jms.Destination)">createConsumer</A>, <A HREF="Session.html#createConsumer(javax.jms.Destination, java.lang.String)">createConsumer</A>, <A HREF="Session.html#createConsumer(javax.jms.Destination, java.lang.String, boolean)">createConsumer</A>, <A HREF="Session.html#createDurableSubscriber(javax.jms.Topic, java.lang.String)">createDurableSubscriber</A>, <A HREF="Session.html#createDurableSubscriber(javax.jms.Topic, java.lang.String, java.lang.String, boolean)">createDurableSubscriber</A>, <A HREF="Session.html#createMapMessage()">createMapMessage</A>, <A HREF="Session.html#createMessage()">createMessage</A>, <A HREF="Session.html#createObjectMessage()">createObjectMessage</A>, <A HREF="Session.html#createObjectMessage(java.io.Serializable)">createObjectMessage</A>, <A HREF="Session.html#createProducer(javax.jms.Destination)">createProducer</A>, <A HREF="Session.html#createStreamMessage()">createStreamMessage</A>, <A HREF="Session.html#createTemporaryTopic()">createTemporaryTopic</A>, <A HREF="Session.html#createTextMessage()">createTextMessage</A>, <A HREF="Session.html#createTextMessage(java.lang.String)">createTextMessage</A>, <A HREF="Session.html#createTopic(java.lang.String)">createTopic</A>, <A HREF="Session.html#getAcknowledgeMode()">getAcknowledgeMode</A>, <A HREF="Session.html#getMessageListener()">getMessageListener</A>, <A HREF="Session.html#getTransacted()">getTransacted</A>, <A HREF="Session.html#recover()">recover</A>, <A HREF="Session.html#rollback()">rollback</A>, <A HREF="Session.html#run()">run</A>, <A HREF="Session.html#setMessageListener(javax.jms.MessageListener)">setMessageListener</A>, <A HREF="Session.html#unsubscribe(java.lang.String)">unsubscribe</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="createBrowser(javax.jms.Queue)"><!-- --></A><H3>
createBrowser</H3>
<PRE>
<A HREF="QueueBrowser.html" title="interface in javax.jms">QueueBrowser</A> <B>createBrowser</B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue)
throws <A HREF="JMSException.html" title="class in javax.jms">JMSException</A></PRE>
<DL>
<DD>Creates a <CODE>QueueBrowser</CODE> object to peek at the messages on
the specified queue.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="Session.html#createBrowser(javax.jms.Queue)">createBrowser</A></CODE> in interface <CODE><A HREF="Session.html" title="interface in javax.jms">Session</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>queue</CODE> - the <CODE>Queue</CODE> to access
<DT><B>Throws:</B>
<DD><CODE><A HREF="JMSException.html" title="class in javax.jms">JMSException</A></CODE> - if the session fails to create a browser
due to some internal error.
<DD><CODE><A HREF="InvalidDestinationException.html" title="class in javax.jms">InvalidDestinationException</A></CODE> - if an invalid queue is specified.</DL>
</DD>
</DL>
<HR>
<A NAME="createBrowser(javax.jms.Queue, java.lang.String)"><!-- --></A><H3>
createBrowser</H3>
<PRE>
<A HREF="QueueBrowser.html" title="interface in javax.jms">QueueBrowser</A> <B>createBrowser</B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue,
java.lang.String&nbsp;messageSelector)
throws <A HREF="JMSException.html" title="class in javax.jms">JMSException</A></PRE>
<DL>
<DD>Creates a <CODE>QueueBrowser</CODE> object to peek at the messages on
the specified queue using a message selector.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="Session.html#createBrowser(javax.jms.Queue, java.lang.String)">createBrowser</A></CODE> in interface <CODE><A HREF="Session.html" title="interface in javax.jms">Session</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>queue</CODE> - the <CODE>Queue</CODE> to access<DD><CODE>messageSelector</CODE> - only messages with properties matching the
message selector expression are delivered. A value of null or
an empty string indicates that there is no message selector
for the message consumer.
<DT><B>Throws:</B>
<DD><CODE><A HREF="JMSException.html" title="class in javax.jms">JMSException</A></CODE> - if the session fails to create a browser
due to some internal error.
<DD><CODE><A HREF="InvalidDestinationException.html" title="class in javax.jms">InvalidDestinationException</A></CODE> - if an invalid queue is specified.
<DD><CODE><A HREF="InvalidSelectorException.html" title="class in javax.jms">InvalidSelectorException</A></CODE> - if the message selector is invalid.</DL>
</DD>
</DL>
<HR>
<A NAME="createQueue(java.lang.String)"><!-- --></A><H3>
createQueue</H3>
<PRE>
<A HREF="Queue.html" title="interface in javax.jms">Queue</A> <B>createQueue</B>(java.lang.String&nbsp;queueName)
throws <A HREF="JMSException.html" title="class in javax.jms">JMSException</A></PRE>
<DL>
<DD>Creates a queue identity given a <CODE>Queue</CODE> name.
<P>This facility is provided for the rare cases where clients need to
dynamically manipulate queue identity. It allows the creation of a
queue identity with a provider-specific name. Clients that depend
on this ability are not portable.
<P>Note that this method is not for creating the physical queue.
The physical creation of queues is an administrative task and is not
to be initiated by the JMS API. The one exception is the
creation of temporary queues, which is accomplished with the
<CODE>createTemporaryQueue</CODE> method.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="Session.html#createQueue(java.lang.String)">createQueue</A></CODE> in interface <CODE><A HREF="Session.html" title="interface in javax.jms">Session</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>queueName</CODE> - the name of this <CODE>Queue</CODE>
<DT><B>Returns:</B><DD>a <CODE>Queue</CODE> with the given name
<DT><B>Throws:</B>
<DD><CODE><A HREF="JMSException.html" title="class in javax.jms">JMSException</A></CODE> - if the session fails to create a queue
due to some internal error.</DL>
</DD>
</DL>
<HR>
<A NAME="createReceiver(javax.jms.Queue)"><!-- --></A><H3>
createReceiver</H3>
<PRE>
<A HREF="QueueReceiver.html" title="interface in javax.jms">QueueReceiver</A> <B>createReceiver</B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue)
throws <A HREF="JMSException.html" title="class in javax.jms">JMSException</A></PRE>
<DL>
<DD>Creates a <CODE>QueueReceiver</CODE> object to receive messages from the
specified queue.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>queue</CODE> - the <CODE>Queue</CODE> to access
<DT><B>Throws:</B>
<DD><CODE><A HREF="JMSException.html" title="class in javax.jms">JMSException</A></CODE> - if the session fails to create a receiver
due to some internal error.
<DD><CODE><A HREF="InvalidDestinationException.html" title="class in javax.jms">InvalidDestinationException</A></CODE> - if an invalid queue is specified.</DL>
</DD>
</DL>
<HR>
<A NAME="createReceiver(javax.jms.Queue, java.lang.String)"><!-- --></A><H3>
createReceiver</H3>
<PRE>
<A HREF="QueueReceiver.html" title="interface in javax.jms">QueueReceiver</A> <B>createReceiver</B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue,
java.lang.String&nbsp;messageSelector)
throws <A HREF="JMSException.html" title="class in javax.jms">JMSException</A></PRE>
<DL>
<DD>Creates a <CODE>QueueReceiver</CODE> object to receive messages from the
specified queue using a message selector.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>queue</CODE> - the <CODE>Queue</CODE> to access<DD><CODE>messageSelector</CODE> - only messages with properties matching the
message selector expression are delivered. A value of null or
an empty string indicates that there is no message selector
for the message consumer.
<DT><B>Throws:</B>
<DD><CODE><A HREF="JMSException.html" title="class in javax.jms">JMSException</A></CODE> - if the session fails to create a receiver
due to some internal error.
<DD><CODE><A HREF="InvalidDestinationException.html" title="class in javax.jms">InvalidDestinationException</A></CODE> - if an invalid queue is specified.
<DD><CODE><A HREF="InvalidSelectorException.html" title="class in javax.jms">InvalidSelectorException</A></CODE> - if the message selector is invalid.</DL>
</DD>
</DL>
<HR>
<A NAME="createSender(javax.jms.Queue)"><!-- --></A><H3>
createSender</H3>
<PRE>
<A HREF="QueueSender.html" title="interface in javax.jms">QueueSender</A> <B>createSender</B>(<A HREF="Queue.html" title="interface in javax.jms">Queue</A>&nbsp;queue)
throws <A HREF="JMSException.html" title="class in javax.jms">JMSException</A></PRE>
<DL>
<DD>Creates a <CODE>QueueSender</CODE> object to send messages to the
specified queue.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>queue</CODE> - the <CODE>Queue</CODE> to access, or null if this is an
unidentified producer
<DT><B>Throws:</B>
<DD><CODE><A HREF="JMSException.html" title="class in javax.jms">JMSException</A></CODE> - if the session fails to create a sender
due to some internal error.
<DD><CODE><A HREF="InvalidDestinationException.html" title="class in javax.jms">InvalidDestinationException</A></CODE> - if an invalid queue is specified.</DL>
</DD>
</DL>
<HR>
<A NAME="createTemporaryQueue()"><!-- --></A><H3>
createTemporaryQueue</H3>
<PRE>
<A HREF="TemporaryQueue.html" title="interface in javax.jms">TemporaryQueue</A> <B>createTemporaryQueue</B>()
throws <A HREF="JMSException.html" title="class in javax.jms">JMSException</A></PRE>
<DL>
<DD>Creates a <CODE>TemporaryQueue</CODE> object. Its lifetime will be that
of the <CODE>QueueConnection</CODE> unless it is deleted earlier.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="Session.html#createTemporaryQueue()">createTemporaryQueue</A></CODE> in interface <CODE><A HREF="Session.html" title="interface in javax.jms">Session</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>a temporary queue identity
<DT><B>Throws:</B>
<DD><CODE><A HREF="JMSException.html" title="class in javax.jms">JMSException</A></CODE> - if the session fails to create a temporary queue
due to some internal error.</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="QueueSession.html#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
Sonic Management API</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="QueueSender.html" title="interface in javax.jms"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="ResourceAllocationException.html" title="class in javax.jms"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../index.html@javax%252Fjms%252FQueueSession.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="QueueSession.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="QueueSession.html#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="QueueSession.html#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
<font size="-1">Copyright &copy; 2001-2011
<a href="http://www.progress.com" target="_top"> Progress Software Corporation</a>. All Rights Reserved.
<br>HTML formatted on 12-Aug-2011.</font>
</BODY>
</HTML>