问题标签 [trinidad]

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 回答
6091 浏览

jsf - 如何在特立尼达使用 commandButton 获得弹出窗口?

如何commandButton在特立尼达使用弹出窗口?

我的问题是,通过单击Add按钮dialogdemo.jspx,没有打开任何弹出窗口或对话框。

这是dialogdemo.jspx文件:

这是关联的托管 bean LaunchDialogBean.java

这是弹出文件Popup.jspx

为此,我写了 beanChooseIntegerBean.java

这是我的faces-config.xml

0 投票
2 回答
3252 浏览

jsf - JSF/ADF/PPR 无法按预期刷新页面

我在错误地刷新页面时遇到 JSF/ADF/PPR 问题。我有一个带有 5 个选项的 selectManyCheckBox,其中一个选项是“全部”。如果用户选中该复选框,我应该检查所有其他复选框。

我正在使用 valueChangeListener 以便我可以看到我的 bean 更新并正确打印出来,但是如果我需要,我的页面不会刷新并检查所有其他复选框。

0 投票
1 回答
639 浏览

java - 将onclick javascript添加到菜单项时JSF页面不提交?

我使用弹出窗口展示了一些细节。当用户单击退出链接时,我想关闭它们。我有一个可以关闭窗口的 JavaScript 函数。
登出链接是使用 Navigation MenuModel 呈现的。faces-config 中的定义如下 -

问题是当我在托管 bean 上使用“onclick”属性时,页面不会提交到“signout.jsp”并保持在同一页面上。
当我删除/评论“onclick”部分时,页面会正确提交。

我使用 MyFaces 特立尼达。

0 投票
1 回答
251 浏览

jsf - 如何对浏览我网站的用户隐藏应用程序中使用的 jsf 框架?

当我在浏览器中查看应用程序的源代码时,我无法理解richfaces 或 trinidad 或 ... 用于开发此应用程序的 jsf 框架,例如在 Richfaces 中

application.url/a4j/s/3_3_2.SR1org.richfaces.renderkit.html.Paint2DResource

显示为 img 标签的 src 或 trinidad

org.apache.myfaces.trinidad.faces.FORM

显示为表单名称,此问题存在于 Richfaces 的 javascript 文件中,...

有人有这个问题的解决方案吗?

0 投票
1 回答
1087 浏览

java - JAXB 布尔处理异常和 JSF

JAXB 中有一个已知错误:https ://jaxb.dev.java.net/issues/show_bug.cgi?id=733

JAXB 无法正确生成布尔字段 getter 和 setter,为了向后兼容,未修复此错误。

存在一个 JAXB 插件,它将确保生成以下布尔字段的 getter 和 setter:

  1. 生成 setXXX(Boolean value)
  2. 生成 getXXX()
    • 如果 boolean 属性指定 XSD 中的默认值,则 getXXX() 返回boolean
    • 如果布尔属性未在 XSD 中指定默认值,则 getXXX() 返回Boolean

问题:尝试编辑/查看 JSF 组件(例如复选框)中的 XXX 字段不起作用 - 该组件已禁用。

我使用 Apache Trinidad 1.2。组件编码如下:

我没有深入追踪这一点,但假设(由下面的解决方法支持)是 JSF EL 解析器(或 whathaveyou)寻找布尔 getXXX() 方法,并且由于它没有找到它,因此该组件被禁用。

解决方法:如果我将 getXXX() 方法更改为返回布尔值,那么一切正常。

问题

  • 你对如何以最快的方式解决这个问题有什么想法?
    • 我是否错过了 boolean-getter JAXB 插件的一些自定义?
  • 是否有可能(是否有意义)更改 JSF 解析器(或 whathaveyou),以便如果找不到 Boolean getXXX(),它将回退到 boolean getXXX()?

我不希望手动干预和更改所有生成的 getXXX() 方法以返回布尔值而不是布尔值。

0 投票
5 回答
5345 浏览

css - 使用 CSS 在 tr:table 中设置样式行带和选择

我有一个需要使用 CSS 设置样式的 tr:table。表格的所有正常样式功能都可以正常工作,但没有出现行带和行选择。当我查看渲染的源代码时,我没有看到要抓取的 id 或类的行有什么不同,官方文档也没有任何属性来声明它们的样式类。这可能吗?如果可以,我需要做什么才能让我的 CSS 抓住它?

编辑

让我试着澄清发生了什么。

首先,使用上面的声明告诉jsf生成一个表,属性rowBandingInterval告诉它给每一行交替颜色(如果设置为2,那么它会做2行一种颜色,2行另一种,2行原来的, ETC。)

一旦页面被渲染成标准的 html,trinidad(和 jsf)将他们自己的类和 ID 应用到 html。我的正常程序是查看呈现的 html,找到它正在应用的类并为其添加 CSS 规则。但是在这种情况下,不会添加其他样式(呈现的 html 中没有任何内容表示一行与另一行不同)。

