cleanidea 2010-10-21 22:31
浏览 215
已采纳

有了解 Ext.XTemplate 和 DWR 长连接 的吗 ?来帮我看下几个问题

dwr.xml 部分









Action 部分

        WebContext wctx = WebContextFactory.get();
        String currentPage = wctx.getCurrentPage();
        Collection<ScriptSession> sessions = wctx.getScriptSessionsByPage(currentPage);
        ScriptProxy s = new ScriptProxy(sessions);
        s.addFunctionCall("receiveMessages", msg, role);

msg和role 就是两个实体类对象了 ,作为参数传到页面上的receiveMessages方法 。

问题1:比如 Message有个属性是个实体类 Question , 怎么设置都没法set ,
msg.setQuestion(Question 的实体类对象);

说Question 未反转之类的错误,我在dwr.xml加了 Question 也还是报错,希望可以解释一下 。

页面部分
function receiveMessages(msg,role) {
var chatlog = Ext.getCmp('chatlog');
var tpl = new Ext.XTemplate(
'',
'',
'

{legionName}{sender}: {content:this.parseContent}

',
'',
'',

                {
            compiled : true,
            parseContent : function(content) {
                return Ext.util.Format.nl2br(Ext.util.Format.htmlEncode(content));
            },
            parseLegionName : function() {
                return legionName='${Session ["role"].legionName?default('数据异常')}';
            }

        }
    );

         tpl.append(chatlog.body, msg);
         tpl.append(chatlog.body, role);
    }


 Message的属性 sender ,  Role的属性legionName 。

问题2 :
'', 这个不起作用 ,
输出内容只输出 {sender} , {legionName}出不来 。

如果把输出内容不做判断 减少为
'

{legionName}{sender}: {content:this.parseContent}

',

输出的结果变成了:
(sender 的值) : 加内容 //一行
(legionName的值) : 不加内容 //;另外一行
明明是在同一个

标签里面,怎么换成两行输出,跟什么有关我不清楚 。

问题3:
输出内容的 A标签的 onclick方法 不能带字符串参数,数字可以,是我未进行转义吗 ?
onclick="showReceiver('{sender}'); 不行

  • 写回答

1条回答 默认 最新

  • lizhiyezi 2010-10-22 09:49
    关注

    2、 出现2行是应该你append 2次照成的。

    ''
    就要看你的parseLegionName返回值是否等于 Role的属性legionName 值。
    因为第一次tpl.append(chatlog.body, msg); 的时候msg没有legionName 属性会出现错误。

    你可以改成 tpl.append(chatlog.body, Ext.applyIf(msg,role));

    3、字符串需要加 冒号或者双引号。\'{sender}\' "{sender}"

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序