很多界面效果库都是使用JSON来提供服务的,例如ExtJS等。因此,为了更好的兼容这些类库,我们为CMSPAD增加了一个JSON服务的特性。
同样地,它也是通过Portlet来对页面进行服务的:
class SimplePortlet extends Portlet{
// 直接返回JSON字符串
public function jsonMyService1(){
return '{"hello":{"world":"JSON 测试"}}';
}
// 返回对象时,自动转换成JSON字符串
public function jsonMyService2(){
return array('hello' => array('world' => 'JSON 测试'));
}
}
而在客户端的代码中,我们可以这样调用:
<script type="text/javascript">
function callJSON(o){
alert(o.hello.world);
}
</script>
<button type="button" onclick="cmspad.json('SimplePortlet.myService1', callJSON);">JSON 测试</button>
下面看一下在实际应用中的JSON服务:我们在经典的
ExtJS Desktop 2.0演示中,可以通过远程调用来进行对桌面进行配置。源代码如下:
getDesktopConfig : function(){
// can call server for saved module id's
Ext.Ajax.request({
success: function(o){
var decoded = Ext.decode(o.responseText);
if(decoded.success){
this.initDesktopConfig(decoded.config);
}else{
// error
}
},
failure: function(){
// error
},
scope: this,
url: 'php/DesktopConfig.php'
});
}
上面的代码是使用Ext自带的AJAX组件进行远程调用的,而如果要使用CMSPAD的PHPortlet技术,该怎么办呢?
getDesktopConfig : function(){
var desktop = this;
cmspad.json('SimplePortlet.myDesktopExample', function(o){
desktop.initDesktopConfig(o.config);
});
}
这样,与ExtJS的整合即可完成。
分享到:
相关推荐
本压缩包文件包含了一个基于MATLAB实现BA无标度网络拓扑生成算法的程序,让我们深入探讨这个模型以及MATLAB在其中的角色。 **BA模型的两个关键特性:** 1. **增长特性(Growth)**:BA模型假设网络是动态增长的,...
2. 业务板块:中新集团的业务板块被分为四个主要部分:园区开发运营、产业载体配套、绿色公用以及多元化服务。这表明中新集团不仅在传统园区开发上拥有优势,还在产业服务、环境保护及增值服务上进行多元化布局。 3...
总的来说,中新药业的招股说明书提供了一个全面的视角,让投资者了解公司的基本情况、未来计划和潜在风险,以帮助投资者做出投资决策。投资者需仔细阅读并理解其中的信息,以评估投资中新药业的潜在回报和风险。
中新药业在医药资源的开发上潜力巨大,尤其是速效救心丸这一独家品种,预期在未来十年中,量和价格的增长潜力将远超过过去的增速。此外,公司当前的销售费用率较高,存在进一步下降的空间。在公司治理机制得以优化的...
【描述】:“中新集团:中新集团2021年半年度报告.zip”是一个压缩文件,其中包含了中新集团2021年上半年度的详细报告。ZIP格式是一种常见的文件压缩格式,用于将多个文件打包成一个单一的文件,以便于存储、传输和...
拒绝服务攻击(DOS/DDOS)是近年来愈演愈烈的一种攻击手段,其主要目的是造成目标主机的TCP/IP协议层拥塞、或者导致应用层异常终止而形成拒绝服务现象。中新金盾防火墙针对基于Internet的信息平台,需要对不可控网络...
ecshop中新定义的json文件, 提供给大家下载哦!!!
总的来说,通过这个"swift-展示Swift4.2中新特性示例的Xcodeplayground",开发者可以深入了解并实践Swift 4.2的每一个新特性,提升自己的Swift编程技能。无论是对于初学者还是经验丰富的开发者,都是一个宝贵的资源...
**中新力合“云融资服务平台”**是一个旨在解决中小企业融资难题的综合性平台。该平台利用云计算技术,通过标准化和规范化的金融服务管理,构建了一个开放式的金融服务池。此平台面向中小企业,能够根据其特定需求...
【中新集团2021年半年度报告】是中新苏州工业园区开发集团股份有限公司对2021年上半年运营状况的详尽总结。报告展示了公司在该时段的财务状况、业务进展以及潜在风险,旨在为投资者和相关利益方提供真实、准确、完整...
标题和描述中提到的"flex java环境中需要在tomcat的webapp中新加的war文件",实际上是指要将包含BlazeDS服务的WAR文件添加到Tomcat服务器的web应用程序结构中。这个WAR文件通常名为`blazeds.war`或`flex-services....
【中新药业-600329-公司深度报告】主要关注的是中国中药行业的领军企业中新药业在混改(混合所有制改革)后的变化和发展前景。混改是中国国有企业改革的重要举措,旨在通过引入非国有资本,提升企业的活力、竞争力和...
【中新智擎——服务机器人落地应用的先行者】 中新智擎是一家专注于服务机器人领域的创新企业,成立于2015年,近期获得了招商系中白产业投资基金的A轮融资,金额达到数千万美元。与市面上众多服务机器人公司不同的...
在这里,用户可以看到一个“列表”按钮,点击后可以输入服务器地址。将从服务器列表中复制的地址粘贴进去,保存设置,最后勾选“连接到服务器时更新服务器列表”。这样,即使在连接服务器时,电驴也会自动保持服务器...
GEM被设定为一个主要接纳小型和中型企业上市的市场,与主板相比,这些公司可能带有更高的投资风险。投资者应充分认识到这种风险,并在做出投资决策前进行充分且审慎的考虑。由于GEM上市的公司通常规模较小,其证券...
中新天津生态城智慧城市平台作为这样的典范,旨在通过先进的科技手段,打造一个可持续发展、生态友好且管理高效的新型城市。 1. 背景介绍 中新天津生态城智慧城市平台的建设源于对环保、可持续性和生活质量的追求...
广州中新知识城的规划,旨在打造一个集知识创新、科技研发、商务办公和宜居生活于一体的现代化新城。规划可能涵盖了以下几个关键点: 1. 土地利用规划:分析了现有土地资源,合理划分工业、商业、居住、绿地等功能...
当`fork()`被调用时,它会创建一个新的进程,这个新进程被称为子进程,而原来的进程则继续存在,称为父进程。子进程继承父进程的所有资源,但拥有独立的进程ID(PID)。在代码2中,可以看到`fork()`在循环中被调用,...
此次新股发行的背景和目的是为了提升中新赛克的资本实力,扩大市场份额,同时也为投资者提供了一个参与公司成长的机会。通过上市,公司可以利用募集的资金进行技术研发、市场拓展、优化运营等方面的投资,以提高核心...
【中新猕猴桃贸易商务谈判剧本】 在本次中新猕猴桃贸易商务谈判中,涉及到的主要角色包括双方的高层管理团队、财务、市场、采购、法律和技术部门的关键人员,以及翻译和辅助人员。以下是对各角色及其职责的详细阐述...