Sent: Friday, September 27, 2013 1:12 PM
To: DL CN SOCIAL
Subject: message raise: when use CL_BSP_WD_MESSAGE_SERVICE and when use CL_BSP_MESSAGES
林师傅曾经提过两个问题:
CL_BSP_WD_MESSAGE_SERVICE add的message最后怎样在ui上显示出来的?
做Enterprise search时,发现context node里有另一种message service 也有add_message的方法,但使用后最后在ui无法看到add的message。

我们在application里通过第一种办法add message时,实际只是把message 加到internal table里,
这个message service是一个singleton,在ui render时会把app 存在internal table里面的message 全部显示出来:
Regarding CL_BSP_MESSAGES: 其实它和前者一样,都仅仅把message放到自己的internal table里,但是webclient ui framework只取前者的internal table里的内容,对于后者直接忽略,因此通过后者add的message不会显示在ui上,除非developer自己手动设置一个显示用的ui element:
在app里通过CL_BSP_MESSAGES加message:
在bsp里面手动画一个message bar:
最后的效果:
这种behavior违反了crm ui 关于message area的guideline,因此在webclient ui environment里我们总应该用第一种方法去add message。