2016-12-15 4 views
1

私はタペストリー5.2.6で働いている、と私は(いくつかの処理に基づいて)私のJavaコードからJavaScriptのà呼び出そう、これは私のJavaコードです:タペストリーコードから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

@Injectではなく@Environmentalを試してください。彼らはどちらもうまくいくはずですが、試してみるべきことです。技術的に@Environmentalはより正確です。

+0

ご返信いただきありがとうございますが、それに起因するものではありません – Tarik

関連する問題