自动映射
推荐使用自动映射配置特性。细节参看自动映射。
自动映射会免去你在click.xml中手动配置URL路径和Page类的映射。如果你遵循这个约定,维护和重构你的应用将会很容易。
你可以很快的找到Page类和对应的HTML模板,并且如果你使用ClickIDE(Eclipse插件)可以在Page类和模板间使用Ctrl+Alt+S快捷键切换。
click.xml配置文件中自动映射的例子(自动映射是默认的):
<click-app>
<pages package="com.mycorp.dashboard.page"/>
</click-app>
设置应用的mode值为debug,在应用启动时模板和对应的类的映射关系会被输出。
[Click] [debug] automapped pages:
[Click] [debug] /category-tree.htm -> com.mycorp.dashboard.page.CategoryTree
[Click] [debug] /process-list.htm -> com.mycorp.dashboard.page.ProcessList
[Click] [debug] /user-list.htm -> com.mycorp.dashboard.page.UserList
导航(Navigation)
在Page间跳转使用forward和redirect,建议引用目标页面时使用Page类而不是路径。这会在编译期检查并且不会当你移动页面的位置后修改java代码中的路径字符。
使用Page类去forward到另一个页面:
public class CustomerListPage extends Page {
public ActionLink customerLink = new ActionLink(this, "onCustomerClick");
..
public boolean onCustomerClick() {
Integer id = customerLink.getValueInteger();
Customer customer = getCustomerService().getCustomer(id);
CustomerDetailPage customerDetailPage = (CustomerDetailPage)
getContext().createPage(CustomerDetailPage.class);
customerDetailPage.setCustomer(customer);
setForward(customerDetailPage);
return false;
}
}
为了redirect到另一个页面,可以使用Page类从Context中获得页面路径。在下面的例子中我们把顾客id作为一个请求参数传递给目标页面。
public class CustomerListPage extends Page {
public ActionLink customerLink = new ActionLink(this, "onCustomerClick");
..
public boolean onCustomerClick() {
String id = customerLink.getValueInteger();
String path = getContext().getPagePath(CustomerDetailPage.class);
setRedirect(path + "?id=" + id);
return false;
}
}
一个快速的redirect到另一个页面的方法是引用目标类。下面的例子是登出一个用户,通过是他的session失效,然后redirect他到应用的主页面。
public boolean onLogoutClick() {
getContext().getSession().invalidate();
setRedirect(HomePage.class);
return false;
}
分享到:
- 2009-03-17 10:52
- 浏览 978
- 评论(0)
- 论坛回复 / 浏览 (0 / 1841)
- 查看更多
相关推荐
"ASP.NET 2.0编程珠玑高清版"很可能是一本详尽阐述该技术的书籍,旨在帮助开发者深入理解和掌握ASP.NET 2.0的核心概念与最佳实践。 在ASP.NET 2.0中,最重要的改进之一是引入了“页面生命周期”概念,它定义了从...
而Entity Framework是ORM(对象关系映射)工具,简化了数据库操作,提高了开发效率。 7. **Web服务和WCF**:ASP.NET 3.5支持创建和消费Web服务。Windows Communication Foundation (WCF)是微软提供的一种统一的面向...
6. **站点导航(Site Navigation)**:ASP.NET提供了一套内置的导航控件和API,如SiteMapPath和TreeView,帮助构建易于使用的网站导航结构。 7. **配置文件(Web.config)**:Web.config文件存储应用程序的配置信息,如...
在Windows编程领域,Win32应用程序常常需要与现代的Windows...参考提供的压缩包文件,如"Keyboard-Input-and-TAB-Navigation-Between-WPF-Cont.pdf"和"MfcWpfTabbing.zip"中的示例代码,可以进一步理解并实践这些技术。
6. **MasterPage和Site Navigation**:通过MasterPage实现页面布局的一致性,利用SiteMap进行网站导航结构的设置。 7. **Web服务和AJAX**:探索如何创建和调用Web服务,以及使用UpdatePanel、AJAX Control Toolkit...