视图 尽管WebWork对于许多不同的视图技术提供了支持,但是最为常见的是JSP和Velociy。以下页面是两个注册页面的例子--一个使用了JSP另一个使用了Velocity。每个页面都包括了一个用户部分和一个密码部分,这两部分提交给WebWork action。
Login.jsp页面通过使用WebWork标记库来建立和处理以上两个部分,并且通过错误收集器来处理错误。webwork:textfield 和 webwork:password标记建立了text和password部分,webwork:iterator标记处理从LoginAction返回的错误。 webwork:property标记设置username,password和errors属性。
<%@ taglib uri="webwork" prefix="webwork" %>
<html>
<head> <title>WebWork JSP Example</title> </head>
<body>
<form action="loginJSP.action" method="post">
<webwork:property> <webwork:textfield label="'Name'" name="'userName'"/> <webwork:password label="'Password'" name="'password'"/> </webwork:property>
<input type="submit" value="Submit"/> </form>
<webwork:iterator value="errors"> <br><webwork:property/> </webwork:iterator>
</body> </html> |
login.vm页面使用了Velocity模板语言来建立域并且处理错误。在Velocity中,$符号表明了一个参考。!符号告诉Velocity如果参考为空,那么什么都不显示。#符号表示了一个指令。在下述例子中,$!userName和$!password表明参考引用了LoginAction中的username和password;#foreach在错误处理属性中指示了循环。
<html>
<head> <title>WebWork Velocity Example</title> </head>
<body>
<form action="loginVelocity.action" method="post"> <input type="text" name="userName" value="$!userName"/> <input type="text" name="password" value="$!password"/> <input type="submit" value="Submit"/> </form>
#foreach ($error in $errors) <br>$error #end
</body>
</html> |
--------------- 开始工作! WebWork是一个易用的、灵活的、功能强大的开源Web应用框架,本文介绍了它的基本功能。访问OpenSympony的网站去学习并且下载最新版本的WebWork。你下载完WebWork后,到Jakarta的网站的上部去寻找Velocity,一种简单、快速的开源引擎,它是你在网页中使用JSP的另一个选择。 ----------------- 作者介绍
Erik Swenson 是Open Source Software Solutions的顾问和建立者。他主要研究使用开源软件和组件来进行java开发。此外,他参与开发了开源项目JasperEdit和OpenReports。 ------------------ 资源
下载本文相关的源代码 http://www.javaworld.com/javaworld/jw-03-2003/opensource/jw-0307-opensourceprofile.zip
从OpenSymphony网站下载WebWork: http://www.opensymphony.com/webwork/
Velocity 是Apache Jakarta项目的一部分,从以下地址下载: http://jakarta.apache.org/velocity/index.html
“使用Velocity模板引擎” Geir Magnusson Jr. (JavaWorld, 2001年12月): http://www.javaworld.com/javaworld/jw-12-2001/jw-1228-velocity.html
其他开源Web应用框架包括:
Maverick: http://mav.sourceforge.net/ Struts: http://jakarta.apache.org/struts/index.html JasperReports homepage: http://jasperreports.sourceforge.net/
Matrix经javaworld授权翻译.加入matrix,与java共舞: www.matrix.org.cn

|