所以问题是,我如何告诉特立尼达给交替的行和用户选择的行不同的类/ID,让我用 CSS 抓住?

编辑 2

只是为了让任何人注意张贴,实际td元素也没有变化

编辑 3

在切换了所有属性,然后将所有代码剥离到它的基本部分之后,我找到了 row banding 属性。Trinidad 类相当复杂,除非您重新格式化代码并消除所有噪音,否则您将看不到它。特立尼达将类添加.af_column_cell-text-band到带状行中,而普通行只有.af_column_cell-text. 所以问题解决了一半。我仍然需要知道用户选择的行的选择器,为此我很乐意将所有弹珠交给任何可以给我答案的人。

0 投票
1 回答
1487 浏览

javascript - 如何使用特立尼达(JSF)突出显示具有验证错误的输入字段?

在表单的客户端验证失败后,Trinidad 会显示错误消息并突出显示失败输入的标签。我需要突出显示输入字段本身。有可能以某种方式做到吗?我能想到的最绝望的解决方案是在标签上的 DOMAttrModified 事件上附加 js 事件侦听器,但这确实是一个糟糕的 hack。

0 投票
1 回答
1721 浏览

java - 建立一个移动网站

我们正在考虑允许移动设备查看我们的网站。我们针对 3 款手机 - 黑莓、iPhone 和 Android。

作为新手,我有几个问题。

我将假设我们在这里真正关注的是设备的浏览器功能,而不是设备本身(如果我们正在构建移动应用程序,设备就会发挥作用 - 对吗?)

因此,我们有一个在线拍卖网站,其中前端是使用 JSF 1.1、myFaces 和 RichFaces 构建的。无论如何,我们将迁移到 JSF 1.2,这将使我们能够使用 Trinidad,因为它似乎对移动站点很友好。

我担心的是性能。在我们当前的网站上,我们允许用户进行搜索,搜索结果可能会返回大量数据。从桌面浏览器运行现在需要等待结果集。我只能假设从移动设备查看结果集时会有更长的等待时间,除非我们为这些请求做一些不同的事情——对吗?

所以仅仅构建一个移动前端仍然不能解决我们在非移动站点上面临的任何性能问题——这是正确的说法吗?

是否有任何网站可以推荐以了解有关如何获取网站并使其做好移动准备的更多信息?

谢谢

0 投票
1 回答
826 浏览

hibernate - JSF + Hyperjaxb3 + Hibernate LazyInitializationException 跨请求

我有 JSF 应用程序,其中包含由 Hyperjaxb3 生成的 trinidad 组件和 JAXB/JPA 实体 bean。在 UI 中,我使用具有 JPA 对象作为值的 Trinidad 组合框组件。

场景是:

  1. 用户在组合框中进行选择
  2. 用户单击向服务器发送请求并返回相同表单的控件
  3. 表单中的数据已提交,组合框中的选择应与用户在步骤 1 中所做的一样。对组合框项(JPA 对象)调用 equals() 方法并引发此异常:

org.hibernate.LazyInitializationException:未能延迟初始化角色集合:package.AnObject.items,在 org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:358) 处没有关闭会话或会话在 org.hibernate.collection .AbstractPersistentCollection.throwLazyInitializationExceptionIfNotConnected(AbstractPersistentCollection.java:350)

我使用 Spring 中的 OpenEntityManagerInViewFilter 来获取延迟加载的对象——在一个请求中工作。

在 HyperJAXB 生成的对象equals()方法级别上调用该对象的每个属性的equals(Object object, EqualsBuilder equalsBuilder)方法。equalsBuilder.append(...)当该属性是一个列表时,它由 PersistenBag 代理,这就是我得到 LazyInitializationException 的地方。

equals()方法 - 由 HyperJaxb 生成:

equals(Object object, EqualsBuilder equalsBuilder)由 HyperJaxb 生成:

你们有什么想法如何解决这个问题?

我尝试使用 JSF 转换器并让 SelectItem 带有一个字符串值(不是对象),但是如果我记得在 String 转换为我的对象之后调用了正确的 equals()。

0 投票
1 回答
1146 浏览

jsp - 2 tr:selectOneChoice ValueChangeListeners 调用相同的动作方法

我有 2 个 tr:selectOneChoice 组件,每个组件都有自己的 valueChangeListener 方法。问题是当从下拉框 1 更改值时,它将调用操作方法 1,这是预期的。

但是在改变下拉框2的值时,它会依次调用动作方法1和动作方法2,这真的很奇怪,它根本不应该调用动作方法1。最糟糕的是,即使我单击同一页面上的不同按钮,它们也会按顺序调用两种操作方法,这真的很糟糕,我不知道如何解释它。

我正在使用 MyFaces、Facelets、Trinidad。非常感谢。