blob: a1c19735faed3557cf21e13c912b519cc24bd6b9 [file] [log] [blame]
<div class="wiki-content maincontent"><p>Pure restart of the embedded broker is not advisable, since it's state could be corrupted. Therefore, you're advised to instantiate the broker again before restarting it.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
<pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">
BrokerService service = BrokerFactory.createBroker("xbean:activemq.xml");
service.start();
service.waitUntilStarted();
service.stop();
service.waitUntilStopped();
service = BrokerFactory.createBroker("xbean:activemq.xml");
service.start();
</pre>
</div></div>
<p>In 5.3 however, we allowed the force start of the broker that has been stopped for use cases that need this functionality. You can do it by using </p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
<pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">
BrokerService.start(boolean force);
</pre>
</div></div>
<p>method.</p>
<p>The following example demonstrates it.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
<pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">
BrokerService service = BrokerFactory.createBroker("xbean:activemq.xml");
service.start();
service.waitUntilStarted();
service.stop();
service.waitUntilStopped();
service.start(true);
</pre>
</div></div>
<p>However, it's better (more reliable) to instantiate the broker again if it is possible.</p></div>