How to solve error: cannot find symbol message.reply(...); Vertx point-to-point
How to solve error: cannot find symbol message.reply(...); Vertx point-to-point
我有两个 java classes 使用 vert.x EventBus
.
进行通信
我有一个 Productor.java class:
package TP1;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.eventbus.EventBus;
import io.vertx.core.json.JsonObject;
public class Productor extends AbstractVerticle
{
public void start() throws Exception
{
System.out.println("> Launching Productor...");
EventBus ebReady = vertx.eventBus();
//Send ready message
ebReady.send("canal-ready", "ready", messageReady -> {
//If Consumer received the ready message
if(messageReady.succeeded())
{
//Parse json response
JsonObject jsonObject = new JsonObject(messageReady.result().body().toString());
//Get answer value
int answerValue = Calcul.factorial(jsonObject.getInteger("param"));
String answer = Integer.toString(answerValue);
messageReady.reply(answer);//ERROR HERE
}
else
System.out.println("> No response!");
});
}
}
和一个Consumer.java class:
package TP1;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.eventbus.EventBus;
import io.vertx.core.json.JsonObject;
public class Consumer extends AbstractVerticle
{
public void start() throws Exception
{
System.out.println("> Launching Consumer...");
String jsonString = "{\"class\":\"Calcul\",\"method\":\"factoriel\",\"param\":5}";
JsonObject jsonObj = new JsonObject(jsonString);
EventBus ebReady = vertx.eventBus();
//Wait for ready message
ebReady.consumer("canal-ready", messageReady -> {
//Parse the ready message
String readyString = messageReady.body().toString();
//Make sure it's the ready message
if(readyString.equals("ready"))
{
//Send json back (messageReady.succeeded())
messageReady.reply(jsonObj, messageReadyReply -> {
System.out.println(messageReadyReply);
});
}
});
}
}
我无法构建生产者 class 但对消费者没有问题。
Productor.java class 中的 messageReady.reply(answer);
部分有什么问题?
我有两个 java classes 使用 vert.x EventBus
.
我有一个 Productor.java class:
package TP1;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.eventbus.EventBus;
import io.vertx.core.json.JsonObject;
public class Productor extends AbstractVerticle
{
public void start() throws Exception
{
System.out.println("> Launching Productor...");
EventBus ebReady = vertx.eventBus();
//Send ready message
ebReady.send("canal-ready", "ready", messageReady -> {
//If Consumer received the ready message
if(messageReady.succeeded())
{
//Parse json response
JsonObject jsonObject = new JsonObject(messageReady.result().body().toString());
//Get answer value
int answerValue = Calcul.factorial(jsonObject.getInteger("param"));
String answer = Integer.toString(answerValue);
messageReady.reply(answer);//ERROR HERE
}
else
System.out.println("> No response!");
});
}
}
和一个Consumer.java class:
package TP1;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.eventbus.EventBus;
import io.vertx.core.json.JsonObject;
public class Consumer extends AbstractVerticle
{
public void start() throws Exception
{
System.out.println("> Launching Consumer...");
String jsonString = "{\"class\":\"Calcul\",\"method\":\"factoriel\",\"param\":5}";
JsonObject jsonObj = new JsonObject(jsonString);
EventBus ebReady = vertx.eventBus();
//Wait for ready message
ebReady.consumer("canal-ready", messageReady -> {
//Parse the ready message
String readyString = messageReady.body().toString();
//Make sure it's the ready message
if(readyString.equals("ready"))
{
//Send json back (messageReady.succeeded())
messageReady.reply(jsonObj, messageReadyReply -> {
System.out.println(messageReadyReply);
});
}
});
}
}
我无法构建生产者 class 但对消费者没有问题。
Productor.java class 中的 messageReady.reply(answer);
部分有什么问题?