问题标签 [backing-beans]

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 投票
1 回答
2372 浏览

java - JSF property transfer from backing bean A to backing bean B

I'm getting deeper into JSF 2.0 at the moment and lacking a bit of understanding about the "transport" of managed bean properties from one view to the other. I searched a bit but haven't found a really good example, so if anyone could point me to a tutorial or explain the things a little bit I'd really grateful.

So here is my scenario:

I'm developing a small playground calendar application. The first view select.xhtml contains the calendar selector, where the user can pick a specific date:

My corresponding backing bean looks like this:

Now when I submit the form from select.xhtml I'm forwarded to day.xhtml

The backing bean now looks like this:

I am now trying to solve the problem: How do I transfer the date parameter from the selector to the editor?

I've tried a number of options, one was this:

A debugger shows, that indeed, the date property of the calendarEdit is populated with the value from calendarSelect, but since day.xhtml is a new view, a new CalendarEditComponent backing bean is being created and not the one I've populated with the date from the selector in the select view.

I've read that one solution would be to create a SessionScoped backing bean that does retain all it's values. But this is not the way I think it's supposed to work, because I don't really need the information in the session, I simply want it to "travel" from A to B. Another downside with the session based approach is that I can only use one selector and one editor per session - which I think isn't acceptible if you think of multi window browsing and so on.

I really don't think I'm the first one encountering such a scenario and I'm sure that JSF provides an elegant solution for this but I haven't been able to find that solution.

So once again, if anyone knows how to approach this - I'm listening! ;-)

0 投票
3 回答
2852 浏览

jsf - JSF 1.2 通过 h:commandButton 调用 bean 方法时,它并不总是有效

最近,我遇到了一个非常奇怪的问题。如下: 在典型的CRUD工作流的save页面中,点击h:commandButton调用backing end bean中的save方法并不是一直有效。有时,它会像我预期的那样工作,完成我在 bean 中指导的方法。在其他情况下,它只是创建新的 Bean,没有进入更新模式阶段,更不用说进入 bean 方法。控制台中没有显示错误消息,只有一些可疑的语句,例如:[component] No renderer-type for component j_id26 等。

我试图通过为所有 JSF html 标记分配一个 id 来解决它。然而,它看起来是徒劳的。即使我无法以固定的方式进行复制。太随意了,无法掌握基本的错误原则。

因为页面源有点大。让我确认一下你们是否有类似的问题,然后我会采取进一步措施,根据需要提供更多线索。

提前致谢。

代码如下: 1.graphtemplate.xhtml

......

2.GraphTemplateBean.java

.....................

0 投票
2 回答
695 浏览

java - 使用 JSF RequestScoped Bean 进行确认页面

我有一个加载用户并允许我将角色分配给该特定用户的 JSF 页面。Backing BeanAssignRolesBean@RequestScoped,我希望它保持不变。然而,这是我的问题......

当表单提交时,它会调用AssignRolesBean.execute(). 然后返回确认页面的路径。在此确认页面上,我想显示将分配哪些新角色以及将删除哪些角色。但是,我无法在确认页面上加载用户。

在初始的 AssignRoles 页面上,用户 ID 是使用 GET 参数设置的。然后将其作为h:inputHidden元素添加到页面上。它确实被提交了。但是,同样,在下一页上,未设置 userId(加载用户)。有什么方法可以保留 RequestScope 而不必将 userId 存储在 SessionMap 中?有人告诉我,使用隐藏输入将允许您跨页面获取数据。但是,我遇到了麻烦。

0 投票
1 回答
1147 浏览

java - 结合液

我有一个组件如下,它由 HtmlSelectManyCheckbox 绑定,

我想要使​​用支持 bean Holiday_Declaration 的选中复选框的总数及其值。

谢谢你的帮助...

0 投票
2 回答
1949 浏览

jsf - Websphere 7.0.0.9 上的 JSF 1.2:找不到支持 bean 的属性

我正在研究 JSF1.2 + EJB3.0 + Websphere 7.0.0.3。整个业务逻辑层和数据层(EJB 3.0)从一开始就经过测试并成功运行。集成 JSF1.2 后,尝试从数据库中获取一些数据时出现以下错误:

这些是我的工件:

web.xml

面孔-config.xml

模型根.jsp

ModelRootBean (backingbean)

我很确定这个错误可能来自我的愚蠢错误,但我无法弄清楚。有人可以帮我吗?

0 投票
1 回答
1954 浏览

jsf - JQuery 加载的 JSF 页面不更新父页面(Primefaces)

我目前正在使用 JSF2.0 制作一个 Facelets 页面,并且我正在使用 Primefaces 让它看起来很漂亮:D。但是我有一个我似乎无法解决的问题。我的页面背后的想法如下:我有一个仪表板页面,其中包含不同的手风琴选项卡,并且在每个选项卡中都有一个 primefaces 数据表。在该数据表中是给定用户的一些行。但是当我想在我的数据表中添加一个新行时,我使用以下方法。我的数据表下方有一个“添加行”按钮,当我单击它时,我通过 JQuery 将页面加载到按钮下方的 div 中。在那个 div 中,我的“addrow”页面加载了验证等等。

