8年前,用MIDAS构建了常住人口户籍管理系统,采用的是DCOM技术,当时所谓的三层架构似乎非常高深。但是确实很适合区县集中的数据环境。
5年前,随着公安网络基础建设的进步,数据集中到了地市。DOCM已经无法满足大数据量,大并发量的需求。采用了WEBSERVICE技术,用JAVA开发的基于WEBLOGIC等平台的中间件,应该说是取得了不错的效果。
现在回头看看DELPHI提供的WEBSERVER技术,其实也应该还是不错的。最近想研究以下,一些小的项目其实还是可以采用DELPHI来开发WEBSERICE服务的。
- 开始研究DATASNAP遇到第一个问题DELPHI提供的WEB APP DEBUGER无法正常运行。启动以后一直提示网页无法打开,提示404错误,网上查了资料之后说:
If you find Web App Debugger keeps returning 404 errors, run the "serverinfo.exe" executable found in one of the delphi bin directories. This will register some default information in the registry and make things work.
运行上面提到的文件后正常。
以上文章来自:http://articles.techrepublic.com.com/5100-10878_11-1050539.html
讲解了DELPHI6下的WEB APP DEBUGER的使用方法。
研究了一下WebService中的例子,感觉DELPHI还是挺强大的,做WEBSERVICE应该没问题。
- 今天研究了一下WebService例子中的DBServer,看不懂,很奇怪,在FORMCREATE中有如下代码:
RIO := TLinkedRIO.Create(Nil);
WebServicesDS := Rio As IWebServicesDataSet;
FUpdateInfo := TUpdateInfo.Create;
FUpdateInfo.UseIndexMetadata := True;
WebServiceDs是在SoapDBServerUnit中定义的服务接口类型,直接通过TLinkedRIO创建之后竟然能直接调用,TLinkedRIO是何方神圣,这么牛逼,GOOGLE了下,明白了。
http://blogs.teamb.com/deepakshenoy/2004/10/25/1655
原来TLinkedRIO是专门用来测试WebService用的。
通过Initialization
InvRegistry.RegisterInterface(TypeInfo(IWebServicesDataSet));
InvRegistry.RegisterInvokableClass(TWebServicesDataSet);
注册的类型,就可以通过TLinkedRIO得到。