ZTL is ready!

What is ZTL?
It is a Zul Testing Language, which is used to test ZK based on Selenium automatically.
Why is it coming?
Because we want to solve the issue that the UUID of each component inside ZK changes every time. It is hard for application developer to test with ZK, even if ourselves. So we provide a way to naming bind the ZK component's ID to the code of Selenium(i.e. Junit), and the testing developer don't worry about what the UUID is. Thus, they just use the same ID as a widget class inside the Selenium server to do the test.
In addition to the UUID issue, we also enhance the jQuery's selector to work with ZK widget's ID and tagName. Like this feature we did in upcoming ZK 5.0.2 version. So what is the benefit of this feature? As you may know that most of the softwares may change its code or its architecture in the future, but they don't want to maintain the testing code each time the software changed. That is why we enhance the selector to work with ZK, because the selector can be more relative than UUID in the testing code. Besides, jQuery's selector do the good job to support CSS3 which is more powerful to select a set of elements, and now the jQuery's selector in ZK 5.0.2 can select a set of ZK client widgets with one line code, such as jq("@window").fadeIn();


ZK Jet 1.0.0 Released

Today, I released the ZK Jet 1.0.0 version, which includes several features as follows.

1. Open a zul file
2. Support ZK Palette
3. Support ZK Script called Zscript
4. Code formatting
5. Service URL history

Here is a demo.


The cover people of IThome

Last week, I again interviewed with IThome to talk about why I changed my original career. The process was too big change of my life, because in the past I couldn't do anything with computer, but right now I was being web developer with ZK framework.

Here is the complete content (Chinese only)


Interview by IThome periodical talking about what's different in IE 8

Last week, I had interviewed by IThome periodical talking about what's different in IE 8.
Here is the complete content (Chinese only)


A Tricky Level of HTML Tag

This illustration is a level of HTML tag when you wanna manipulate them between each other to show the correct layout. Especially in IE6, when you develop a drag-drop Javascript code, you should find that the overlapped Div is placed under the Select tag (a drop-down list), even using the z-index CSS. Fortunately, the issue is only caused by IE6, and a solution is appeared that the Iframe tag is higher than the Select tag so we can use a empty Iframe to apply to the Select, then use the overlaped Div over the Iframe to resolve this issue. This way can also cope with a dragging event lost, when the action is over the Iframe.


ZK 3.0.4 Come

What's important in this version?

If you have used the ZK 3.0.x version, you might find that the performance of Grid/Listbox/Tree with a large data(like many rows) is a sort of unacceptable, which ZK client engine needs to calculate the width of each cell. Especially in FF, even if ZK client engine just assigns a normal size to the TD tag of a single row in a big Dom tree(like table), the computing time of FF still takes more time than IE after we optimized the Javascript code.

Fortunately, we found a way how to sovle this bottleneck is need to shift a little structure of the Dom of these components. After we modified, we gain that the performance is many times faster than ZK 3.0.3.