KBMMW 4.81.00 发布
这次更新的速度非常快。
4.81.00 May 9 2015 Important notes (changes that may break existing code)
======================================================
* Changed TkbmMWOnFileAccess event to allow rewriting Path.
TkbmMWOnFileAccess = procedure (Sender:TObject; var Path:string;
var AccessPermissions:TkbmMWFileAccessPermissions) of object;
* Made many more things case sensitive in the XML parser and handlers
to adhere correctly to XML standards.
Thus the attribute ID is different from the attribute id now! New stuff
=========
- Added JQueryEscaping:boolean property (default false) to
TkbmMWJSONStreamer. It will double escape all backslashes (\) to
adhere to jQuery non standards. Notice that double escaping is NOT
JSON standards, but a defacto requirement when using jQuery as the
recieving end.
- Added optional AJQueryEscaping:boolean argument to
kbmMWJSONQuoteString global function.
- Added support for NaN and INF in kbmMWFloatToString,
kbmMWStringToFloat and kbmMWTryStringToFloat.
- Added new optional additional kbmMW_Element_Flags argument to
kbmMW_Element attribute. Eg.
TMyObject = class...
[kbmMW_Element('somename',[mwefData])]
MyField:integer; {kbmMW_Element('someothername')]
MyOtherField:integer;
end;
This will marshal/unmarshal MyField as data of the TMyObject instead
of a sub element called somename.
Eg. <TMyObject>20
<someothername>30</someothername>
</TMyObject>
See the new sample: DynamicXMLMarshalling.
- Added new optional additional TypeStoreName and TypeValue arguments
to kbmMW_Root attribute which are to be used in combination with the
new kbmMW_ConditionalType attribute.
TypeStoreName refers to a local string field in the object which
will hold/be set to the type of the object while
marshalling/unmarshalling.
TypeValue is the value that will be set in that field.
The new kbmMW_ConditionalType attribute takes a condition and a
string value indicating the name of the type of the object if the
condition is evaluated to true. A condition can be a simple equal
statement or be a complex condition with AND and OR and multiple
statements.
See the new sample: DynamicXMLMarshalling. Changes/minor additions
=======================
- Changed TkbmMWOnFileAccess event to allow rewriting Path.
TkbmMWOnFileAccess = procedure (Sender:TObject; var Path:string;
var AccessPermissions:TkbmMWFileAccessPermissions) of object;
Notice that if you do have code using this event, you should cut out
the event code, save, then doubleclick the event handler again and
paste in your old code.
Also notice that the path is always relative to the defined RootPath
of the service.
The RootPath is defined in the TkbmMWFileServiceDefinition returned
when registering the file service.
- Changed TkbmMWCustomSAXXMLParser to inherit from TInterfacedObject
and removed custom referencecounting.
This also affects TkbmMWDOMXML which descends from
TkbmMWCustomSAXXMLParser.
- Made a number of properties available via the IkbmMWDOMXMLParser
interface:
Root, Top,,IgnoreDuplicateIDs, AutoIndent, PreserveWhiteSpace,
AutoLineFeed, StreamBOM, AutoDetectEncoding.
- Changed TkbmMWDOMXMLNode to allow access to ID and Ref properties as
attributes (id, ref).
Changing the attribute id or ref will thus also affect the
properties id and ref.
- Removed handling href attributes as ref attribute in
TkbmMWDOMXMLNode. href is now an ordinary attribute, without special
handling.
- Made many more things case sensitive in the XML parser and handlers
to adhere correctly to XML standards.
Thus the attribute ID is different from the attribute id now!
- Changed so XML GetAsInt, GetAsInt64, GetAsFloat, GetAsDuration,
GetAsBoolean and GetAsDataTime automatically filter out all
whitespace characters (including cr/lf) before attempting to
interpret value.
- Changed XML parsing so if PreserveWhiteSpace property is false, then
only leading and trailing whitespace is filtered. Fixes
=====
- Fixed leak of TkbmMWHTTPURLRewrites object instance in
TkbmMWHTTPServiceDefinition.
- Fixed JSON marshalling of collection objects.
- Fixed IOS Macapi.Foundation compilation issue in kbmMWGlobal.pas.
- Fixed bug in AttribByNameIsNil property in kbmMWXML.pas.
KBMMW 4.81.00 发布的更多相关文章
- kbmmw 5.05.00 发布
新年前最后几天,kbmmw 发布了新版本,增加一大波功能.we are happy to announce v5.05.50 of our popular middleware for Delphi ...
- KBMMW 4.82.00 发布
作者最近加紧了更新进度,赞一个. 时间都去哪儿了? 还没好好看4.81, 新版就来了. 这个版本主要是增强日志管理,已经强大到替换delphi 本身的异常处理了. We are happy to an ...
- KbmMW 4.30.00 发布
今天早上,KbmMW发布了4.30.00 版,这个版本开始支持XE4 的WIN/WIN64/OSX. 暂时不支持ios开发,同时加强了通过JSON 的对象序列化.还有就是解决了我提交的几个有关 汉字处 ...
- KBMMW 4.92.00 发布
We are happy to announce the release of kbmMW Professional and Enterprise Edition. Yet again kbmMW c ...
- KBMMW 4.90.00 发布
kbmMW is a portable, highly scalable, high end application server andenterprise architecture integra ...
- KBMMW 4.84.00 发布
kbmMW is a portable, highly scalable, high end application server and enterprise architecture integr ...
- KBMMW 4.83.00 发布
新版本又来了,端午节都不让大家过好:) 这次终于支持ios 64了,不用我再手工改了. Components4Developers is a company established in 1999 w ...
- KBMMW 4.80.00 发布
一大波更新来了. 4.80.00 March 30 2015 Important notes (changes that may break existing code) ======= ...
- KBMMW 4.70.00 发布
We are happy to announce the release of kbmMW v. 4.70.00 Professional and Enterprise Edition. kbmMW ...
随机推荐
- as3 判断移动方向
var oldX:Number; stage.addEventListener(MouseEvent.MOUSE_DOWN,downF); stage.addEventListener(MouseEv ...
- Mysql 知识(3)
1.如何登陆mysql数据库 mysql -u username -p 2.如何开启/关闭mysql服务 service mysql start/stop 3.查看mysql的状态 service m ...
- mongodb基础学习7-备份与恢复
下面来讲讲mongodb的备份与恢复 备份可以备份为二进制格式,如果是用于数据交换,可以备份成json或cvs格式 导入/导出可以操作的是本地的mongodb服务器,也可以是远程的. 所以,都有如下通 ...
- urllib 和urllib2 模块使用简例
一.最简单的使用 import urllib,urllib2 response = urllib2.urlopen("https://www.baidu.com") print r ...
- JAVA动态性之一一反射机制reflection
package com.bjsxt.reflection.test.bean; public class User { private int id; private int age; private ...
- 大型运输行业实战_day09_2_站间互售实现
1.添加站间互售入口 对应的html代码 <button onclick="otherStation()">站间互售</button> 对应的js发送函数 ...
- Java工具类_随机生成任意长度的字符串【密码、验证码】
import java.util.Random; public class PasswordCreate { /** * 获得密码 * @param len 密码长度 * @return */ pub ...
- C# split分割多个字符
string[] myAgent = agentInfo.Split(new string[] { "$#$" }, StringSplitOptions.None);
- 结对项目3-bug的三种状态
这周和小伙伴结对构造程序,来深刻理解软件测试中,bug发现的三种状态. 1:不能触发Fault 2:触发Fault,但是不能触发Error 3:触发Error,但是不能产生Failure 我们完成的代 ...
- Jmeter响应数据为乱码的处理
jmeter新手,跟着教程,发现响应的数据为乱码,百度到两种方法: 方法一:在相应节点的下方,添加后置处理器-BeanShell PostProcessor 添加一句代码:prev.setDataEn ...