8

我在 eclipse helios 中尝试 JSF2 CDI (weld) beans 而不是ManagedBeans,但无法在表达式语言中为我的Namedbeans ( #{myNamedBean.Ctrl+ Space}thingy)执行自动完成

但是 OTOH 使用 ManagedBeans,内容辅助运行良好.. Eclipse Helios 是否支持 CDI bean 的内容辅助?

有人有这方面的经验吗?

4

3 回答 3

13
  1. 安装JBoss 工具。然后通过添加<nature>org.jboss.tools.jsf.jsfnature</nature>到文件的natures部分,.project在我的 Eclipse J2EE Helios 版本中改进了支持。(此步骤可能Configure->Add JSF Capabilities与项目设置中的相同。)然后上下文完成适用于cc.attrs.<ctrl-space>构建组件组合,但遗憾的是仍然不适用于任何@ManagedBeans。

  2. 从 ManagedBeans 切换到 CDI:我将所有@ManagedBeans 更改为@javax.inject.Named,并将范围更改为@javax.enterprise.context.*Scopedetc。我还在项目设置中启用了 CDI Support。然后我在.xhtml!

第一个限制:仅当 EL 是属性值的一部分时才有效。如果您只是在页面#{EL}上的其他地方使用它是行不通的。.xhtml

第二个限制:如果您通过常量定义 bean 的名称,则无法识别上下文竞争:不起作用:@Named(value = MyBean.BEANNAME)。您必须将名称设置为字符串,例如:@Named(value = "myBean")

第三个限制:如果您使用参数化方法调用(例如,使用 Tomcat7 或 Glassfish),自动完成不支持。自动完成仅显示 bean 的 get/set/is 属性。

注意:它在 Netbeans 7 中开箱即用。

于 2011-05-04T10:06:54.330 回答
2

如果有任何支持,它将来自JBoss Tools

于 2010-11-10T12:23:53.533 回答
0

在安装 JBossTools 之前,请注意,对于 EL 自动完成支持和托管 bean 映射,您只需要 JBoss 工具集中的这两个组件。

1. JBoss Tools JSF
2. JBoss Tools Visual Page Editor

如果您不选择这些特定工​​具,则将安装所有 20 多种工具。

另外,请注意,有时您的默认文件 *.xhtml 关联在工具安装后不会更改。您可能必须手动更改文件关联首选项。File>Preference>File Associations.选择 *.xhtml 并set "JBoss Tools Visual Page Editor" as the default editor.

于 2015-06-07T23:52:46.920 回答