Index: trunk/src/test/java/omq/test/event/EventTest.java
===================================================================
--- trunk/src/test/java/omq/test/event/EventTest.java	(revision 67)
+++ 	(revision )
@@ -1,77 +1,0 @@
-package omq.test.event;
-
-import static org.junit.Assert.assertEquals;
-
-import java.util.Properties;
-
-import omq.common.broker.Broker;
-import omq.common.util.ParameterQueue;
-import omq.common.util.Serializer;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-public class EventTest {
-	private static EventTriggerImpl trigger;
-
-	@BeforeClass
-	public static void server() throws Exception {
-		Properties env = new Properties();
-		env.setProperty(ParameterQueue.USER_NAME, "guest");
-		env.setProperty(ParameterQueue.USER_PASS, "guest");
-
-		// Get host info of rabbimq (where it is)
-		env.setProperty(ParameterQueue.SERVER_HOST, "127.0.0.1");
-		env.setProperty(ParameterQueue.SERVER_PORT, "5672");
-		env.setProperty(ParameterQueue.DURABLE_QUEUES, "false");
-		env.setProperty(ParameterQueue.ENABLECOMPRESSION, "false");
-
-		// Set info about where the message will be sent
-		env.setProperty(ParameterQueue.RPC_EXCHANGE, "rpc_exchange");
-		env.setProperty(ParameterQueue.RETRY_TIME_CONNECTION, "2000");
-
-		trigger = new EventTriggerImpl();
-		Broker broker = new Broker(env);
-
-		broker.startTriggerEvent("trigger", trigger);
-
-		System.out.println("Server started");
-	}
-
-	@Test
-	public void eventTest() throws Exception {
-		String expected = "This is an event";
-		String actual = null;
-
-		Properties env = new Properties();
-		env.setProperty(ParameterQueue.USER_NAME, "guest");
-		env.setProperty(ParameterQueue.USER_PASS, "guest");
-
-		// Set host info of rabbimq (where it is)
-		env.setProperty(ParameterQueue.SERVER_HOST, "127.0.0.1");
-		env.setProperty(ParameterQueue.SERVER_PORT, "5672");
-		env.setProperty(ParameterQueue.DURABLE_QUEUES, "false");
-		env.setProperty(ParameterQueue.SERIALIZER_NAME, Serializer.JAVA);
-		env.setProperty(ParameterQueue.ENABLECOMPRESSION, "false");
-
-		// Set info about where the message will be sent
-		env.setProperty(ParameterQueue.RPC_EXCHANGE, "rpc_exchange");
-		// env.setProperty(ParameterQueue.DEBUGFILE, "c:\\middlewareDebug");
-
-		// Set info about the queue & the exchange where the ResponseListener
-		// will listen to.
-		env.setProperty(ParameterQueue.RPC_REPLY_QUEUE, "reply_queue");
-		env.setProperty(ParameterQueue.EVENT_REPLY_QUEUE, "event_queue");
-
-		Broker broker = new Broker(env);
-		EventTrigger et = broker.lookup("trigger", EventTrigger.class);
-
-		MessageListener ms = new MessageListener();
-		et.addListener(ms);
-		trigger.triggerEvent(expected);
-		Thread.sleep(500);
-		actual = ms.getMessage();
-
-		assertEquals(expected, actual);
-	}
-}
Index: trunk/src/test/java/omq/test/event/EventTrigger.java
===================================================================
--- trunk/src/test/java/omq/test/event/EventTrigger.java	(revision 67)
+++ 	(revision )
@@ -1,14 +1,0 @@
-package omq.test.event;
-
-import java.io.IOException;
-
-import omq.Remote;
-import omq.client.annotation.AsyncMethod;
-import omq.client.annotation.RemoteInterface;
-import omq.exception.SerializerException;
-
-@RemoteInterface
-public interface EventTrigger extends Remote {
-	@AsyncMethod
-	public void triggerEvent(String message) throws IOException, SerializerException;
-}
Index: trunk/src/test/java/omq/test/event/EventTriggerImpl.java
===================================================================
--- trunk/src/test/java/omq/test/event/EventTriggerImpl.java	(revision 67)
+++ 	(revision )
@@ -1,20 +1,0 @@
-package omq.test.event;
-
-import java.io.IOException;
-
-import omq.exception.SerializerException;
-import omq.server.RemoteObject;
-
-public class EventTriggerImpl extends RemoteObject implements EventTrigger {
-
-	/**
-	 * 
-	 */
-	private static final long serialVersionUID = 1L;
-
-	public void triggerEvent(String message) throws IOException, SerializerException {
-		MessageEvent event = new MessageEvent(message);
-		this.notifyEvent(event);
-	}
-	
-}
Index: trunk/src/test/java/omq/test/event/Message.java
===================================================================
--- trunk/src/test/java/omq/test/event/Message.java	(revision 70)
+++ trunk/src/test/java/omq/test/event/Message.java	(revision 70)
@@ -0,0 +1,7 @@
+package omq.test.event;
+
+import omq.Remote;
+
+public interface Message extends Remote {
+	public void setMessage(String message);
+}
Index: trunk/src/test/java/omq/test/event/MessageEvent.java
===================================================================
--- trunk/src/test/java/omq/test/event/MessageEvent.java	(revision 67)
+++ 	(revision )
@@ -1,28 +1,0 @@
-package omq.test.event;
-
-import omq.common.event.Event;
-
-public class MessageEvent extends Event {
-	/**
-	 * 
-	 */
-	private static final long serialVersionUID = 1L;
-
-	private String message;
-
-	public MessageEvent() {
-	}
-
-	public MessageEvent(String message) {
-		this.message = message;
-	}
-
-	public String getMessage() {
-		return message;
-	}
-
-	public void setMessage(String message) {
-		this.message = message;
-	}
-
-}
Index: trunk/src/test/java/omq/test/event/MessageImpl.java
===================================================================
--- trunk/src/test/java/omq/test/event/MessageImpl.java	(revision 70)
+++ trunk/src/test/java/omq/test/event/MessageImpl.java	(revision 70)
@@ -0,0 +1,21 @@
+package omq.test.event;
+
+import omq.server.RemoteObject;
+
+public class MessageImpl extends RemoteObject implements Message {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private String message;
+
+	@Override
+	public void setMessage(String message) {
+		this.message = message;
+	}
+
+	public String getMessage() {
+		return message;
+	}
+}
Index: trunk/src/test/java/omq/test/event/MessageListener.java
===================================================================
--- trunk/src/test/java/omq/test/event/MessageListener.java	(revision 67)
+++ 	(revision )
@@ -1,20 +1,0 @@
-package omq.test.event;
-
-import omq.common.event.EventListener;
-
-public class MessageListener extends EventListener<MessageEvent> {
-	private String message;
-
-	@Override
-	public void notifyEvent(MessageEvent event) {
-		message = event.getMessage();
-	}
-
-	public String getMessage() {
-		return message;
-	}
-
-	public void setMessage(String message) {
-		this.message = message;
-	}
-}
Index: trunk/src/test/java/omq/test/event/MessageTest.java
===================================================================
--- trunk/src/test/java/omq/test/event/MessageTest.java	(revision 70)
+++ trunk/src/test/java/omq/test/event/MessageTest.java	(revision 70)
@@ -0,0 +1,101 @@
+package omq.test.event;
+
+import static org.junit.Assert.assertEquals;
+
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Properties;
+
+import omq.common.broker.Broker;
+import omq.common.util.ParameterQueue;
+import omq.common.util.Serializer;
+
+import org.junit.After;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameters;
+
+@RunWith(value = Parameterized.class)
+public class MessageTest {
+	private static final String NAME = "message";
+
+	private static Broker broker;
+	private static Message serverProxy;
+	private static MessageImpl clientM1;
+	private static MessageImpl clientM2;
+
+	public MessageTest(String type) throws Exception {
+		Properties env = new Properties();
+		env.setProperty(ParameterQueue.USER_NAME, "guest");
+		env.setProperty(ParameterQueue.USER_PASS, "guest");
+
+		// Set host info of rabbimq (where it is)
+		env.setProperty(ParameterQueue.SERVER_HOST, "127.0.0.1");
+		env.setProperty(ParameterQueue.SERVER_PORT, "5672");
+		env.setProperty(ParameterQueue.DURABLE_QUEUES, "false");
+		env.setProperty(ParameterQueue.SERIALIZER_NAME, type);
+		env.setProperty(ParameterQueue.ENABLECOMPRESSION, "false");
+
+		// Set info about where the message will be sent
+		env.setProperty(ParameterQueue.RPC_EXCHANGE, "rpc_exchange");
+
+		// Set info about the queue & the exchange where the ResponseListener
+		// will listen to.
+		env.setProperty(ParameterQueue.RPC_REPLY_QUEUE, "reply_queue");
+		env.setProperty(ParameterQueue.EVENT_REPLY_QUEUE, "event_queue");
+
+		broker = new Broker(env);
+		serverProxy = broker.lookupMulti(NAME, Message.class);
+	}
+
+	@Parameters
+	public static Collection<Object[]> data() {
+		Object[][] data = new Object[][] { { Serializer.JAVA }, { Serializer.GSON }, { Serializer.KRYO } };
+		return Arrays.asList(data);
+	}
+
+	@BeforeClass
+	public static void client() throws Exception {
+		Properties env = new Properties();
+		env.setProperty(ParameterQueue.USER_NAME, "guest");
+		env.setProperty(ParameterQueue.USER_PASS, "guest");
+
+		// Get host info of rabbimq (where it is)
+		env.setProperty(ParameterQueue.SERVER_HOST, "127.0.0.1");
+		env.setProperty(ParameterQueue.SERVER_PORT, "5672");
+		env.setProperty(ParameterQueue.DURABLE_QUEUES, "false");
+		env.setProperty(ParameterQueue.ENABLECOMPRESSION, "false");
+
+		// Set info about where the message will be sent
+		env.setProperty(ParameterQueue.RPC_EXCHANGE, "rpc_exchange");
+		env.setProperty(ParameterQueue.RETRY_TIME_CONNECTION, "2000");
+
+		Broker broker = new Broker(env);
+		clientM1 = new MessageImpl();
+		broker.bind(NAME, clientM1);
+
+		Broker broker2 = new Broker(env);
+		clientM2 = new MessageImpl();
+		broker2.bind(NAME, clientM2);
+	}
+
+	@After
+	public void stop() throws Exception {
+		broker.stopBroker();
+	}
+
+	@Test
+	public void test() throws Exception {
+		String expected = "Hello";
+
+		serverProxy.setMessage(expected);
+		Thread.sleep(200);
+		assertEquals(expected, clientM1.getMessage());
+		assertEquals(expected, clientM2.getMessage());
+		serverProxy.setMessage("");
+		Thread.sleep(200);
+	}
+
+}
