我正在使用播放框架2.6.17。 我在控制器中有一个称为“ MasterTag”的类。此类的索引函数返回JsonNode(return ok(jsonNode))值。
public class MasterTag extends Controller{
public Result index(){
ObjectMapper mapper = new ObjectMapper();
JsonNode responseNode = mapper.readTree("{\"mastertag\":\"0.5\"}");
return ok(responseNod);
}
}
我在控制器中还有一个名为“ HomeController”的类,其中有一个对MasterTag.index()的调用。返回类型为play.mvc.Result
如何从上述调用获得的结果中提取原始JsonNode? p>
答案 0 :(得分:0)
我没有答案如何获取Json,但我最终知道如何从Result获取String
1。
@Inject
Materializer materializer;
// this is another controller, I would like to get Result from
@Inject
URLExamplesController urlExampleContoller;
2。
public Result index() {
// how to convert Result into String
// caling function in another controller to get Result object
Result result = urlExampleContoller.getQuestyParameterExample2("test 123");
FiniteDuration finiteDuration = Duration.create(5000, TimeUnit.MILLISECONDS);
byte[] body = Await.result(
FutureConverters.toScala(result.body().consumeData(materializer)), finiteDuration).toArray();
String outputOfAnotherController = new String(body);
}