既然一个是BSP,一个是JSP,当然有很多相通之处了。
CRM WebUI
每个应用的入口都是search,为了避免application developer重复造轮子,SAP WebUI的框架开发人员把搜索的逻辑实现在了tag advancedSearch里,这样SAP的应用开发人员就可以直接使用这个tag来实现搜索功能。
双击tag,可以看到实现的class和对应方法。
Hybris
jsp有类似的逻辑。看jsp抬头的那些定义,和BSP几乎一模一样。注意第8行的cms:component, 此处将一个UI component include进来。
runtime这个jsp的source code也会被转换成原生的html source code:
每个tag的render逻辑也分为render前,render中和render后。
请和BSP这个三个方法相比:
在执行具体render时,采取的逻辑也是delegate给对应的render class进行render。这个逻辑和Fiori控件的render方式一致,见我的文章A Tutorial how I do self-study on a given Fiori control and UI5 framework code behind里的第2篇: Control renderer:
https://blogs.sap.com/?p=133359
要获取更多Jerry的原创文章,请关注公众号"汪子熙":