本文将编写一个基于JSF标签的名为"locallyDefinedBean"插件。JSF标签可以在运行时将Bean变量加到JSP-JSF而中.
本文将编写一个基于JSF标签的名为"locallyDefinedBean"插件。JSF标签可以在运行时将Bean变量加到JSP-JSF而中,在这里,我们将通过使用JSF EL(所谓JSF EL就是JSF EXPRESSION LANGUAGE)来模拟在设计时向JSP-JSF添加变量的过程。下面是具体的实现过程。
1. 首先,使用File->New->Project->Plug-in Project来建立一个空的插件工程,这个工程使用JBuilder2007提供的默认值,并在工程名中输入myplugin。如图1所示:
图1 |
2. 打开工程浏览器,切换到dependencies标签。并加入如图2所示的依赖库。
图2 dependencies标签 |
3. 通过File->New->Class建立一个Java类: LocallyDeclaredBeanFactory.,并使这个类从org.eclipse.jst.jsf.context.symbol.internal.provisional.source.AbstractContextSymbolFactory继承。如图3所示。
图3 |
4. 打开Java源码编辑器。你将看到两个根据抽象类自动产生的方法。然后将supports方法替换为我们自己的supports方法。代码如下:
public boolean supports(IAdaptable context) { return context.getAdapter(IStructuredDocumentContext.class) != null; } |
上面的代码表示只能调用IstructuredDocumentContext工厂。