Hugh Winkler holding forth on computing and the Web

Sunday, August 29, 2004

Apropos of nothing, just ran across this nice site about Honeywell Multics mainframes and those who loved them, or actually mainly just lived with them in a loveless marriage.
Java Server Faces. Finally someone who knows what they are doing has designed a decent application framework.

Here is my favorite documentation from Struts tags:


put - Put an attribute into tile/component/template context.
Define an attribute to pass to tile/component/template. This tag can only be used inside 'insert' or 'definition' tag. Value (or content) is specified using attribute 'value' (or 'content'), or using the tag body. It is also possible to specify the type of the value :
string : Content is written directly.
page template : Content is included from specified URL. Name is used as an URL.
definition : Content come from specified definition (from factory). Name is used as definition name.
If type is specified, it is taken into account by 'get' or 'insert' inside the inserted tile.
If 'type' attribute is not specified, content is 'untyped', unless it comes from a typed bean.

Note that using 'direct="true"' is equivalent to 'type="string"'.


Here is a nice quick JSF quick start:
JSF (Java Server Faces) Visual Tutorial


Wednesday, August 25, 2004

So you want to build a REST application, but you find you have to put all this javascript in the views to construct and POST xml. Nobody knows why HTML 1.1 doesn't have the capability to POST text/xml, but it just doesn't; and if you're waiting for native XForms support in browsers, forget it. So we are stuck with good old application/x-www-form-urlencoded. Learn to love it. It is just another serialization mechanism. We could have whole books and architectures on the topic of "Object-URL Encoded Form Data Mapping." We could have an Apache OUB (Object-UEFD Bridge).

So what is it exactly that we can do with xml, that we cannot do with URL encoded form data? Why get hung up on the type of the resource representation?

So you build your service and it accepts two kinds of representations: xml or UEFD. Either can represent the same resource with equal fidelity. Quibble with me about the hierarchical relationships you can represent in xml. You can represent hiereachies in UEFD using your own patterns (and interoperability really isn't the use case here).