2

我正在学习创建自定义 JSF 组件并成功地创建了简单的组件。我想知道的一件事是,在定义组件时是否要遵循任何命名 <component-family>约定<renderer-type>

例如,组合框<component-family>javax.faces.SelectOne. 它看起来像一个 Java 类,但我在 JSF API 中找不到任何这样的类。

4

1 回答 1

3

它们确实不一定代表类名。它们只是标识符。在这种javax.faces情况下,前缀仅暗示它是标准 JSF API 的一部分。标准 JSF API 的其他任何地方都使用相同的前缀。PrimeFaces 组件使用org.primefaces前缀,OmniFaces 组件使用org.omnifaces前缀等等。

您可以完全自由地选择自己的组件库。您应该只保证它不应该与可能由最终用户混合的第 3 方冲突。与 Java 类的包结构一样,如果您选择com.naveen前缀或代表组件库的所有者/开发者的任何内容/谁,这将是有意义的。

与 Java 包(和 Internet 域名)相同的方法是保证唯一性的一种非常明智的方法(您知道,标识符应该是唯一的)。

也可以看看:

于 2013-07-04T15:25:18.530 回答