开发者社区> 问答> 正文

beetl有缓存吗?GroupTemplate.setSharedVars()问题请教?报错

@闲.大赋 你好,想跟你请教个问题:老大,我写了个Cache对象,里面有个get(String key)方法。将这个对象setSharedVars放到全局变量里面。现在情况是,我第一次访问页面的时候可以正常显示。但是从第二次开始就提示找不到get方法,报错如下:

=====================================

java.lang.NoSuchMethodError: com.jr123.core.common.JRCache.get(Ljava/lang/String;)Ljava/lang/Object;
at com.jr123.core.common.JRCache_get.value(Unknown Source)
at org.beetl.core.statement.VarAttribute.evaluate(VarAttribute.java:59)
at org.beetl.core.statement.VarRef.evaluate(VarRef.java:109)
at org.beetl.core.statement.JsonMapExpression.evaluate(JsonMapExpression.java:66)
at org.beetl.core.statement.TagStatement.execute(TagStatement.java:81)
at org.beetl.core.statement.BlockStatement.execute(BlockStatement.java:68)
at org.beetl.core.Tag.doBodyRender(Tag.java:61)
at org.beetl.core.Tag.getBodyContent(Tag.java:70)
at org.beetl.ext.tag.LayoutTag.render(LayoutTag.java:104)
at org.beetl.core.statement.TagStatement.runTag(TagStatement.java:108)
at org.beetl.core.statement.TagStatement.execute(TagStatement.java:87)
at org.beetl.core.statement.Program.execute(Program.java:70)
at org.beetl.core.Template.renderTo(Template.java:121)
at org.beetl.core.Template.renderTo(Template.java:87)
at org.beetl.ext.web.WebRender.render(WebRender.java:74)
at com.ramnight.rnext.RnBeetlRender.render(RnBeetlRender.java:25)

=====================================

还望老大指点

展开
收起
爱吃鱼的程序员 2020-06-14 20:24:05 916 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    用类型声明一下:

    directivedynamiccache;
    因为是个cahce里面含有不同对象类型,申明是动态的看看

    声明成动态的确实变正常了。但是需要在每个用到它的地方都要声明一次,有没有一劳永逸的办法啊?比如setSharedVars的时候配置一下什么的,多谢老大~千年等一回.........<spanstyle="font-family:微软雅黑,Verdana,sans-serif,宋体;font-size:14px;line-height:normal;background-color:#FFFFFF;">等一回...诶...<spanstyle="font-family:微软雅黑,Verdana,sans-serif,宋体;font-size:14px;line-height:normal;background-color:#FFFFFF;">诶...<spanstyle="font-family:微软雅黑,Verdana,sans-serif,宋体;font-size:14px;line-height:normal;background-color:#FFFFFF;">诶...<spanstyle="font-family:微软雅黑,Verdana,sans-serif,宋体;font-size:14px;line-height:normal;background-color:#FFFFFF;">诶<imgsrc="http://www.oschina.net/js/ke/plugins/emoticons/images/9.gif"alt="">救命啊...........

    GroupTemplate设置动态类型这个暂时还不支持,不过可以调用Template的 publicvoidbinding(StringvarName,Objecto,booleandynamic)

    来设置动态类型,你需要定制集成方式,在WebRender里,设置template.binding("cache",yourCache,true)。

    或者,自己写个functiongetCacheValue(key),也可以

    apce会议,我被“赶出”帝都了,上网不方便,你可以直接联系我qq,或者等后天

    多谢老大指点。我还是不用通用的get方法了,每个缓存写一个单独的get,这样看着也舒服点。另外我还有一个问题,一会发到另一个帖子上,还望老大继续指点。

    2020-06-14 20:24:21
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
基于英特尔 SSD 的虚拟机缓存解决SSD 立即下载
用户态高速块缓存方案 立即下载
高性能Web架构之缓存体系 立即下载