Hi Felix, Many thanks for your answer,
That mean there is no a way to delete all a messages directly form my java client!!! I have wrote this code : public void purgeQueue(JmsDestination dst) { try { BrokerService broker = new BrokerService(); broker.setUseShutdownHook(false); broker.setPlugins(new BrokerPlugin[] { new JaasAuthenticationPlugin() }); broker.addConnector("tcp://localhost:0"); // broker.start(); mbeanServer = broker.getManagementContext().getMBeanServer(); // System.out.println("MbeanServer : "+broker.getManagementContext().isCreateMBeanServer()); ObjectName queueViewMBeanName = new ObjectName(domain + ":Type=Queue,Destination=" + dst + ",BrokerName=" + broker.getBrokerName()); if (mbeanServer.isRegistered(queueViewMBeanName)) { System.out.println("Bean Registered: " + queueViewMBeanName); } else { System.out.println("Could not find MBean!: " + queueViewMBeanName); } // Create a proxy to the QueueViewMBean QueueViewMBean queue = (QueueViewMBean) MBeanServerInvocationHandler .newProxyInstance(mbeanServer, queueViewMBeanName, QueueViewMBean.class, true); /**/ // Purge the queue queue.purge(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } But i have allways following exception : javax.management.InstanceNotFoundException: org.apache.activemq:Type=Queue,Destination=simple.queue,BrokerName=localhost at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean(Unknown Source) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(Unknown Source) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(Unknown Source) at javax.management.MBeanServerInvocationHandler.invoke(Unknown Source) at $Proxy0.purge(Unknown Source) I look forward to find out one way to delete alle messages in a Destination or only one message???. Many Thanks :-( fehm wrote: > > Hi abakar, > > This example below will read all message from a queue (until it is empty). > Make sure that no producer runs. > If you need to delete all messages you can also use jconsole > (http://activemq.apache.org/jmx.html) to empty the queue (operation > "purge"). > > > Felix > > > > import javax.jms.Connection; > import javax.jms.Destination; > import javax.jms.ExceptionListener; > import javax.jms.JMSException; > import javax.jms.Message; > import javax.jms.TextMessage; > import javax.jms.MessageConsumer; > import javax.jms.Session; > > > import org.apache.activemq.ActiveMQConnectionFactory; > > public class Test { > > /** > * @param args > */ > public static void main(String[] args) throws Exception { > > Message message = null ; > // your broker url > String sConnection = "tcp://0.0.0.0:61620"; > ActiveMQConnectionFactory connectionFactory = new > ActiveMQConnectionFactory(sConnection); > Connection connection = connectionFactory.createConnection(); > connection.start(); > > // create Session for the queue and register us in the server > Session session = connection.createSession(false, > Session.AUTO_ACKNOWLEDGE); > Destination queue = session.createQueue("YOUR_QUEUE_NAME"); > MessageConsumer consumer = session.createConsumer(queue); > > // polling for messages > while ( (message = consumer.receive()) != null ){ > if(message instanceof TextMessage){ > TextMessage tx = (TextMessage)message; > System.out.println(tx); > } > } > } > } > > > > > > > abakar wrote: >> >> Hello i am a new by ActiveMQ. I have tried form my java code to delete a >> message form queue but didn't work. >> >> I don't know how can i do that!!!!! >> >> how can I remove alle messages from a queue or only one message from >> Queue. >> >> Ich have lookout at google, Nabble and activeMQ Community but i didn't >> find one example as java code. >> >> please help me, i have more than two weeks and i tried many ways but >> without sucess. :-( >> >> Thank you so much >> >> > > > -- View this message in context: http://www.nabble.com/How-can-I-remove-a-message-from-Queue-tp25749799p25765613.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.