问题标签 [composite-component]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
17485 浏览

java - 如何在 JSF 2 中以编程方式或动态创建复合组件

我需要在 JSF 2 中以编程方式创建复合组件。经过几天的搜索和实验,我想出了这个方法(受到 java.net 上的 Lexi 的高度启发):

问题是此代码仅在javax.faces.PROJECT_STAGE设置为时才对我有效PRODUCTION(我花了一整天的时间才弄清楚)。如果javax.faces.PROJECT_STAGE设置为DEVELOPMENT在标记点 ( ) 上抛出异常<==[here]

组件中的父集有一些问题compositeRootj_id2是自动生成的ID compositeRoot)。此外,这段代码没有经过足够彻底的测试,所以我不确定我是否可以依赖它。

我认为能够以编程方式操作复合组件非常重要。否则复合组件是一半没用的。

0 投票
2 回答
1916 浏览

validation - 复合组件的跨领域验证

如何实现复合组件的跨字段验证?我使用的复合组件是一个输入文本框(一个用于电子邮件,第二个用于确认电子邮件)。我为 confirmEmail 组件应用了 f:validator 标签。如何在 validate 方法中获取 email 复合组件的值。是 UIComponent 还是 UINamingContainer?

0 投票
1 回答
4108 浏览

javascript - 如何使用 JSF 复合组件使页面上的 id 唯一?

我正在为名为 flot 的 Javascript 图表库制作一个组件。

这是我到目前为止的少量代码。我遇到的问题是如何使该 div 标签在页面上随机生成,以便我可以输出多个图表。显然它不会在当前状态下这样做。我需要将值传递给 javascript 函数。

我知道我可以创建另一个需要 id 的属性,并且用户必须指定 id,但我注意到很多组件不需要 id。在诸如 primefaces 和 icefaces 之类的重型 ajax/javascript 库中,id 似乎是随机的。

0 投票
1 回答
8074 浏览

jsf - 带有支持 bean 的 JSF 复合组件

我正在尝试使用 Core JSF 3 书中 p375 ​​上的示例来使用它自己的支持 bean 的复合组件,但只需获得一个 NPE。问题似乎出在 encodeBegin() 的开头,Date date = (Date) getValue() 返回 null。老实说,我真的不明白组件的值应该存储在哪里,我使用 cc:attribute type= 将其指定为 java.util.Date,但我真的不明白这是怎么回事: public Object getSubmittedValue() { return this; } - 这将返回一个 InputDateBean 类的实例 - 产生一个日期。我通常很好并且对这应该如何工作感到困惑。

与书中的示例不同,我尝试使用支持组件进行临时存储,因此当输入日期时,我尝试将其存储在#{cc.day} 中,在书中他们出于某种原因使用了应用程序范围的 bean。

谢谢你的帮助。我正在使用 Mojarra 2.1。

输入日期.xhtml

输入日期Bean.java

0 投票
1 回答
6964 浏览

java - JSF 2 复合组件不使用 f:ajax 更新值

我正在尝试在 JSF 2 中实现一个复合组件,它将支持“更改”ajax 事件。中央委员会是:


现在,我正在尝试以以下形式使用它:

据我了解,如果我改变d1, d2 和 d3 应该显示 d1 的值,如果我改变d2, d1 和 d3 也应该相应地改变。
问题是,当我更改d2中的值时,它只反映在 d3 中,而 d1 保持空白,而当我更改d2时,d1 和 d2 保持空白。

我正在使用 Mojarra 2.0.2(我无法在 Google App Engine 上制作 2.0.3,这是我的 AS)。我是否错过了应该构建复合组件的方式?还是 Mojarra 2.0.2 中的错误?

0 投票
1 回答
3481 浏览

jsf - 自定义组件和复合组件有什么区别?

JSF 自定义组件和 Facelets 复合组件有什么区别?

0 投票
1 回答
823 浏览

ajax - 渲染复合组件的子组件

有没有办法指定复合组件的子组件以使用 f:ajax 重新渲染:

从我的简短实验来看,似乎不可能引用它们,但我想知道是否有替代策略来实现这一点。

0 投票
2 回答
17357 浏览

jsf - 如何制作 JSF 复合组件的网格?

我在 panelGrids 中有很多 outputLabel 和 inputText 对

我想对他们所有人都有一些行为:比如每个 inputText 的相同验证或相同大小。所以我创建了一个复合组件,它只包含一个 outputLabel 和一个 inputText

但是现在当我将它们放在 gridPanel 中时,它们不会根据标签文本的长度对齐。我明白为什么,但我不知道如何解决。

0 投票
1 回答
9223 浏览

jsf - 带有 CompositeComponent 的 javax.el.PropertyNotFoundException?

我目前正在尝试构建一个复合组件,这就是我如何使用我的组件:


包括它xmlns:albert="http://java.sun.com/jsf/composite/albert"


这是使用示例


这是放在 resources/albert/infoButton.xhtml 中的组件


但是运行它,当单击 infoButton 时,此异常跟踪显示在我的 catalina.out 日志文件中:


我想知道为什么会这样,因为在 mywebapp.paymentplan.TBrowseBean_ConfirmedRPB,我已经提供了这个:


之后,我尝试放置虚拟 mapSendInfoSingleRecord 字段,看看会发生什么:


但是现在单击按钮会产生此异常:


我已经针对 mojarra 版本 2.0.4-b09 和 2.1.1-b04 进行了测试,结果相同。


我想知道我在这里做错了什么?

0 投票
1 回答
1168 浏览

android - 在运行时创建的复合 Android 组件

问候。我正在做一个项目,并认为我会卷起一个复合组件。我将它们放在 xml 中,并编写了一个扩展 LinearLayout 的新类。基本上,我在一个活动中需要大约五六个。我想以编程方式在 Activity 中创建这些,因为我不知道在运行之前我需要多少。另外,我创建了一个 xml 文件来设置它们,我没有包括在下面。我发现的每种方法都有问题。

以下是我创建的扩展 LinearLayout 的类中的方法段:

在 Activity 内部,这两个解决方案似乎最接近我正在寻找的解决方案。

不知道从哪里获取使用此方法的属性:

不知道如何通过此方法指定充气机应使用 ExtendedLinearLayout:

我可能会满足于使用 ListView - 但对于五到六个项目来说似乎有点过分了。此外,之前曾与 Flex 合作过,这至少看起来是一个合理的问题解决方案。

谢谢,兰德尔

- - - - - - - - 更新 - - - - - - - - - -

我已经尝试过下面讨论的方法。设置完所有内容后,我将收到 InflationException: Binary XML file line #8: Error inflating class。我觉得xml 看起来还不错。我可能会感到困惑的一件事是在哪里调用充气机。现在,我在自定义类的 onFinishInflate() 以及 Activity 中调用充气器,如下所示:

在活动中:

谢谢,希望你有时间看看。我喜欢通过在网上四处挖掘来找出东西,但从昨天早上开始,这个已经让我煮了好几个小时了。我距离将其重构为 ListAdapter 大约有 2 英寸的距离。

- - - - - - - - 更新 - - - - - - - - - -

这是xml文件