2016-12-15 28 views
1

我與掛毯5.2.6工作,我嘗試從我的Java代碼(基於一些處理)一個JavaScript調用,這是我的Java代碼:如何從tapestry代碼調用javascript?

@Mixin 
private Dialog alert;  

@Inject 
private JavaScriptSupport javaScriptSupport; 

void callJavaScript() { 
     alert.initializeClient(WindowStyle.GREYLIGHTING); 
     javaScriptSupport.addScript("G2.alert('%s', {width:500, height:80, className:'bluelighting'});", 
       "Congratulations Tarik"); 
    } 

但我有此錯誤:

Caused by: org.apache.tapestry5.ioc.internal.OperationException: No object of type org.apache.tapestry5.services.javascript.JavaScriptSupport is available from the Environment. 

有人可以幫我解決這個錯誤,或者告訴我如何從我的java代碼中打開該彈出窗口?

NB:要測試callJavaScript()功能,我@AfterRender註釋,然後我彈出的頁面渲染後正確顯示。

回答

0

嘗試@Environmental而不是@Inject。他們都應該工作,但這是可以嘗試的。技術上@環境更加正確。

+0

感謝您的回覆,但不是因爲這個 – Tarik