【问题标题】:How to call javascript from tapestry code?如何从挂毯代码中调用javascript?
【发布时间】:2016-12-15 14:45:24
【问题描述】:

我正在使用 Tapestry 5.2.6,我尝试从我的 java 代码中调用 à javascript(基于一些处理),这是我的 java 代码:

@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 代码中打开该弹出窗口吗?

注意:为了测试callJavaScript() 函数,我用@AfterRender 对其进行了注释,然后我的弹出窗口在页面渲染后正确显示。

【问题讨论】:

    标签: javascript java tapestry


    【解决方案1】:

    尝试使用@Environmental 而不是@Inject。他们都应该工作,但这是值得尝试的。从技术上讲,@Environmental 更正确。

    【讨论】:

    • 感谢您的回复,但不是因为这个
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-14
    • 1970-01-01
    • 2017-07-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多