Help with Paho MQTT

Hi everybody,

I'm using an Arduino Uno with MQTT to communicate with an Paho Java MQTT server.
Every think works expect one thing: each time the Paho Java MQTT publish a message, the program closes.
I'm want to know if is there a way to the program keeps running after the message is published.
What happens is: the Arduino "asks" something to the Java program (some information about another sensor, database,...) through MQTTListen, the Java program "answer it properly and after "answering the program closes (ends).
If nothing is posted by the Paho the program still working fine (listening other Arduino or ESPs, recording data on database,...) but when anything is published the program send the MQTT Message and closes (without errors or any alert, just closes like it has ended).
Do you know anyway to after posting a message the program keeps working, listening and answering other messages?

Here is the code of the MQTT Publish that I'm using:

public static void enviaMensagem(String content) {
String topic = "msgTratada";
int qos = 2;
String broker = "tcp://";
String clientId = "Servidor";

MqttClient client = new MqttClient(broker, clientId);
MqttConnectOptions conOpt = new MqttConnectOptions();

// Connect to the MQTT server
//log("Connecting to "+brokerUrl + " with client ID "+client.getClientId());

// Create and configure a message
MqttMessage message = new MqttMessage(content.getBytes());

// Send the message to the server, control is not returned until
// it has been delivered to the server meeting the specified
// quality of service.
client.publish(topic, message);

// Disconnect the client
} catch(MqttException me) {
System.out.println("reason "+me.getReasonCode());
System.out.println("msg "+me.getMessage());
System.out.println("loc "+me.getLocalizedMessage());
System.out.println("cause "+me.getCause());
System.out.println("excep "+me);


Thanks everybody!!!