blob: f5d5e79b63d92fbb8cff2216b0817ae8747bb241 [file] [log] [blame]
<!DOCTYPE html>
<!--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Appendix&#160;A.&#160;Exceptions - Apache Qpid&#8482;</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<link rel="stylesheet" href="/site.css" type="text/css" async="async"/>
<link rel="stylesheet" href="/deferred.css" type="text/css" defer="defer"/>
<script type="text/javascript">var _deferredFunctions = [];</script>
<script type="text/javascript" src="/deferred.js" defer="defer"></script>
<!--[if lte IE 8]>
<link rel="stylesheet" href="/ie.css" type="text/css"/>
<script type="text/javascript" src="/html5shiv.js"></script>
<![endif]-->
<!-- Redirects for `go get` and godoc.org -->
<meta name="go-import"
content="qpid.apache.org git https://git-wip-us.apache.org/repos/asf/qpid-proton.git"/>
<meta name="go-source"
content="qpid.apache.org
https://github.com/apache/qpid-proton/blob/go1/README.md
https://github.com/apache/qpid-proton/tree/go1{/dir}
https://github.com/apache/qpid-proton/blob/go1{/dir}/{file}#L{line}"/>
</head>
<body>
<div id="-content">
<div id="-top" class="panel">
<a id="-menu-link"><img width="16" height="16" src="" alt="Menu"/></a>
<a id="-search-link"><img width="22" height="16" src="" alt="Search"/></a>
<ul id="-global-navigation">
<li><a id="-logotype" href="/index.html">Apache Qpid<sup>&#8482;</sup></a></li>
<li><a href="/documentation.html">Documentation</a></li>
<li><a href="/download.html">Download</a></li>
<li><a href="/discussion.html">Discussion</a></li>
</ul>
</div>
<div id="-menu" class="panel" style="display: none;">
<div class="flex">
<section>
<h3>Project</h3>
<ul>
<li><a href="/overview.html">Overview</a></li>
<li><a href="/components/index.html">Components</a></li>
<li><a href="/releases/index.html">Releases</a></li>
</ul>
</section>
<section>
<h3>Messaging APIs</h3>
<ul>
<li><a href="/proton/index.html">Qpid Proton</a></li>
<li><a href="/components/jms/index.html">Qpid JMS</a></li>
<li><a href="/components/messaging-api/index.html">Qpid Messaging API</a></li>
</ul>
</section>
<section>
<h3>Servers and tools</h3>
<ul>
<li><a href="/components/broker-j/index.html">Broker-J</a></li>
<li><a href="/components/cpp-broker/index.html">C++ broker</a></li>
<li><a href="/components/dispatch-router/index.html">Dispatch router</a></li>
</ul>
</section>
<section>
<h3>Resources</h3>
<ul>
<li><a href="/dashboard.html">Dashboard</a></li>
<li><a href="https://cwiki.apache.org/confluence/display/qpid/Index">Wiki</a></li>
<li><a href="/resources.html">More resources</a></li>
</ul>
</section>
</div>
</div>
<div id="-search" class="panel" style="display: none;">
<form action="http://www.google.com/search" method="get">
<input type="hidden" name="sitesearch" value="qpid.apache.org"/>
<input type="text" name="q" maxlength="255" autofocus="autofocus" tabindex="1"/>
<button type="submit">Search</button>
<a href="/search.html">More ways to search</a>
</form>
</div>
<div id="-middle" class="panel">
<ul id="-path-navigation"><li><a href="/index.html">Home</a></li><li><a href="/releases/index.html">Releases</a></li><li><a href="/releases/qpid-jms-amqp-0-x-6.3.1/index.html">Qpid JMS AMQP 0-x 6.3.1</a></li><li><a href="/releases/qpid-jms-amqp-0-x-6.3.1/jms-amqp-0-8-book/index.html">Apache Qpid JMS AMQP 0-8/0-9/0-9-1</a></li><li>Appendix&#160;A.&#160;Exceptions</li></ul>
<div id="-middle-content">
<div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">Appendix&#160;A.&#160;Exceptions</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="JMS-Client-0-8-Logging-EnablingDebugLogging.html">Prev</a>&#160;</td><th align="center" width="60%">&#160;</th><td align="right" width="20%">&#160;<a accesskey="n" href="JMS-Client-0-8-Appendix-Maven.html">Next</a></td></tr></table><hr /></div><div class="appendix"><div class="titlepage"><div><div><h1 class="title"><a id="JMS-Client-0-8-Appendix-Exceptions"></a>Appendix&#160;A.&#160;Exceptions</h1></div></div></div><p>The methods of the Client throw <a class="link" href="http://docs.oracle.com/javaee/6/api/javax/jms/JMSException.html" target="_top">JMSExceptions</a> in response to error
conditions. Typically the exception's message (#getMessage()) summarises the error condition,
with contextual information being provided by the messages of linked exception(s). To understand
the problem, it is important to read the messages associated with <span class="emphasis"><em>all</em></span> the
linked exceptions.</p><p>The following table describes some of the more common exceptions linked to JMSException
thrown by JMS methods whilst using the client:</p><div class="table"><a id="d0e3006"></a><p class="title"><strong>Table&#160;A.1.&#160;Exceptions linked to JMSExceptions thrown by JMS methods</strong></p><div class="table-contents"><table border="1" summary="Exceptions linked to JMSExceptions thrown by JMS methods" width="100%"><colgroup><col /><col /><col /></colgroup><thead><tr><th>Linked Exception</th><th>Message</th><th>Explanation/Common Causes</th></tr></thead><tbody><tr><td>AMQUnresolvedAddressException</td><td><span class="emphasis"><em>message varies</em></span></td><td><p>Indicates that the hostname included in the Connection URL's <a class="link" href="JMS-Client-0-8-Connection-URL.html#JMS-Client-0-8-Connection-URL-ConnectionOptions-Brokerlist">brokerlist</a>, could not be resolved, . This could mean that the hostname is
mispelt, or there is name resolution problem.</p></td></tr><tr><td>AMQConnectionFailure</td><td>Connection refused</td><td><p>Indicates that the host included in the Connection URL's <a class="link" href="JMS-Client-0-8-Connection-URL.html#JMS-Client-0-8-Connection-URL-ConnectionOptions-Brokerlist">brokerlist</a>, actively refused the connection. This could mean that the
hostname and/or port number is incorrect, or the Broker may not be
running.</p></td></tr><tr><td>AMQConnectionFailure</td><td>connect timed out</td><td><p>Indicates that the host included in the Connection URL's <a class="link" href="JMS-Client-0-8-Connection-URL.html#JMS-Client-0-8-Connection-URL-ConnectionOptions-Brokerlist">brokerlist</a>, could not be contacted within the <a class="link" href="JMS-Client-0-8-Connection-URL.html#JMS-Client-0-8-Connection-URL-BrokerOptions-ConnectTimeout">connecttimeout</a>. This could mean that the host is shutdown, or a networking
routing problem means the host is unreachable.</p></td></tr><tr><td>AMQConnectionFailure</td><td>General SSL Problem; PKIX path building failed; unable to find valid certification
path to requested target</td><td><p>Indicates that the CA that signed the Broker's certificate is not trusted by
the JVM of the client. If the Broker is using a private-CA (or a self signed
certificate) check that the client has been properly configured with a truststore. See
<a class="xref" href="JMS-Client-0-8-Client-Understanding-Connection.html#JMS-Client-0-8-Client-Understanding-Connection-SSL" title="5.3.3.&#160;SSL">Section&#160;5.3.3, &#8220;SSL&#8221;</a></p></td></tr><tr><td>AMQConnectionFailure / AMQAuthenticationException</td><td>not allowed</td><td><p>Indicates that the user cannot be authenticated by the Broker. Check the
username and/or password elements within the <a class="link" href="JMS-Client-0-8-Connection-URL.html" title="Chapter&#160;7.&#160;Connection URLs">Connection URL</a>.</p></td></tr><tr><td>AMQConnectionFailure / AMQSecurityException</td><td>Permission denied: <span class="emphasis"><em>virtualhost name</em></span>; access refused</td><td><p>Indicates that the user is not authorised to connect to the given
virtualhost. The user is recognised by the Broker and is using the correct password
but does not have permission. This exception normally indicates that the user (or
group) has not been permissioned within the Broker's <a class="link" href="../../java-broker/book/Java-Broker-Security-ACLs.html" target="_top">Access Control List
(ACL)</a>.</p></td></tr><tr><td>AMQTimeoutException</td><td>The server's response was not received within the time-out period of %d ms.</td><td>
<p>Indicates that the Broker's response to the request sent by the client was not received
within a timely fashion. The timeout is governed by
<a class="link" href="JMS-Client-0-8-System-Properties.html#JMS-Client-0-8-System-Properties-SyncOpTimeout">
<code class="literal">qpid.sync_op_timeout</code>
</a>.
</p>
<p>This can be a symptom of a heavily loaded Broker, an overloaded network or a client JVM itself which
is too overloaded to process incoming responses. Check for unreasonably long garbage collection pauses.
</p>
</td></tr><tr><td>AMQSecurityException</td><td>Permission denied: <span class="emphasis"><em>message varies</em></span></td><td><p>Indicates that the user is not authorised to use the given resource or
perform the given operation. This exception normally indicates that the user (or
group) has not been permissioned within the Broker's <a class="link" href="../../java-broker/book/Java-Broker-Security-ACLs.html" target="_top">Access Control List
(ACL)</a>.</p></td></tr><tr><td><a id="JMS-Client-0-8-Appendix-Exceptions-CertificateException"></a>CertificateException</td><td>Unable to find certificate for recipient '&lt;recipient&gt;'</td><td>
<p>When using end to end message encryption, this exception indicates the the message recipent's
principal cannot be found in the truststore. See <a class="xref" href="JMS-Client-Message-Encryption.html" title="Chapter&#160;9.&#160;Message Encryption">Chapter&#160;9, <em>Message Encryption</em></a>
</p>
</td></tr></tbody></table></div></div><br class="table-break" /><p>The following table describes some of the more common exceptions linked to JMSException sent
to <a class="link" href="http://docs.oracle.com/javaee/6/api/javax/jms/ExceptionListener.html" target="_top">ExceptionListener</a>
instances.</p><div class="table"><a id="d0e3139"></a><p class="title"><strong>Table&#160;A.2.&#160;Exceptions linked to JMSExceptions received by ExceptionListeners</strong></p><div class="table-contents"><table border="1" summary="Exceptions linked to JMSExceptions received by ExceptionListeners" width="100%"><colgroup><col /><col /><col /></colgroup><thead><tr><th>Linked Exception</th><th>Message</th><th>Explanation/Common Causes</th></tr></thead><tbody><tr><td><a id="JMS-Client-0-8-Appendix-Exceptions-AMQNoRouteException"></a>AMQNoRouteException</td><td>No Route for message [Exchange: <span class="emphasis"><em>exchange name</em></span>, Routing key:
<span class="emphasis"><em>routing key</em></span>] [error code 312: no route]</td><td><p>Indicate that the named exchange is unable to route a message to at least one
queue.</p>
<p>This will occur if a queue has been improperly bound to an exchange. Use the
Broker's management interface to check the bindings. See <a class="xref" href="JMS-Client-0-8-Client-Understanding-MessageProducer.html#JMS-Client-0-8-Client-Understanding-MessageProducer-MandatoryMessage" title="5.5.1.&#160;Mandatory Messages">Section&#160;5.5.1, &#8220;Mandatory Messages&#8221;</a></p></td></tr><tr><td><a id="JMS-Client-0-8-Appendix-Exceptions-AMQNoConsumersException"></a>AMQNoConsumersException</td><td>Immediate delivery is not possible. [error code 313: no consumers]</td><td><p>Immediate delivery was requested by the MessageProducer, but as there are no
consumers on any target queue, the message has been returned to the publisher. See
<a class="xref" href="JMS-Client-0-8-Client-Understanding-MessageProducer.html#JMS-Client-0-8-Client-Understanding-MessageProducer-ImmediateMessage" title="5.5.3.&#160;Immediate Messages">Section&#160;5.5.3, &#8220;Immediate Messages&#8221;</a>
</p></td></tr><tr><td>AMQDisconnectedException</td><td>Server closed connection and reconnection not permitted</td><td><p>Indicates that the connection was closed by the Broker, and as <a class="link" href="JMS-Client-0-8-Client-Understanding-Connection.html#JMS-Client-0-8-Client-Understanding-Connection-Failover" title="5.3.1.&#160;Failover">failover
options</a> are not included in the Connection URL, the client has been unable to
reestablish connection.</p>
<p>The Connection is now closed and any attempt to use either Connection object, or
any objects created from the Connection will receive an <a class="link" href="http://docs.oracle.com/javaee/6/api/javax/jms/IllegalStateException.html" target="_top">IllegalStateException</a>.</p></td></tr><tr><td><a id="JMS-Client-0-8-Appendix-Exceptions-AMQDisconnectedException"></a>AMQDisconnectedException</td><td>Server closed connection and no failover was successful</td><td><p>Indicates that the connection was closed by the Broker. The client has tried
failover according to the rules of the <a class="link" href="JMS-Client-0-8-Client-Understanding-Connection.html#JMS-Client-0-8-Client-Understanding-Connection-Failover" title="5.3.1.&#160;Failover">failover
options</a>within the Connection URL, but these attempts were all
unsuccessful.</p>
<p>The Connection is now closed and any attempt to use either Connection object, or
any objects created from the Connection will receive an <a class="link" href="http://docs.oracle.com/javaee/6/api/javax/jms/IllegalStateException.html" target="_top">IllegalStateException</a>.</p></td></tr></tbody></table></div></div><br class="table-break" /></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="JMS-Client-0-8-Logging-EnablingDebugLogging.html">Prev</a>&#160;</td><td align="center" width="20%">&#160;</td><td align="right" width="40%">&#160;<a accesskey="n" href="JMS-Client-0-8-Appendix-Maven.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">11.2.&#160;Enabling Debug&#160;</td><td align="center" width="20%"><a accesskey="h" href="JMS-Client-Book.html">Home</a></td><td align="right" valign="top" width="40%">&#160;Appendix&#160;B.&#160;Minimal Maven POM</td></tr></table></div></div>
<hr/>
<ul id="-apache-navigation">
<li><a href="http://www.apache.org/">Apache</a></li>
<li><a href="http://www.apache.org/licenses/">License</a></li>
<li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
<li><a href="http://www.apache.org/foundation/thanks.html">Thanks!</a></li>
<li><a href="/security.html">Security</a></li>
<li><a href="http://www.apache.org/"><img id="-apache-feather" width="48" height="14" src="" alt="Apache"/></a></li>
</ul>
<p id="-legal">
Apache Qpid, Messaging built on AMQP; Copyright &#169; 2015
The Apache Software Foundation; Licensed under
the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache
License, Version 2.0</a>; Apache Qpid, Qpid, Qpid Proton,
Proton, Apache, the Apache feather logo, and the Apache Qpid
project logo are trademarks of The Apache Software
Foundation; All other marks mentioned may be trademarks or
registered trademarks of their respective owners
</p>
</div>
</div>
</div>
</body>
</html>