2005年07月26日

jython 2.2 已经出来了,希望在项目中使用它。下载完了,找到一个安装说明,很简单: 

java -jar jython_Release_2_2alpha1.jar

但不幸的是,报错了。错误信息如下:

org.python.util.install.InstallerException: Error accessing jar file
        at org.python.util.install.JarInfo.<init>(JarInfo.java:39)
        at org.python.util.install.Installation.main(Installation.java:46)
Caused by: sun.io.MalformedInputException
        at sun.io.ByteToCharGB18030.convert(Unknown Source)
        at sun.nio.cs.StreamDecoder$ConverterSD.convertInto(Unknown Source)
        at sun.nio.cs.StreamDecoder$ConverterSD.implRead(Unknown Source)
        at sun.nio.cs.StreamDecoder.read(Unknown Source)
        at java.io.InputStreamReader.read(Unknown Source)
        at java.io.BufferedReader.fill(Unknown Source)
        at java.io.BufferedReader.readLine(Unknown Source)
        at java.io.BufferedReader.readLine(Unknown Source)
        at org.python.util.install.JarInfo.readLicense(JarInfo.java:141)
        at org.python.util.install.JarInfo.readJarInfo(JarInfo.java:125)
        at org.python.util.install.JarInfo.<init>(JarInfo.java:37)
        … 1 more

怎么回事,编码的问题?在网上查了一下,关于ByteToCharGB18030的结果才两页看了半天没有解决办法。试了试加-Dfile.encoding=GBK,没用。不过随便学了一下车东关于编码的文章《Hello Unicode》,知道了如何查看系统属性。不过没用,解决不了问题。想重新编译,需要的工具太多了。最后来想使用2.1版得了。但最后我做了一个决定,先下载最新的Java SDK试试吧。因为我装的是1.4.2_03。结果上到Sun网站一看,都1.4.2_08(不想用1.5)了,于是下吧。下了几十M,安装完毕后。再一试,怎么着,成功了。

唉,前面半天都是费话,要用东西要用新版本呀。这是我从这里得到的教训。这一天过的,快下班才搞定。不过也算是了了一件大事。下面要开始学习使用Jython访问数据库了。

2004年11月08日

看过我的关于 Laszlo 的介绍,你可能就知道,Laszlo 是一个rich client开发平台,它需要一个 Java Servlet 容器来运行 Laszlo 的后台服务,用以生成供浏览器使用的 swf 文件。因此在目前开发和运行都是需要 Laszlo presentation server的存在。但这种状态可能在几个月后变成:开发需要这种平台,但部署可以不再需要它了,而是可以使用别的服务器。这样你可以把生成好的swf文件直接进行部署。这可真是一个好消息。

详情见这篇Blog

2004年11月07日

Laszlo 是一个开源项目,如果你听说过Flex项目,那么它可能和Flex差不多(我还不了解)。简单地说:它是一个 web application,它的后台是Java,使用Flash来表现页面,这样大部分的交互都是在Flash(swf)中完成的。这使得它的表现能力很强。Laszlo是一个开发平台,自定义了一种基于xml的语言,叫lzx。因此你可以使用任何的编辑器来编辑这种语言。所有的内容,界面、处理都以xml的形式表现。

这几天装上玩了玩,感觉很有意思。比如:

<canvas width=”200″>
  <button>Hello World!</button>
</canvas>

这几句话定义了一个画布,它的宽度是200,然后其中有一个按钮。运行的结果象这个样子:

不过现在2.2版还不支持Unicode,反正我导入了仿宋体是显示不出来的。

一、安装

可以去 Laszlo 的主页上下载,有两种形式,一种是标准,一种是核心的。因为 Laszlo 是Java开发的,它的运行形式为Servlet,因此标准形式带有Apache 的Tomcat 5.0服务器。而且Laszlo的war应用也是预先配置好的。核心则只有war包。反正很大,我使用的是标准版,有100多M。我下载的是windows的版本。在安装前 Laszlo 需要J2SE JDK 1.4.2以上,注意不是jre。只要J2SE JDK安装好,并设置正确JAVA_HOME,安装 Laszlo 还是很顺利的。安装完毕后,在程序菜单中会有它的菜单,入门初学可以点 Laszlo Explorer ,它其有demo, 教程,文档,非常方便。

二、简单的测试

安装完毕后,也学了一下10分钟教程,我现在关心的是,我如何写一个应用,如何布署它。例子就用上面的例子。在 Laszlo Explorer 中的文档菜单中,有一个 Developer’s Guide ,点击它,会打开一个文档。此文档综述的第4章就讲了这个问题(4. Overview of Laszlo Application Development )。在 Windows 下你可以把你的应用放在 Laszlo 的安装目录下的 server/lps-2.2 下即可。不过它下面还有lps/my-apps,如果是测试放在这下面最好。于是把上面的例子保存,比如起名为:button.lzx,然后放在my-apps目录下。打开一个浏览器,敲入:http://localhost:8080/lps-2.2/my-apps/button.lzx。然后,结果出来了。简单吧,不过,不足之处就是下面有一个象菜单似的东西。如果不想要它,需要使用Html wrapper来处理它。在下面有一个按钮叫Html wrapper,点击它,会告诉你如何去做。基本上有两种方法:嵌入 object 对象和使用 Javascript 库。比如此例使用 Javascript 的HTML文件为:

如果觉得复杂,在说明文档上有演示链接,可以点击后,打开演示的Html源文件,然后把代码拷下来即可。

这个东西的确很有趣,它支持面向对象,你可以在xml文件中定义类,派生子类。

这里有一个老外的主页,上面有一些关于 Laszlo 的一些研究可以看一下。查看