正在使用播放2.2.3版本。我有2個控制器,當我試圖從一個控制器調用一個方法(包含動作組合)到另一個控制器時,動作類不被調用。播放2 - 呼叫黑白2控制器方法不會調用動作
Controller1.java @CustomAction(actionName="myAction") public static Result getData() { System.out.println("From Controller 1"); return ok("From Controller 1"); }
Controller2.java public static Result index() { System.out.println("From Controller 2"); Result result = Controller1.getData(); String s =new String(JavaResultExtractor.getBody((SimpleResult) result)); return ok(index.render(s)); }
路由 GET /view controllers.Controller2.index() GET /getData controllers.Controller1.getData()
當調用http://localhost:9000/getData
,動作類被調用成功。
但是當我調用http://localhost:9000/view
時,action類沒有被調用。
我不確定什麼是從另一個控制器調用控制器方法的正確方法。 任何幫助,這將是非常有益的。
在此先感謝
謝謝你的回覆Donovan。正如你所說的,我將簡要介紹一下用例,以便讓我清楚問題陳述。 – user3776440 2014-10-06 14:08:29
用例之一。 - 假設我有一個像'@Restrict(@Group(「admin」))''Controller1''的getData'方法的授權註釋,那麼如果我從Controller2調用'getData'方法,條件將不會被評估。希望用例清楚。 – user3776440 2014-10-06 14:19:26
是否有任何理由不能將'@Restrict(@Group(「admin」))''添加到'Controller2.index()'中? – 2014-10-06 14:30:53