Added: qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Introduction.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Introduction.html?rev=1718924&view=auto ============================================================================== --- qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Introduction.html (added) +++ qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Introduction.html Wed Dec 9 17:41:59 2015 @@ -0,0 +1,151 @@ +<!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>Chapter 1. Introduction - Apache Qpid™</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://github.com/alanconway/proton-go.git"/> + <meta name="go-source" + content="qpid.apache.org +https://github.com/alanconway/proton-go/tree/master/README.md +https://github.com/alanconway/proton-go/tree/master{/dir} +https://github.com/alanconway/proton-go/blob/master{/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>™</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/java-broker/index.html">Java broker</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-java-6.0.0/index.html">Qpid Java 6.0.0</a></li><li><a href="/releases/qpid-java-6.0.0/java-broker/book/index.html">AMQP Messaging Broker (Java)</a></li><li>Chapter 1. Introduction</li></ul> + + <div id="-middle-content"> + <div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">Chapter 1. Introduction</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="index.html">Prev</a> </td><th align="center" width="60%"> </th><td align="right" width="20%"> <a accesskey="n" href="Java-Broker-Installation.html">Next</a></td></tr></table><hr /></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a id="Java-Broker-Introduction"></a>Chapter 1. Introduction</h1></div></div></div><p>The Java Broker is a powerful open-source message broker that implements all versions of the + <a class="ulink" href="http://www.amqp.org" target="_top"> Advanced Message Queuing Protocol (AMQP)</a>. The Java + Broker is actually one of two message brokers provided by the <a class="ulink" href="http://qpid.apache.org" target="_top">Apache Qpid project</a>: the Java Broker and the C++ + Broker.</p><p>This document relates to the Java Broker. The <a class="ulink" href="../../../qpid-cpp-0.34/cpp-broker/book/" target="_top">C++ Broker is + described separately</a>.</p><p><span class="emphasis"><em>Headline features</em></span></p><div class="itemizedlist"><ul class="itemizedlist" type="circle"><li class="listitem"><p>100% Java implementation - runs on any platform supporting Java 1.7 or higher</p></li><li class="listitem"><p>Messaging clients support in Java, C++, Python.</p></li><li class="listitem"><p>JMS 1.1 compliance (Java client).</p></li><li class="listitem"><p>Persistent and non-persistent (transient) message support</p></li><li class="listitem"><p>Supports for all common messaging patterns (point-to-point, publish/subscribe, fan-out + etc).</p></li><li class="listitem"><p>Transaction support including XA<a class="footnote" href="#ftn.idm140683147832592" id="idm140683147832592"><sup class="footnote">[1]</sup></a></p></li><li class="listitem"><p>Supports for all versions of the AMQP protocol</p></li><li class="listitem"><p>Automatic message translation, allowing clients using different AMQP versions to communicate with each other.</p></li><li class="listitem"><p>Pluggable authentication architecture with out-of-the-box support for Kerberos, LDAP, + External, and file-based authentication mechanisms.</p></li><li class="listitem"><p>Support for message compression</p></li><li class="listitem"><p>Client support for end to end message encryption</p></li><li class="listitem"><p>Pluggable storage architecture with implementations including <a class="ulink" href="http://db.apache.org/derby/" target="_top">Apache Derby</a>, <a class="ulink" href="http://www.oracle.com/technetwork/products/berkeleydb/overview/index-093405.html" target="_top">Oracle BDB JE</a><a class="footnote" href="#ftn.idm140683147825488" id="idm140683147825488"><sup class="footnote">[2]</sup></a>, and External Database</p></li><li class="listitem"><p>Web based management interface and programmatic management interfaces via REST and JMX + APIs.</p></li><li class="listitem"><p>SSL support</p></li><li class="listitem"><p>High availability (HA) support.<a class="footnote" href="#ftn.idm140683147822192" id="idm140683147822192"><sup class="footnote">[3]</sup></a></p></li></ul></div><div class="footnotes"><br /><hr align="left" width="100" /><div class="footnote" id="ftn.idm140683147832592"><p><a class="para" href="#idm140683147832592"><sup class="para">[1] </sup></a>XA provided when using AMQP 0-10</p></div><div class="footnote" id="ftn.idm140683147825488"><p><a class="para" href="#idm140683147825488"><sup class="para">[2] </sup></a>Oracle BDB JE must be downloaded separately.</p></div><div class="footnote" id="ftn.idm140683147822192"><p><a class="para" href="#idm140683147822192"><sup class="para">[3] </sup></a>HA currently only available to users of the optional BDB JE HA based message store.</p></div></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" wid th="40%"><a accesskey="p" href="index.html">Prev</a> </td><td align="center" width="20%"> </td><td align="right" width="40%"> <a accesskey="n" href="Java-Broker-Installation.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">AMQP Messaging Broker (Java) </td><td align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td align="right" valign="top" width="40%"> Chapter 2. Installation</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="http://www.apache.org/security/">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 © 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>
Added: qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-AMQP-Intrinstic.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-AMQP-Intrinstic.html?rev=1718924&view=auto ============================================================================== --- qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-AMQP-Intrinstic.html (added) +++ qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-AMQP-Intrinstic.html Wed Dec 9 17:41:59 2015 @@ -0,0 +1,146 @@ +<!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>6.5. AMQP Intrinstic Management - Apache Qpid™</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://github.com/alanconway/proton-go.git"/> + <meta name="go-source" + content="qpid.apache.org +https://github.com/alanconway/proton-go/tree/master/README.md +https://github.com/alanconway/proton-go/tree/master{/dir} +https://github.com/alanconway/proton-go/blob/master{/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>™</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/java-broker/index.html">Java broker</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-java-6.0.0/index.html">Qpid Java 6.0.0</a></li><li><a href="/releases/qpid-java-6.0.0/java-broker/book/index.html">AMQP Messaging Broker (Java)</a></li><li>6.5. AMQP Intrinstic Management</li></ul> + + <div id="-middle-content"> + <div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">6.5. AMQP Intrinstic Management</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Management-Channel-JMX.html">Prev</a> </td><th align="center" width="60%">Chapter 6. Management Channels</th><td align="right" width="20%"> <a accesskey="n" href="Java-Broker-Management-Channel-QMF.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a id="Java-Broker-Management-Channel-AMQP-Intrinstic"></a>6.5. AMQP Intrinstic Management</h2></div></div></div><p>The AMQP protocols 0-8..0-10 allow for creation, deletion and query of Exchanges, Queue + and Bindings.</p><p>The exact details of how to utilise this commands depends of the client. See the + documentation accompanying the client for details.</p></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Management-Channel-JMX.html">Prev</a> </td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Management-Channel.html">Up</a></td><td align="right" width="40%"> <a accesskey="n" href="Java-Broker-Management-Channel-QMF.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">6.4. JMX Management </td><td align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td align="right" valign="top" width="40%"> 6.6. QMF</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="http://www.apache.org/security/">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 © 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> Added: qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-JMX.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-JMX.html?rev=1718924&view=auto ============================================================================== --- qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-JMX.html (added) +++ qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-JMX.html Wed Dec 9 17:41:59 2015 @@ -0,0 +1,279 @@ +<!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>6.4. JMX Management - Apache Qpid™</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://github.com/alanconway/proton-go.git"/> + <meta name="go-source" + content="qpid.apache.org +https://github.com/alanconway/proton-go/tree/master/README.md +https://github.com/alanconway/proton-go/tree/master{/dir} +https://github.com/alanconway/proton-go/blob/master{/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>™</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/java-broker/index.html">Java broker</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-java-6.0.0/index.html">Qpid Java 6.0.0</a></li><li><a href="/releases/qpid-java-6.0.0/java-broker/book/index.html">AMQP Messaging Broker (Java)</a></li><li>6.4. JMX Management</li></ul> + + <div id="-middle-content"> + <div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">6.4. JMX Management</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Management-Channel-REST-API.html">Prev</a> </td><th align="center" width="60%">Chapter 6. Management Channels</th><td align="right" width="20%"> <a accesskey="n" href="Java-Broker-Management-Channel-AMQP-Intrinstic.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a id="Java-Broker-Management-Channel-JMX"></a>6.4. JMX Management</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-JMX-Introduction"></a>6.4.1. Introduction</h3></div></div></div><p>The JMX management plugin provides a series of managed beans (MBeans) allowing you to + control and monitor the Broker via an industry compliant interface. This provides a + convenient integration point for a variety of Infrastructure Monitoring Solutions, + tools such as Jconsole and VisualVM, as well as custom Java programs and scripts.</p><p>The following sections describe how to connect to JMX, the configuration of the JMX + plugin covering topis including securing with SSL, programmatically interacting with + Qpid MBeans and finally a summary of all the MBeans made available from by the + plugin.</p><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Important</h3><p>For new development work, the reader is directed towards the strategic <a class="link" href="Java-Broker-Management-Channel-Web-Console.html" title="6.2. Web Management Console">Web Management + Console</a> and the <a class="link" href="Java-Broker-Management-Channel-REST-API.html" title="6.3. REST API">REST API</a>. Use the + Web/REST interfaces in preference to JMX whenever possible. The JMX interface will be + withdrawn in a future release.</p></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-JMX-Plugin-DefaultConfiguration"></a>6.4.2. Default Configuration</h3></div></div></div><p>By default, the Broker is shipped with JMX <span class="emphasis"><em>disabled</em></span>. + To enable it, it necessary to add two ports: one serving the protocol JMX_RMI and one for + the RMI registry. This can be done using the Web Management Console. + </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-JMX-Plugin-ConnectingToJMX"></a>6.4.3. Connecting to JMX</h3></div></div></div><p>The following example uses Jconsole to illustrates how to connect to JMX using jconsole. + Jconsole is a management tool that comes with the JDK. It provides a very simple view of the MBeans, + but requires no special configuration to be used with Qpid.</p><p>For full details of Jconsole itself refer to Oracle's <a class="ulink" href="http://docs.oracle.com/javase/7/docs/technotes/guides/management/jconsole.html" target="_top">JConsole Guide</a>.</p><p>Jconsole can be used to connect to local or remote Java processes. On startup, it + presents a list of all the Java processes running on the local host and also allows you + to specify a service url to connect to a Java process running on a remote host.</p><p>To start Jconsole on the command line, type:</p><pre class="programlisting">jconsole</pre><div class="section"><div class="titlepage"><div><div><h4 class="title"><a id="Java-Broker-Management-Channel-JMX-Plugin-ConnectingToJMX-Local"></a>6.4.3.1. Local</h4></div></div></div><p>To connect to a Broker running locally, simply select the process from the list. + You can identify the Broker by looking for its classname + <code class="literal">org.apache.qpid.server.Main</code>.</p></div><div class="section"><div class="titlepage"><div><div><h4 class="title"><a id="Java-Broker-Management-Channel-JMX-Plugin-ConnectingToJMX-Remote"></a>6.4.3.2. Remote</h4></div></div></div><p>To connect to a broker running remotely, provide the hostname and port number of + the <span class="emphasis"><em>RMI registry port</em></span> (e.g. <code class="literal">hostname:8999</code>) + and a valid username and password.</p><p>You can also provide a service url in the form + <code class="literal">service:jmx:rmi:///jndi/rmi://hostname:8999/jmxrmi</code></p><div class="figure"><a id="idm140683146789488"></a><p class="title"><strong>Figure 6.7. Making a remote JMX connection to a Broker using jconsole</strong></p><div class="figure-contents"><div><img alt="Making a remote JMX connection to a Broker using jconsole" src="images/JMX-Connect-Remote.png" /></div></div></div><br class="figure-break" /></div><p>Once you are connected expand the tree of nodes marked + <code class="literal">org.apache.qpid</code> to begin to interact with the Qpid MBeans.</p><div class="figure"><a id="idm140683146786832"></a><p class="title"><strong>Figure 6.8. Qpid MBean hierarchy</strong></p><div class="figure-contents"><div><img alt="Qpid MBean hierarchy" src="images/JMX-Connect-MBeans.png" /></div></div></div><br class="figure-break" /><div class="section"><div class="titlepage"><div><div><h4 class="title"><a id="Java-Broker-Management-Channel-JMX-Plugin-ConnectingToJMX-SSL"></a>6.4.3.3. Connecting to a remote Broker protected by SSL</h4></div></div></div><p>If you are connecting to a remote Broker whose JMX connector port has been secured + with SSL certificate signed by a private CA (or a self-signed certificate), you will + need to pass a trust store and trust store password to Jconsole. If this is + required, start jconsole with the following options:</p><pre class="programlisting">jconsole -J-Djavax.net.ssl.trustStore=jmxtruststore.jks -J-Djavax.net.ssl.trustStorePassword=password</pre></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-JMX-Example-Client"></a>6.4.4. Example JMX Client</h3></div></div></div><p>The following java snippet illustrates a JMX client that connects to Qpid over JMX + passing a userid and password, looks up the <a class="ulink" href="http://svn.apache.org/viewvc/qpid/java/trunk/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java?view=co" target="_top">ManagedBroker</a> object corresponding to the <code class="literal">myvhost</code> + virtualhost, then invokes a method on the virtualhost to create a new queue.</p><p>A full introduction to custom JMX clients is beyond the scope of this book. For this + the reader is directed toward Oracle's <a class="ulink" href="http://docs.oracle.com/javase/tutorial/jmx/" target="_top">JMX + tutorial.</a></p><div class="example"><a id="Java-Broker-Management-JMX-Example-Client-Code"></a><p class="title"><strong>Example 6.7. JMX Client illustrating the creation of a new queue</strong></p><div class="example-contents"><pre class="programlisting"> +Map<String, Object< environment = new HashMap<String, Object>(); +environment.put(JMXConnector.CREDENTIALS, new String[] {"admin","password"}); +// Connect to service +JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:8999/jmxrmi"); +JMXConnector jmxConnector = JMXConnectorFactory.connect(url, environment); +MBeanServerConnection mbsc = jmxConnector.getMBeanServerConnection(); +// Object name for ManagedBroker mbean for virtualhost myvhost +ObjectName objectName = new ObjectName("org.apache.qpid:type=VirtualHost.VirtualHostManager,VirtualHost=\"myvhost\""); +// Get the ManagedBroker object +ManagedBroker managedBroker = JMX.newMBeanProxy(mbsc, objectName, ManagedBroker.class);; + +// Create the queue named "myqueue" +managedBroker.createNewQueue("myqueue", null, true);</pre></div></div><br class="example-break" /><p>The Qpid classes required for a custom JMX client are included in the + <code class="literal">qpid-management-common</code> artefact.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-JMX-MBeans"></a>6.4.5. The MBeans</h3></div></div></div><p>The following table summarises the available MBeans. The MBeans are self-describing: + each attribute and operation carry a description describing their purpose. This + description is visible when using tools such Jconsole. They are also available on + Management interfaces themselves (linked below).</p><div class="table"><a id="idm140683146772784"></a><p class="title"><strong>Table 6.2. Qpid Broker MBeans</strong></p><div class="table-contents"><table border="1" summary="Qpid Broker MBeans"><colgroup><col /><col /></colgroup><thead><tr><th>Management Interface</th><th>Object Name</th></tr></thead><tbody><tr><td rowspan="2"> + <p> + <a class="ulink" href="http://svn.apache.org/viewvc/qpid/java/trunk/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java?view=co" target="_top">ManagedBroker</a> + </p> + </td><td> + <p> + <code class="literal">org.apache.qpid:type=VirtualHost.VirtualHostManager,VirtualHost="<em class="replaceable"><code>virtualhostname</code></em>"</code> + </p> + </td></tr><tr><td> + <p>MBean corresponding to the named virtualhost. Allows operations + such as the creation/deletion of queues and exchanges on that + virtualhost and virtualhost level statistics.</p> + </td></tr><tr><td rowspan="2"> + <p> + <a class="ulink" href="http://svn.apache.org/viewvc/qpid/java/trunk/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java?view=co" target="_top">ManagedQueue</a> + </p> + </td><td> + <p> + <code class="literal">org.apache.qpid:type=VirtualHost.Queue,VirtualHost="<em class="replaceable"><code>virtualhostname</code></em>",name="<em class="replaceable"><code>queuename</code></em>"</code> + </p> + </td></tr><tr><td> + <p>MBean corresponding to the named queue on the given virtualhost. + Allows queue management operations such as view message, move + message and clear queue. Exposes attributes such as queue depth and + durability.</p> + </td></tr><tr><td rowspan="2"> + <p> + <a class="ulink" href="http://svn.apache.org/viewvc/qpid/java/trunk/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java?view=co" target="_top">ManagedExchange</a> + </p> + </td><td> + <p> + <code class="literal">org.apache.qpid:type=VirtualHost.Exchange,VirtualHost="<em class="replaceable"><code>virtualhostname</code></em>",name="<em class="replaceable"><code>amq.direct</code></em>",ExchangeType=<em class="replaceable"><code>type</code></em></code> + </p> + </td></tr><tr><td> + <p>MBean corresponding to the named exchange on the given + virtualhost. Allows exchange management operations such as the + creation and removal of bindings. The supported exchange types are + exposed by the <code class="literal">exchangeTypes</code> attribute of the + virtualhost.</p> + </td></tr><tr><td rowspan="2"> + <p> + <a class="ulink" href="http://svn.apache.org/viewvc/qpid/java/trunk/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java?view=co" target="_top">ManagedConnection</a> + </p> + </td><td> + <p> + <code class="literal">org.apache.qpid:type=VirtualHost.Connection,VirtualHost="<em class="replaceable"><code>virtualhostname</code></em>",name="<em class="replaceable"><code>/peerid:ephemeralport</code></em>"</code> + </p> + </td></tr><tr><td> + <p>MBean representing a active AMQP connection to the named virtual + host. Name is formed from the IP and ephemeral port of the peer. + Attributes include the client version and connection level + statistics.</p> + </td></tr><tr><td rowspan="2"> + <p> + <a class="ulink" href="http://svn.apache.org/viewvc/qpid/java/trunk/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java?view=co" target="_top">UserManagement</a> + </p> + </td><td> + <p> + <code class="literal">org.apache.qpid:type=UserManagement,name="UserManagement-<em class="replaceable"><code>authentication + manager name</code></em>"</code> + </p> + </td></tr><tr><td> + <p>When using <a class="link" href="Java-Broker-Security.html#Java-Broker-Security-PlainPasswordFile-Provider" title="8.1.7. Plain Password File (Deprecated)">Plain + password provider</a> or <a class="link" href="Java-Broker-Security.html#Java-Broker-Security-Base64MD5PasswordFile-Provider" title="8.1.9. Base64MD5 Password File (Deprecated)">Base 64 MD5 password provider</a>, permits user operations + such creation and deletion of users. and password changes.</p> + </td></tr><tr><td rowspan="2"> + <p> + <a class="ulink" href="http://svn.apache.org/viewvc/qpid/java/trunk/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ServerInformation.java?view=co" target="_top">ServerInformation</a> + </p> + </td><td> + <p> + <code class="literal">org.apache.qpid:type=ServerInformation,name=ServerInformation</code> + </p> + </td></tr><tr><td> + <p>Exposes broker wide statistics, product version number and JMX + management API version number.</p> + </td></tr><tr><td rowspan="2"> + <p> + <a class="ulink" href="http://svn.apache.org/viewvc/qpid/java/trunk/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java?view=co" target="_top">LoggingManagement</a> + </p> + </td><td> + <p> + <code class="literal">org.apache.qpid:type=LoggingManagement,name=LoggingManagement</code> + </p> + </td></tr><tr><td> + <p>MBean permitting basic control of first configured Broker FileLogger only. If + no FileLoggers are associated with the Broker, this Mbean will be absent. It is + recommended that new applications use the Web Management or REST API to control + logging. See <a class="xref" href="Java-Broker-Runtime.html#Java-Broker-Runtime-Logging" title="9.1. Logging">Section 9.1, “Logging”</a>.</p> + </td></tr></tbody></table></div></div><br class="table-break" /></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Management-Channel-REST-API.html">Prev</a> </td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Management-Channel.html">Up</a></td><td align="right" width="40%"> <a accesskey="n" href="Java-Broker-Management-Channel-AMQP-Intrinstic.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">6.3. REST API </td><td align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td align="right" valign="top" width="40%"> 6.5. AMQP Intrinstic Management</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="http://www.apache.org/security/">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 © 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> Added: qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-QMF.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-QMF.html?rev=1718924&view=auto ============================================================================== --- qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-QMF.html (added) +++ qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-QMF.html Wed Dec 9 17:41:59 2015 @@ -0,0 +1,144 @@ +<!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>6.6. QMF - Apache Qpid™</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://github.com/alanconway/proton-go.git"/> + <meta name="go-source" + content="qpid.apache.org +https://github.com/alanconway/proton-go/tree/master/README.md +https://github.com/alanconway/proton-go/tree/master{/dir} +https://github.com/alanconway/proton-go/blob/master{/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>™</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/java-broker/index.html">Java broker</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-java-6.0.0/index.html">Qpid Java 6.0.0</a></li><li><a href="/releases/qpid-java-6.0.0/java-broker/book/index.html">AMQP Messaging Broker (Java)</a></li><li>6.6. QMF</li></ul> + + <div id="-middle-content"> + <div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">6.6. QMF</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Management-Channel-AMQP-Intrinstic.html">Prev</a> </td><th align="center" width="60%">Chapter 6. Management Channels</th><td align="right" width="20%"> <a accesskey="n" href="Java-Broker-Management-Managing-Entities.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a id="Java-Broker-Management-Channel-QMF"></a>6.6. QMF</h2></div></div></div><p>QMF is provided by an optional plugin.</p></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Management-Channel-AMQP-Intrinstic.html">Prev</a> </td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Management-C hannel.html">Up</a></td><td align="right" width="40%"> <a accesskey="n" href="Java-Broker-Management-Managing-Entities.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">6.5. AMQP Intrinstic Management </td><td align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td align="right" valign="top" width="40%"> Chapter 7. Managing Entities</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="http://www.apache.org/security/">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 © 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> Added: qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-REST-API.html URL: http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-REST-API.html?rev=1718924&view=auto ============================================================================== --- qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-REST-API.html (added) +++ qpid/site/docs/releases/qpid-java-6.0.0/java-broker/book/Java-Broker-Management-Channel-REST-API.html Wed Dec 9 17:41:59 2015 @@ -0,0 +1,282 @@ +<!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>6.3. REST API - Apache Qpid™</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://github.com/alanconway/proton-go.git"/> + <meta name="go-source" + content="qpid.apache.org +https://github.com/alanconway/proton-go/tree/master/README.md +https://github.com/alanconway/proton-go/tree/master{/dir} +https://github.com/alanconway/proton-go/blob/master{/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>™</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/java-broker/index.html">Java broker</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-java-6.0.0/index.html">Qpid Java 6.0.0</a></li><li><a href="/releases/qpid-java-6.0.0/java-broker/book/index.html">AMQP Messaging Broker (Java)</a></li><li>6.3. REST API</li></ul> + + <div id="-middle-content"> + <div class="docbook"><div class="navheader"><table summary="Navigation header" width="100%"><tr><th align="center" colspan="3">6.3. REST API</th></tr><tr><td align="left" width="20%"><a accesskey="p" href="Java-Broker-Management-Channel-Web-Console.html">Prev</a> </td><th align="center" width="60%">Chapter 6. Management Channels</th><td align="right" width="20%"> <a accesskey="n" href="Java-Broker-Management-Channel-JMX.html">Next</a></td></tr></table><hr /></div><div class="section"><div class="titlepage"><div><div><h2 class="title"><a id="Java-Broker-Management-Channel-REST-API"></a>6.3. REST API</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-Introduction"></a>6.3.1. Introduction</h3></div></div></div><p>This section describes the REST API provided by the Java Broker. The REST API is intended + for use by developers who wish to automate the management or monitoring of the Qpid Broker. It + is also very useful for adhoc monitoring on the command line using tools such as + <code class="literal">curl</code>.</p><p>The REST API provides access to all of the Broker's entities using hierarchical paths + expressed by the URI. Responses are returned in JSON format.</p><p>The <code class="literal">GET</code> method request retrieves information about an object, the + <code class="literal">DELETE</code> method requests the removal of one, and the <code class="literal">PUT</code> + or <code class="literal">POST</code> methods perform updates or create new objects. The + <code class="literal">POST</code> method is also used to invoke operations.</p><p>The REST API is versioned with the version number embedded withinthe URI. The general form + of the URI is <code class="literal">/api/<version></code> where <version> is a major model + version prefixed with "v", for example, v3. For convenience the alias + <code class="literal">latest</code> (<code class="literal">/api/latest</code>) signifies the latest supported + version.</p><p>There are also some ancillary services under URI <code class="literal">/service</code> used for + authentication and logout.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-APIDocs"></a>6.3.2. REST API documentation</h3></div></div></div><p>REST API documentation is available on-line from any Java Broker at location + <code class="literal">/apidocs</code>. It is also linked from the menu of the Web Management Console. + </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-Authentication"></a>6.3.3. Authentication</h3></div></div></div><p>Before you can use the REST API, you must authenticate. Authentication decisions are made + by the <a class="link" href="Java-Broker-Concepts-Authentication-Providers.html" title="4.9. Authentication Providers">authentication + provider</a> associated with HTTP <a class="link" href="Java-Broker-Concepts-Ports.html" title="4.8. Ports">port</a> + on which you connect.</p><p>You may authenticate using <a class="ulink" href="https://www.ietf.org/rfc/rfc4422.txt" target="_top">SASL</a> + (<code class="literal">/service/sasl</code>) or <a class="ulink" href="https://tools.ietf.org/html/rfc2617" target="_top">HTTP + Basic Authentication</a>. The latter is convienent when using tools such as + <code class="literal">curl</code> on the command line. This is illustrated in the examples + below.</p><p>For SASL authentication use a <code class="literal">GET</code> request to + <code class="literal">/service/sasl</code> to get a list of supported SASL mechanisms, and use + <code class="literal">PUT</code> to the same URL to perform the SASL negotiation.</p><p>It is possible to end an authenticated session using + <code class="literal">/service/logout</code>.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-Create"></a>6.3.4. Configured Object creation</h3></div></div></div><p>Methods PUT or POST can be used to create ConfiguredObject.</p><p> ConfiguredObject can be created by submitting PUT request against ConfiguredObject full + URI (the one ending with configured object name) or by submitting PUT/POST request against + parent URI. The request encoding should be json (application/json) and request body should + contain attributes values in json format. On successful completion of operation a response + should be returned having response status code set to 201 and response header "Location" set + to ConfiguredObject full URI. If object with a such name/id already exist and POST/PUT + requests is made against parent URI, an error response should be returned having response code + 409 (conflict) and body containing the json with the reason of operation failure. If object + with a such name/id already exist and and PUT request is made against ConfiguredObject full + URI, then ConfiguredObject update should be performed and http status code 200 should be + returned. If ConfiguredObject cannot be created because of validation failure(s) the response + should have http status code set 422 (Unprocessible Entity) and body should contain json with + the reason of operation failure. On any other failure to create ConfiguredObject the response + should have status code set to 400 (Bad Request) and payload should contain a json with error + explaining the exact reason of failure. </p><div class="example"><a id="idm140683146882368"></a><p class="title"><strong>Example 6.1. Examples of REST calls for Queue creation</strong></p><div class="example-contents"><p> To create Queue with name "my-queue" on a virtual host with name "vh" (which is + contained within virtual host node with name "vhn") either of the following requests should + be made: </p><pre class="screen">PUT /api/latest/queue/vhn/vh HTTP/1.1</pre><pre class="screen">POST /api/latest/queue/vhn/vh HTTP/1.1</pre><pre class="screen">PUT /api/latest/queue/vhn/vh/my-queue HTTP/1.1</pre><p> Response code 201 should be returned on successful queue creation. Response header + "Location" should be set to "/api/latest/queue/test/my-queue". If queue with name "my-queue" + already exists and either of 2 first requests above were used, an error response with + response code 409 (conflict) and body containing json with message that queue exists should + be returned. If queue with name "my-queue" exists and last request is used, then Queue + update should occur. </p></div></div><br class="example-break" /></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-Update"></a>6.3.5. Configured Object update</h3></div></div></div><p>Methods PUT or POST can be used to update ConfiguredObject.</p><p> ConfiguredObject can be updated by submitting PUT or POST request against + ConfiguredObject full URI (the one ending with configured object name). The request encoding + should be json (application/json) and request body should contain a ConfiguredObject json + (with all or only modified attributes). On successful completion of operation a response code + 200 should be returned. If ConfiguredObject does not exists and PUT method is used, such + object should be created (201 response will be returned in this case). If ConfiguredObject + does not exists and POST method is used, an error response should be returned having response + status code 404 and payload with json explaining the problem. If any error occur on update, a + response with response code 400 or 422 or 404 should be sent back to the client containing + json body with error details. </p><div class="example"><a id="idm140683146875440"></a><p class="title"><strong>Example 6.2. Examples of REST calls for Queue update</strong></p><div class="example-contents"><p>To update Queue with name "my-queue" on a virtual host with name "vh" (contained in + virtual host node with name "vhn") either of the following requests can be made:</p><pre class="screen">POST /api/latest/queue/vhn/vh/my-queue HTTP/1.1</pre><pre class="screen">POST /api/latest/queue/vhn/vh/my-queue HTTP/1.1</pre></div></div><br class="example-break" /></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-Delete"></a>6.3.6. Configured Object deletion</h3></div></div></div><p>Method DELETE can be used to delete ConfiguredObject. Alternatively, ConfiguredObject can + be deleted with update request having desiredState attribute set to value "DELETED". POST or + PUT methods can be used in this case.</p><p>On successful completion of operation a response code 200 should be returned.</p><p>With DELETE method object ConfiguredObject in following ways:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>by submitting DELETE request using ConfiguredObject full URI (the one ending with + configured object name)</p></li><li class="listitem"><p>by submitting DELETE request using parent URI and providing parameters having the same + names as children attributes, for example, id, name, etc. Multiple children can be deleted + in a such way. Many "id" parameters can be specified in such requests. Only children with + matching attribute values will be deleted.</p></li></ul></div><div class="example"><a id="idm140683146867408"></a><p class="title"><strong>Example 6.3. Examples of REST calls for Queue deletion</strong></p><div class="example-contents"><p>To delete Queue with name "my-queue" on a virtual host with name "vh" (contained in + virtual host node with name "vhn") either of the following requests can be made:</p><pre class="screen">DELETE /api/latest/queue/vhn/vh/my-queue HTTP/1.1</pre><pre class="screen">DELETE /api/latest/queue/vhn/vh?name=my-queue HTTP/1.1</pre><pre class="screen">DELETE /api/latest/queue/vhn/vh?id=real-queue-id HTTP/1.1</pre></div></div><br class="example-break" /></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-Get"></a>6.3.7. Retrieving Configured Object details</h3></div></div></div><p>Method GET is used to retrieve ConfiguredObject attributes values and children + hierarchy.</p><p>A particular ConfiguredObject details can be retrieved using full ConfiguredObject URI + (the one ending with configured object name)</p><p>A collection of ConfiguredObjects can be retrieved using parent URI. Request parameters + (having the same name as attributes) can be used to filter the returned configured + objects.</p><p>The REST URI (/api/latest/>category</*) are hierarchical. It is permitted to replace + REST URI elements with an "asterisks" in GET requests to denote all object of a particular + type. Additionally, trailing object type in the URL hierarchy can be omitted. In this case GET + request will return all of the object underneath of the current object.</p><p>For example, for binding URL <code class="literal">http://localhost:8080/api/latest/binding/<vhost + node>/<vhost>/<exchange>/<queue>/<binding></code> replacing of + <code class="literal"><exchange></code> with "asterisks" + (<code class="literal">http://localhost:8080/api/<ver>/binding/<vhost + node>/<vhost>/*/<queue>/<binding></code>) will result in the GET + response containing the list of bindings for all of the exchanges in the virtualhost having + the given name and given queue.</p><p>If <code class="literal"><binding></code> and <code class="literal"><queue></code> are omitted in + binding REST URL (<code class="literal">http://localhost:8080/api/<ver>/binding/<vhost + node>/<vhost>/<exchangename></code>) the GET request will result in + returning all bindings for all queues for the given exchange in the virtual host. </p><p>Additional parameters supported in GET requests:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">depth</span></dt><dd><p>To restrict the depth of hierarchy of configured objects to return in + response</p></dd><dt><span class="term">actuals</span></dt><dd><p>If set to "true" attribute actual values are returned instead of effective</p></dd><dt><span class="term">includeSysContext</span></dt><dd><p>If set to "true" all system context variables are returned</p></dd><dt><span class="term">inheritedActuals</span></dt><dd><p>If set to "true" actual values for all inherited context is returned.</p></dd><dt><span class="term">oversize</span></dt><dd><p>Sets the maximum length for values of over-sized attributes to trim</p></dd><dt><span class="term">extractInitialConfig</span></dt><dd><p>If set to "true", the returned json can be used as initial configuration.</p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-Operations"></a>6.3.8. Configured Object operations</h3></div></div></div><p>Method POST is used to invoke Configured Objects operations. Some operations support + parameters. Pass parameters using a JSON request body containing a map with a map entry for + each parameter. </p><div class="example"><a id="idm140683146842656"></a><p class="title"><strong>Example 6.4. Example of REST call to invoke the Queue clear queue operation</strong></p><div class="example-contents"><p>To clear the queue with name "my-queue" on a virtual host with name "vh".</p><pre class="screen">POST api/latest/queue/default/vhn/vh/my-queue/clearQueue HTTP/1.1</pre></div></div><br class="example-break" /></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-Status-Codes"></a>6.3.9. HTTP status codes returned by REST interfaces</h3></div></div></div><div class="table"><a id="idm140683146839472"></a><p class="title"><strong>Table 6.1. HTTP status codes returned by REST interfaces</strong></p><div class="table-contents"><table border="1" summary="HTTP status codes returned by REST interfaces"><colgroup><col /><col /></colgroup><thead><tr><th>Status code</th><th>Descri ption</th></tr></thead><tbody><tr><td> + <p>200</p> + </td><td> + <p>REST request is successfully completed. This status code can be returned by + update, delete and get requests.</p> + </td></tr><tr><td> + <p>201</p> + </td><td> + <p>New configured object is created. It is returned by REST PUT and POST requests + for creation of configured objects.</p> + </td></tr><tr><td> + <p>400</p> + </td><td> + <p>REST request cannot be performed due to errors in request. It can be returned + from create, update and delete requests. The details of a problem are provided in + the response payload in json format.</p> + </td></tr><tr><td> + <p>401</p> + </td><td> + <p>The request requires user authentication</p> + </td></tr><tr><td> + <p>403</p> + </td><td> + <p>Execution of request is not allowed due to failure to authorize user + operation.</p> + </td></tr><tr><td> + <p>404</p> + </td><td> + <p> The requested configured object cannot be found. This status code can be + returned from POST update requests if configured object does not exist. The reason + for the status code is provided in the response payload in json format. </p> + </td></tr><tr><td> + <p>409</p> + </td><td> + <p>The request can not be performed because its execution can create conflicts in + the broker. This status code can be returned from POST/PUT create requests against + parent URI if configured object with requested name or id already exists. The status + code 409 can also be returned if removal or update of configured object can violate + system integrity. The reason for the status code is provided in the response payload + in json format. </p> + </td></tr><tr><td> + <p>422</p> + </td><td> + <p>The request can not be performed because provided information either incomplete + or invalid. This status code can be returned from create or update requests. The + reason for the status code is provided in the response payload in json + format.</p> + </td></tr></tbody></table></div></div><br class="table-break" /></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="Java-Broker-Management-Channel-REST-API-Examples"></a>6.3.10. Examples of REST requests with curl</h3></div></div></div><div class="example"><a id="idm140683146814896"></a><p class="title"><strong>Example 6.5. Examples of queue creation using curl (authenticating as user admin):</strong></p><div class="example-contents"><pre class="programlisting"> +#create a durable queue +curl --user admin -X PUT -d '{"durable":true}' http://localhost:8080/api/latest/queue/<vhostnode name>/<vhostname>/<queuename> +#create a durable priority queue +curl --user admin -X PUT -d '{"durable":true,"type":"priority"}' http://localhost:8080/api/latest/queue/<vhostnode name>/<vhostname>/<queuename> + </pre></div></div><br class="example-break" /><div class="example"><a id="idm140683146813168"></a><p class="title"><strong>Example 6.6. Example of binding a queue to an exchange using curl</strong></p><div class="example-contents"><pre class="programlisting"> +curl --user admin -X PUT -d '{}' http://localhost:8080/api/latest/binding/<vhostnode name>/<vhostname>/<exchangename>/<queue-name>/<binding-name> + </pre></div></div><br class="example-break" /><p> NOTE: These curl examples utilise unsecure HTTP transport. To use the examples it is + first necessary enable Basic authentication for HTTP within the HTTP Management Configuration + (it is off by default). For details see <a class="xref" href="Java-Broker-Management-Managing-Plugin-HTTP.html" title="7.16. HTTP Plugin">Section 7.16, “HTTP Plugin”</a> + </p></div></div><div class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a accesskey="p" href="Java-Broker-Management-Channel-Web-Console.html">Prev</a> </td><td align="center" width="20%"><a accesskey="u" href="Java-Broker-Management-Channel.html">Up</a></td><td align="right" width="40%"> <a accesskey="n" href="Java-Broker-Management-Channel-JMX.html">Next</a></td></tr><tr><td align="left" valign="top" width="40%">6.2. Web Management Console </td><td align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td align="right" valign="top" width="40%"> 6.4. JMX Management</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="http://www.apache.org/security/">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 © 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> --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
