- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我面临的问题是,在单击 h:commandLink
按钮后,h:outputLabel
没有显示任何内容。我已使用 selectedUser 在提交表单时存储值,但似乎 selectedUser 未存储任何值。
1)这是 xhtml 文件。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui"
xmlns:c="http://java.sun.com/jsp/jstl/core">
<h:head></h:head>
<h:body class="thrColElsHdr">
<div class="friends">
<h4>Friends</h4>
<h:form>
<p:selectOneMenu value="#{chatBean.selectedUser}">
<f:selectItems value="#{chatBean.friendList}" var="users" itemLabel="#{users.firstName}" itemValue="#{users}"/>
</p:selectOneMenu>
<h:commandLink>Chat</h:commandLink>
</h:form>
<br>
</br>
<h:outputLabel value="#{chatBean.selectedUser.firstName}"/>
</div>
</h:body>
</html>
2)这是 chatBean,它使用 facesconfig.xml 进行 session 范围
package com.bean;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.faces.context.FacesContext;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
import javax.servlet.http.HttpSession;
import com.entity.Friend;
import com.entity.User;
public class ChatBean {
private EntityManager em;
private User selectedUser;
public User getSelectedUser() {
return selectedUser;
}
public void setSelectedUser(User selectedUser) {
this.selectedUser = selectedUser;
}
public ChatBean(){
selectedUser= new User();
EntityManagerFactory emf=Persistence.createEntityManagerFactory("FreeBird");
em =emf.createEntityManager();
}
public List<User> getFriendList(){
FacesContext context = FacesContext.getCurrentInstance();
HttpSession session = (HttpSession) context.getExternalContext().getSession(true);
User user=(User) session.getAttribute("userdet");
Query query = em.createQuery("SELECT f FROM Friend f WHERE f.email='"+user.getEmail()+"' AND f.status=1",Friend.class);
List<Friend> results =query.getResultList();
ArrayList<User> friends = new ArrayList<User>();
Iterator<Friend> it = results.iterator();
while(it.hasNext()){
System.out.println("in getFriendList...");
User friend =em.find(User.class,it.next().getFriendEmail());
friends.add(friend);
}
return friends;
}
}
3)这是用户实体类
package com.entity;
import java.io.Serializable;
import javax.persistence.*;
/**
* The persistent class for the user database table.
*
*/
@Entity
public class User implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private String email;
@Lob()
private String aboutMe;
private String birthDate;
private String city;
private String college;
private String confirmation;
private String contactNo;
private String country;
private String degree;
private String firstName;
private String gender;
private String highSchool;
private String image;
private String interest;
private String lastName;
private String password;
private int pincode;
@Lob()
private String quote;
private String relationship;
private String secondarySchool;
private String state;
private String street;
private String university;
private String userName;
public User() {
}
public String getEmail() {
return this.email;
}
public void setEmail(String email) {
this.email = email;
}
public String getAboutMe() {
return this.aboutMe;
}
public void setAboutMe(String aboutMe) {
this.aboutMe = aboutMe;
}
public String getBirthDate() {
return this.birthDate;
}
public void setBirthDate(String birthDate) {
this.birthDate = birthDate;
}
public String getCity() {
return this.city;
}
public void setCity(String city) {
this.city = city;
}
public String getCollege() {
return this.college;
}
public void setCollege(String college) {
this.college = college;
}
public String getConfirmation() {
return this.confirmation;
}
public void setConfirmation(String confirmation) {
this.confirmation = confirmation;
}
public String getContactNo() {
return this.contactNo;
}
public void setContactNo(String contactNo) {
this.contactNo = contactNo;
}
public String getCountry() {
return this.country;
}
public void setCountry(String country) {
this.country = country;
}
public String getDegree() {
return this.degree;
}
public void setDegree(String degree) {
this.degree = degree;
}
public String getFirstName() {
return this.firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getGender() {
return this.gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getHighSchool() {
return this.highSchool;
}
public void setHighSchool(String highSchool) {
this.highSchool = highSchool;
}
public String getImage() {
return this.image;
}
public void setImage(String image) {
this.image = image;
}
public String getInterest() {
return this.interest;
}
public void setInterest(String interest) {
this.interest = interest;
}
public String getLastName() {
return this.lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getPassword() {
return this.password;
}
public void setPassword(String password) {
this.password = password;
}
public int getPincode() {
return this.pincode;
}
public void setPincode(int pincode) {
this.pincode = pincode;
}
public String getQuote() {
return this.quote;
}
public void setQuote(String quote) {
this.quote = quote;
}
public String getRelationship() {
return this.relationship;
}
public void setRelationship(String relationship) {
this.relationship = relationship;
}
public String getSecondarySchool() {
return this.secondarySchool;
}
public void setSecondarySchool(String secondarySchool) {
this.secondarySchool = secondarySchool;
}
public String getState() {
return this.state;
}
public void setState(String state) {
this.state = state;
}
public String getStreet() {
return this.street;
}
public void setStreet(String street) {
this.street = street;
}
public String getUniversity() {
return this.university;
}
public void setUniversity(String university) {
this.university = university;
}
public String getUserName() {
return this.userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
}
最佳答案
您的托管 Bean 必须具有相应的注释:
@ViewScoped
@ManagedBean
public class ChatBean {
//...
}
可以使用以下提示之一更正该示例:
添加action
给您<h:commandLink>
并将其绑定(bind)到返回页面名称的方法。这样,页面就会刷新,显示#{chatBean.selectedUser.firstName}
中的新值。 :
<h:commandLink action="#{chatBean.refresh}" value="Chat" />
在你的类(class):
public String refresh() {
return "index";
}
将 ajax 行为添加到您的 <h:commandLink>
中为了更新<h:outputLabel>
。您应该将 id 属性添加到您的 <h:outputLabel>
:
<h:commandLink value="Chat">
<f:ajax render=":theLabel" />
</h:commandLink>
<!-- jsf code -->
<h:outputLabel id="theLabel" value="#{chatBean.selectedUser.firstName}"/>
关于java - :outputLabel not showing anything,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12696539/
我有一个扩展程序,我已经拆掉了裸机,它使自己处于不正确的状态,当它折叠时它会说“显示更少”。 这有两种情况 我使用“显示更多”展开扩展,然后离开屏幕。我打开另一个应用程序,然后返回到扩展程序。扩展的扩
为什么这些不相等? show $ if someCondition then someInt else some double 和 if someCondition then show someInt
下面给出的代码可以编译,ok。 data Car p q r = Car {company :: p , model :: q
是否可以在表结构中的“显示 0 到 0 个条目中的 0 个条目”旁边显示“显示条目”下拉列表。我想在底部显示“显示条目”下拉列表以及分页并显示 0 到 0 个条目,共 0 个条目。 提前致谢!!! 图
我不明白当你这样做一连串 .show() 时会发生什么。我也没有编写这段代码,也不知道如何弄清楚这里发生了什么。因此就有了这个问题。 // Remove favorite category
$(document).ready(function(){ $('html').addClass('js'); var contactForm = {
因此,在实现上一个问题的 jQuery 代码后,我注意到以下内容,每当人们添加位于显示较少/显示更多菜单中的产品时,系统会刷新页面,因为它会重新计算价格,因此也会刷新页面。但是当发生这种情况时,菜单会
我已经在 Windows 上设置了 mongodb 64bits。我成功运行了服务器和客户端。 但是当我输入时: show dbs 输出是 local 0.000GB 为什么? show dbs 应
正如标题所说,我有兴趣使用 Show a在我有 Show (a,b) 的情况下. GADT 很容易出现这个问题,如下所示: data PairOrNot a where Pair :: (b,c)
通常 julia> Base.show(io::IO, a::Int) = print(io, "xx") show (generic function with 98 methods) julia>
通常 julia> Base.show(io::IO, a::Int) = print(io, "xx") show (generic function with 98 methods) julia>
我找不到关于 Readline 选项 show-all-if-ambiguous 和 show-all-if-unmodified 之间区别的明确解释,以及是否它们影响不同的事物或相互排斥。关于这个主
我是 BeautifulSoup 的新手,我遇到了一些我不明白的问题,我认为这个问题可能尚未得到解答,但在这种情况下,我找到的答案都没有帮助我。 我需要访问 div 的内部以检索网站的词汇表条目,但是
我已经为 iOS 10 实现了新的小部件,并使用以下代码为其设置高度: @available(iOSApplicationExtension 10.0, *) func widgetActiveDis
克隆远程 git 存储库并发出 git show --show-signature 后,它说签名是好的。然后我更改了一些文件并测试了相同的命令,它仍然说签名是好的。 上面的命令到底检查了什么?验证克隆
我陷入了这个问题,而且我对 Haskell 很陌生,我试图用以下代码完成第一个欧拉问题: main = putStrLn . show . sum $ [3,6..1000]:[5,10..1000]
我有一个独立的 Android 和 iOS 应用程序。 目前正在 Android 上测试推送通知。 我已经使用以下通知键设置了我的 app.json "notification":{ "i
我所说的示例:http://jsfiddle.net/bsnxp/1/ 如果你检查源 .show().clone() display 是 inline-block (它应该是什么)并且 .clone(
我正在使用下面的 jQuery 代码来显示/隐藏网页上的额外文本 jQuery.fn.shorten = function(settings) { var config = { showC
我有一个带有 ng-show 的 div。这个 div 是我创建的自定义指令的包装器。 HTML JS function myDirective() { function doS
我是一名优秀的程序员,十分优秀!