但问题是:当我单击包含页面上的添加按钮时,我想更新“父”页面中的数据表,因此包含我的添加页面的页面,这不能作为更新属性我的 p:commandButton 似乎在我的父页面上找不到数据表或任何其他组件。

因此,如果有人可以告诉我如何更新父页面中的组件?

这是相关的代码片段: 父页面(包括“内容div”中的添加页面)

添加页面

jQuery加载方法

支持bean添加方法

我的 backingBean 是 sessionscoped。

提前致谢

0 投票
1 回答
2731 浏览

java - java最高效的JSF 1.2导航

我的 index.xhtml JSF 首页上有一个下拉菜单。相关的代码/命令按钮如下所示:

action之前设置为“你好”,在我的faces-context.xml

action设置为“你好”时,单击retrieve按钮工作正常,因为面将处理导航,MyBacking.setChosenNode方法将分配所有必要的数据,以便 nodeMgmt.xhtml 的内容将显示为完全填充。

但是,如果用户点击导致的初始活动retrieve超时,即使 bean 检测到超时,网页也会挂起,我想将用户重定向到“超时”页面。

为了处理返回超时消息的支持 bean(在应用程序“内部”时已经存在错误检测),我认为与其使用faces-context.xml文件,不如在内部处理它。

我发现 FacesContext.getCurrentInstance().getExternalContext().redirect 但 JSF 1.2 javadoc 没有此功能。也许是因为它没有特色?它重定向虽然这令人困惑。为什么没有关于这种方法的文档?

尽管如此,它会将我重定向到页面,但在呈现时没有考虑 bean 在初始请求期间实例化的数据。该 bean 当前处于请求范围内。bean中的相关代码是

使用后端 java 调用是进行这种重定向的最佳方式吗?如果没有,最好使用faces-context.xml?如果是这样,怎么做?当我们在这里时 - 任何人都可以将我引导到 FacesContext.getCurrentInstance().getExternalContext() 用法的良好阅读资源,其中有关于如何使用数据进行简单导航的不错示例,因为我无法找到一个。

干杯

0 投票
5 回答
5101 浏览

jsf - 将 EJB3.0 Bean 注入 JSF2.0 支持 Bean... 不可能?

我正在开发一个基于 Weblogic 11g 的 JSF 项目,我们最初的设计是调用 JSF Backing Beans 来调用 EJB3.0 bean 来执行业务逻辑和数据访问调用。当我尝试将 EJB 引用注入到支持 bean 时,@EJB 注释似乎在我的项目中不起作用。每当我点击我正在测试的类时,我的 EJB 的构造函数永远不会被调用,我最终会得到一个 NPE。是否可以将 EJB3.0 bean 注入 JSF 支持 bean?我应该通过 JSF Backing bean 调用 EJB 的另一种方法吗?最佳做法是什么?

0 投票
3 回答
2634 浏览

java - 如何(或应该)避免 jsf 中的长方法/类

我主要在基于 JSF 的项目中使用遗留代码,并且在支持 bean 中有很多相当长的类和方法。

这一直困扰着我,但是当我寻找可以做的事情时,大多数时候我所能想到的就是将一个长方法划分为 n 个小方法。这给你的课程仍然很长,有时也更难阅读。

那么你如何保持你的支持豆短而简洁呢?或者你为一页保留一个大的支持豆?有没有最佳实践?

我认为这与 jsf 没有直接关系,而是与您使用控制器“备份”视图的任何模型相关。因此,一般建议也会有所帮助。

0 投票
1 回答
2706 浏览

view - 从视图中设置 BackingBean 的属性(没有带有 GET 请求组件的操作事件)

想象一下,BeanA 绑定到 ViewA.xhtml,BeanB 绑定到 ViewB.xhtml。BeanA 和 BeanB 是支持 bean,每个 bean 只有一个属性:“Object obj;” 与吸气剂和二传手。

现在我在 ViewA 中执行以下操作:

这很好用!我遍历一个列表,我单击的对象(通过 commandLink)被设置为 BeanB。

问题:我需要使用 GET 请求,所以我不得不使用 h:link 或 h:outputLink(顺便说一句,区别在哪里?)。但是这样做,我不能使用 f:setPropertyActionListener 组件,因为 GET 请求不会触发动作事件。

由于没有动作事件,我必须使用 GET 请求,将对象的 ID 作为参数提供给 BeanB。BeanB 然后使用一个 dao 来获取具有指定 ID 的对象。但是这个sux。我不想使用道。所以我的具体问题:

GET 请求链接的 f:setPropertyActionListener 等价物是什么?单击 ah:link 或 h:outputLink 组件时,如何设置 BackingBean 的属性?

我希望有一个解决方案,提前谢谢。