OGNL(Object Graph Navigation Language)Tapestry和OGNL结合的很完美。OGNL是一种Java表达式语言,它被用来读取和更新对象的属性。OGNL比建立在JSP2.0标签库之上的表达式语言更简单功能也更强大。OGNL不仅仅提供属性的访问,它包括了精确的表达式和方法的调用。也能访问类的静态域。也可以创建新的对象,包括List和Map对象。简单的OGNL表达式是属性的名字。如:foo,这就等同于调用了方法getFoo()(或者是setFoo()如果表达式是用来更新属性的)。当属性的名字是连续的属性名时,导航功能就起作用了。如:foo.bar.baz,它就等于getFoo().getBar().getBaz() 。不过要注意的是foo和bar这些属性不能为空。 OGNL允许两个对象(如页和页所包含的组件)来共享信息。