JSF错误目标无法访问,'null'返回null [英] JSF Error Target Unreachable, 'null' returned null

查看:101
本文介绍了JSF错误目标无法访问,'null'返回null的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好大家现在我使用JSF 2.0和EJB3,我使用了Primefaces显示错误消息或成功消息,我有两个问题是
一个当我把Button sumit(JSF命令按钮)下一页错误显示


/register.xhtml @ 26,172 value =#{userController.user.username}:Target Unreachable,'null'returned null


我的代码是



用户实体

  / * 
*要更改此模板,请选择工具模板
*并在编辑器中打开模板。
* /

包com.demoejb.entity;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import javax.persistence.Basic;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/ **
*
* @author KencyWindy
* /
@Entity
@Table(name =iuser)
@NamedQueries({
@NamedQuery(name =Iuser.findAll,query =SELECT i FROM Iuser i),
@NamedQuery(name =Iuser.findByUid,query = SELECT i FROM Iuser i WHERE i.uid =:uid),
@NamedQuery(name =Iuser.findByUsername,query =SELECT i FROM Iuser i WHERE i.username =:username),
@NamedQuery(name =Iuser.findByPassword,query =SELECT i FROM Iuser i WHERE i.password =:password),
@NamedQuery(name =Iuser.findByPnum,query = SELECT i FROM Iuser i WHERE i.pnum =:pnum),
@NamedQuery(name =Iuser.findByZipcode,query =SELECT i FROM Iuser i WHERE i.zipcode =:zipcode),
@NamedQuery(name =Iuser.findByState,query =SELECT i FROM Iuser i WHERE i.state =:state),
@NamedQuery(name =Iuser.findByDob,query =SELECT我从Iuser我WHERE i.dob =:dob),
@NamedQuery(name =Iuser.findByEmail, query =SELECT i FROM Iuser i WHERE i.email =:email),
@NamedQuery(name =Iuser.findByLastlogin,query =SELECT i FROM Iuser i WHERE i.lastlogin =:lastlogin) ,
@NamedQuery(name =Iuser.findByRegdate,query =SELECT i FROM Iuser i WHERE i.regdate =:regdate),
@NamedQuery(name =Iuser.findByAddress,query =SELECT i FROM Iuser i WHERE i.address =:address),
@NamedQuery(name =Iuser.findByCity,query =SELECT i FROM Iuser i WHERE i.city =:city)} )
public class Iuser implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name =uid)
private Integer uid ;
@Basic(optional = false)
@Column(name =username)
private String username;
@Basic(optional = false)
@Column(name =password)
private String password;
@Basic(optional = false)
@Column(name =pnum)
private int pnum;
@Basic(optional = false)
@Column(name =zipcode)
private int zipcode;
@Basic(optional = false)
@Column(name =state)
private String state;
@Basic(optional = false)
@Column(name =dob)
@Temporal(TemporalType.TIMESTAMP)
private Date dob;
@Basic(optional = false)
@Column(name =email)
private String email;
@Column(name =lastlogin)
@Temporal(TemporalType.TIMESTAMP)
私人日期lastlogin;
@Column(name =regdate)
@Temporal(TemporalType.TIMESTAMP)
private Date regdate;
@Basic(optional = false)
@Column(name =address)
private String address;
@Basic(optional = false)
@Column(name =city)
private String city;
@JoinColumn(name =group,referencedColumnName =g_id)
@ManyToOne(optional = false)
private Igroup igroup;
@OneToMany(cascade = CascadeType.ALL,mappedBy =iuser)
private List< Irent> irentList;
@OneToMany(cascade = CascadeType.ALL,mappedBy =iuser)
private List< Ipayment> ipaymentList;

public Iuser(){
}

public Iuser(Integer uid){
this.uid = uid;
}

public Iuser(Integer uid,String username,String password,int pnum,int zipcode,String state,Date dob,String email,String address,String city){
this.uid = uid;
this.username = username;
this.password = password;
this.pnum = pnum;
this.zipcode = zipcode;
this.state = state;
this.dob = dob;
this.email = email;
this.address = address;
this.city = city;
}

public Integer getUid(){
return uid;
}

public void setUid(Integer uid){
this.uid = uid;
}

public String getUsername(){
return username;
}

public void setUsername(String username){
this.username = username;
}

public String getPassword(){
return password;
}

public void setPassword(String password){
this.password = password;
}

public int getPnum(){
return pnum;
}

public void setPnum(int pnum){
this.pnum = pnum;
}

public int getZipcode(){
return zipcode;
}

public void setZipcode(int zipcode){
this.zipcode = zipcode;
}

public String getState(){
return state;
}

public void setState(String state){
this.state = state;
}

public Date getDob(){
return dob;
}

public void setDob(Date dob){
this.dob = dob;
}

public String getEmail(){
return email;
}

public void setEmail(String email){
this.email = email;
}

public Date getLastlogin(){
return lastlogin;
}

public void setLastlogin(Date lastlogin){
this.lastlogin = lastlogin;
}

public Date getRegdate(){
return regdate;
}

public void setRegdate(Date regdate){
this.regdate = regdate;
}

public String getAddress(){
return address;
}

public void setAddress(String address){
this.address = address;
}

public String getCity(){
return city;
}

public void setCity(String city){
this.city = city;
}

public Igroup getIgroup(){
return igroup;
}

public void setIgroup(Igroup igroup){
this.igroup = igroup;
}

public List< Irent> getIrentList(){
return irentList;
}

public void setIrentList(List< Irent> irentList){
this.irentList = irentList;
}

public List< Ipayment> getIpaymentList(){
return ipaymentList;
}

public void setIpaymentList(List< Ipayment> ipaymentList){
this.ipaymentList = ipaymentList;
}

@Override
public int hashCode(){
int hash = 0;
hash + =(uid!= null?uid.hashCode():0);
返回哈希;
}

@Override
public boolean equals(Object object){
// TODO:Warning - 此方法在id字段为没有设置
if(!(object instanceof Iuser)){
return false;
}
Iuser其他=(Iuser)对象;
if((this.uid == null&& other.uid!= null)||(this.uid!= null&!this.uid.equals(other.uid))) {
return false;
}
返回true;
}

@Override
public String toString(){
returncom.demoejb.entity.Iuser [uid =+ uid +];
}

}

会话Bean类

  / * 
*要更改此模板,请选择工具模板
*并在编辑器中打开模板。
* /

package com.demoejb.DAO;

import com.demoejb.entity.Igroup;
import com.demoejb.entity.Iuser;
import java.util.List;
import javax.ejb.Stateless;
import javax.ejb.LocalBean;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

/ **
*
* @author KencyWindy
* /
@Stateless
@LocalBean
public class UserSessionBean {
@PersistenceContext(unitName =DemoEJB3-ejbPU)
private EntityManager em;

//在下面添加业务逻辑。 (右键单击编辑器并选择
//插入代码>添加业务方法)



public void persist(Object object){
em.persist(object);
}

public Object persistEntity(Object entity){
em.persist(entity);
返回实体;
}

public Object updateEntity(Object entity){
return em.merge(entity);
}

public void removeUser(Iuser user){
user = em.find(Iuser.class,user.getUid());
}

public List< Iuser> getAllUser(){
return em.createNamedQuery(Iuser.findAll)。getResultList();
}

/ *如果新用户输入表单
*,检查用户名和电子邮件如果存在抛出异常,此功能将用于控制器
* /
public Iuser checkExistUser(String email,String username){
Iuser entity = null;
try {
javax.persistence.Query query = em.createQuery(从uuser中选择u,其中iuser.email =:email或iuser.username =:username);
query.setParameter(email,email);
query.setParameter(username,username);
entity =(Iuser)query.getResultList();
} catch(Exception e){
}
return entity;
}

public Iuser addUser(Iuser user){

persist(user);
返回用户;
}

public void persist1(Object object){
em.persist(object);
}
/ *
*获取数据库中的所有组
* /
public List< Igroup> getGroup(){

return em.createNamedQuery(Igroup.findAll)。getResultList();
}


}

JSF托管Bean课程

  / * 
*要更改此模板,请选择工具模板
*并在编辑器中打开模板。
* /

package com.demo.controller;

import com.demoejb.DAO.UserSessionBean;
import com.demoejb.entity.Igroup;
import com.demoejb.entity.Iuser;
import java.util.Date;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.faces.model.SelectItem;


/ **
*
* @author KencyWindy
* /
public class UserController {
@EJB
private UserSessionBean userSessionBean;
私人Iuser用户;






/ **创建UserController * /
的新实例public UserController(){
}

public Iuser getUser(){
return user;
}

public void setUser(Iuser user){
this.user = user;
}

public String addUser(){
String toReturn =false;
String email = user.getEmail();
String username = user.getUsername();
尝试{
if(userSessionBean.checkExistUser(email,username)!= null){
FacesContext context = FacesContext.getCurrentInstance();
context.addMessage(null,new FacesMessage(FacesMessage.SEVERITY_INFO,
Error,username or email id has been exists!));
toReturn =False;
}
else {
Igroup g = new Igroup();
Date date = new Date();
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat(yyyy-MM-dd HH:mm:ss);
String getDate = sdf.format(date);
日期regDate = sdf.parse(getDate);
user.setRegdate(regDate);
user.setLastlogin(regDate);
g.setGId(1);
user.setIgroup(g);
user = userSessionBean.addUser(user);
FacesContext context = FacesContext.getCurrentInstance();
context.addMessage(null,new FacesMessage(FacesMessage.SEVERITY_INFO,
Sucessful,New user has been created!));

}
} catch(异常e){
}

return toReturn;
}

/ *
*为用户创建列表组可以选择编辑
* warning !!!!这个功能可以为管理员
* /

public javax.faces.model.SelectItem [] getGrouplist(){
SelectItem [] options = null;
列表< Igroup> lGroups = userSessionBean.getGroup();
if(lGroups!= null&& lGroups.size()> 0){
int i = 0;
options = new SelectItem [lGroups.size()];
(Igroup iGroup:lGroups){
options [i ++] = new SelectItem(iGroup.getGId(),iGroup.getGName());
}
}
返回选项;
}


}

Face- config

 <?xml version ='1.0'encoding ='UTF-8'?> 

<! - ===========完整配置文件===================== =========== - >

< faces-config version =2.0
xmlns =http://java.sun.com/xml/ns/javaee
xmlns:xsi = http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation =http://java.sun.com/xml/ns/javaee http://java.sun.com/ XML / NS / JavaEE的/网络facesconfig_2_0.xsd>
< managed-bean>
< description> enntire的控制器用户模块< / description>
< managed-bean-name> userController< / managed-bean-name>
< managed-bean-class> com.demo.controller.UserController< / managed-bean-class>
< managed-bean-scope>请求< / managed-bean-scope>
< / managed-bean>
< / faces-config>

第二个问题是我没有使用h将组表放入组合框:selectOne

 < h:outputLabel value =Igroup:for =igroup/> 
< h:selectOneMenu id =igroupvalue =#{userController.user.igroup}title =Igrouprequired =truerequiredMessage =Igroup字段是必需的。
<! - TODO:更新以下可用项目列表的参考 - >
< f:selectItems value =#{userController.grouplist}/>
< / h:selectOneMenu>

当我使用错误发生时,我不知道为什么会发生错误?我从JSFManageBean编写getGrouplist并且有1个方法getAllGroup数据库中的表的当前数据。

解决方案

嘿,我刚刚遇到了一个非常类似的问题,并从Google那里绊倒了。我通过在ManagedBean中创建一个空数据对象来修复它,在您将其映射到的情况下,将修正



private Iuser user;





私人Iuser user = new Iuser();



在UserController类。



由于我对我自己很新,我无法真正解释为什么,但它帮助我和希望它也解决你的问题...


Hello Everybody now i working with JSF 2.0 and EJB3 and i used Primefaces to display error message or success message, i have two problem are one when i put Button sumit (JSF command button) next page Error display

/register.xhtml @26,172 value="#{userController.user.username}": Target Unreachable, 'null' returned null

my code are

User Entity

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.demoejb.entity;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import javax.persistence.Basic;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 *
 * @author KencyWindy
 */
@Entity
@Table(name = "iuser")
@NamedQueries({
    @NamedQuery(name = "Iuser.findAll", query = "SELECT i FROM Iuser i"),
    @NamedQuery(name = "Iuser.findByUid", query = "SELECT i FROM Iuser i WHERE i.uid = :uid"),
    @NamedQuery(name = "Iuser.findByUsername", query = "SELECT i FROM Iuser i WHERE i.username = :username"),
    @NamedQuery(name = "Iuser.findByPassword", query = "SELECT i FROM Iuser i WHERE i.password = :password"),
    @NamedQuery(name = "Iuser.findByPnum", query = "SELECT i FROM Iuser i WHERE i.pnum = :pnum"),
    @NamedQuery(name = "Iuser.findByZipcode", query = "SELECT i FROM Iuser i WHERE i.zipcode = :zipcode"),
    @NamedQuery(name = "Iuser.findByState", query = "SELECT i FROM Iuser i WHERE i.state = :state"),
    @NamedQuery(name = "Iuser.findByDob", query = "SELECT i FROM Iuser i WHERE i.dob = :dob"),
    @NamedQuery(name = "Iuser.findByEmail", query = "SELECT i FROM Iuser i WHERE i.email = :email"),
    @NamedQuery(name = "Iuser.findByLastlogin", query = "SELECT i FROM Iuser i WHERE i.lastlogin = :lastlogin"),
    @NamedQuery(name = "Iuser.findByRegdate", query = "SELECT i FROM Iuser i WHERE i.regdate = :regdate"),
    @NamedQuery(name = "Iuser.findByAddress", query = "SELECT i FROM Iuser i WHERE i.address = :address"),
    @NamedQuery(name = "Iuser.findByCity", query = "SELECT i FROM Iuser i WHERE i.city = :city")})
public class Iuser implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Basic(optional = false)
    @Column(name = "uid")
    private Integer uid;
    @Basic(optional = false)
    @Column(name = "username")
    private String username;
    @Basic(optional = false)
    @Column(name = "password")
    private String password;
    @Basic(optional = false)
    @Column(name = "pnum")
    private int pnum;
    @Basic(optional = false)
    @Column(name = "zipcode")
    private int zipcode;
    @Basic(optional = false)
    @Column(name = "state")
    private String state;
    @Basic(optional = false)
    @Column(name = "dob")
    @Temporal(TemporalType.TIMESTAMP)
    private Date dob;
    @Basic(optional = false)
    @Column(name = "email")
    private String email;
    @Column(name = "lastlogin")
    @Temporal(TemporalType.TIMESTAMP)
    private Date lastlogin;
    @Column(name = "regdate")
    @Temporal(TemporalType.TIMESTAMP)
    private Date regdate;
    @Basic(optional = false)
    @Column(name = "address")
    private String address;
    @Basic(optional = false)
    @Column(name = "city")
    private String city;
    @JoinColumn(name = "group", referencedColumnName = "g_id")
    @ManyToOne(optional = false)
    private Igroup igroup;
    @OneToMany(cascade = CascadeType.ALL, mappedBy = "iuser")
    private List<Irent> irentList;
    @OneToMany(cascade = CascadeType.ALL, mappedBy = "iuser")
    private List<Ipayment> ipaymentList;

    public Iuser() {
    }

    public Iuser(Integer uid) {
        this.uid = uid;
    }

    public Iuser(Integer uid, String username, String password, int pnum, int zipcode, String state, Date dob, String email, String address, String city) {
        this.uid = uid;
        this.username = username;
        this.password = password;
        this.pnum = pnum;
        this.zipcode = zipcode;
        this.state = state;
        this.dob = dob;
        this.email = email;
        this.address = address;
        this.city = city;
    }

    public Integer getUid() {
        return uid;
    }

    public void setUid(Integer uid) {
        this.uid = uid;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public int getPnum() {
        return pnum;
    }

    public void setPnum(int pnum) {
        this.pnum = pnum;
    }

    public int getZipcode() {
        return zipcode;
    }

    public void setZipcode(int zipcode) {
        this.zipcode = zipcode;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public Date getDob() {
        return dob;
    }

    public void setDob(Date dob) {
        this.dob = dob;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public Date getLastlogin() {
        return lastlogin;
    }

    public void setLastlogin(Date lastlogin) {
        this.lastlogin = lastlogin;
    }

    public Date getRegdate() {
        return regdate;
    }

    public void setRegdate(Date regdate) {
        this.regdate = regdate;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public Igroup getIgroup() {
        return igroup;
    }

    public void setIgroup(Igroup igroup) {
        this.igroup = igroup;
    }

    public List<Irent> getIrentList() {
        return irentList;
    }

    public void setIrentList(List<Irent> irentList) {
        this.irentList = irentList;
    }

    public List<Ipayment> getIpaymentList() {
        return ipaymentList;
    }

    public void setIpaymentList(List<Ipayment> ipaymentList) {
        this.ipaymentList = ipaymentList;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (uid != null ? uid.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof Iuser)) {
            return false;
        }
        Iuser other = (Iuser) object;
        if ((this.uid == null && other.uid != null) || (this.uid != null && !this.uid.equals(other.uid))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "com.demoejb.entity.Iuser[uid=" + uid + "]";
    }

}

Session Bean class

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.demoejb.DAO;

import com.demoejb.entity.Igroup;
import com.demoejb.entity.Iuser;
import java.util.List;
import javax.ejb.Stateless;
import javax.ejb.LocalBean;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

/**
 *
 * @author KencyWindy
 */
@Stateless
@LocalBean
public class UserSessionBean {
    @PersistenceContext(unitName = "DemoEJB3-ejbPU")
    private EntityManager em;

    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")



    public void persist(Object object) {
        em.persist(object);
    }

   public Object persistEntity(Object entity) {
         em.persist(entity);
         return entity;
    }

   public Object updateEntity(Object entity){
    return em.merge(entity);
   }

   public void removeUser(Iuser user){
    user = em.find(Iuser.class, user.getUid());
   }

   public List<Iuser> getAllUser(){
    return em.createNamedQuery("Iuser.findAll").getResultList();
   }

   /*Check username and email if new user enter into form
    * if exist throw exception, this feature will be used in controller
    */
   public Iuser checkExistUser(String email,String username){
        Iuser entity = null;
       try {
            javax.persistence.Query query = em.createQuery("select u from iuser u where iuser.email = : email or iuser.username = :username");
            query.setParameter("email", email);
            query.setParameter("username", username);
            entity = (Iuser) query.getResultList();
       } catch (Exception e) {
       }
        return entity;
   }

   public Iuser addUser(Iuser user){

        persist(user);
       return  user;
   }

    public void persist1(Object object) {
        em.persist(object);
    }
    /*
     * Get all group in database
     */
    public List<Igroup> getGroup() {

        return em.createNamedQuery("Igroup.findAll").getResultList();
    }


}

JSF Managed Bean class

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.demo.controller;

import com.demoejb.DAO.UserSessionBean;
import com.demoejb.entity.Igroup;
import com.demoejb.entity.Iuser;
import java.util.Date;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.faces.model.SelectItem;


/**
 *
 * @author KencyWindy
 */
public class UserController {
    @EJB
    private UserSessionBean userSessionBean;
    private Iuser user;






    /** Creates a new instance of UserController */
    public UserController() {
    }

    public Iuser getUser() {
        return user;
    }

    public void setUser(Iuser user) {
        this.user = user;
    }

     public String addUser(){
        String toReturn =  "false";
        String email = user.getEmail();
        String username = user.getUsername();
        try {
                if(userSessionBean.checkExistUser(email, username) != null){
                    FacesContext context = FacesContext.getCurrentInstance();
                     context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,
                    "Error", "username or email id has been exist!"));
                    toReturn = "False";
                }
                 else   {
                 Igroup g = new Igroup();
                 Date date = new Date();
                 java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                 String getDate = sdf.format(date);
                 Date regDate = sdf.parse(getDate);
                 user.setRegdate(regDate);
                 user.setLastlogin(regDate);
                 g.setGId(1);
                 user.setIgroup(g);
                 user = userSessionBean.addUser(user);
                 FacesContext context = FacesContext.getCurrentInstance();
                context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,
                    "Sucessful", "New user has been created!"));

             }
        } catch (Exception e) {
        }

        return toReturn;
    }

    /*
     * Create list group for user can choose to edit
     * warning !!!! this feature it can posible for administrator
     */

     public javax.faces.model.SelectItem[] getGrouplist(){
        SelectItem[] options = null;
        List<Igroup> lGroups = userSessionBean.getGroup();
        if(lGroups != null && lGroups.size() > 0){
            int i = 0 ;
            options = new SelectItem[lGroups.size()];
            for (Igroup iGroup : lGroups){
                options[i++] = new SelectItem(iGroup.getGId(), iGroup.getGName());
            }
        }
        return options;
     }


}

Face- config

<?xml version='1.0' encoding='UTF-8'?>

<!-- =========== FULL CONFIGURATION FILE ================================== -->

<faces-config version="2.0"
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
    <managed-bean>
        <description>Controller for enntire User module</description>
        <managed-bean-name>userController</managed-bean-name>
        <managed-bean-class>com.demo.controller.UserController</managed-bean-class>
        <managed-bean-scope>request</managed-bean-scope>
    </managed-bean>
</faces-config>

Second problem is i not give group table into combobox with h:selectOne

<h:outputLabel value="Igroup:" for="igroup" />
                    <h:selectOneMenu id="igroup" value="#{userController.user.igroup}" title="Igroup" required="true" requiredMessage="The Igroup field is required.">
                        <!-- TODO: update below reference to list of available items-->
                        <f:selectItems value="#{userController.grouplist}"/>
                    </h:selectOneMenu>

When i used error occured, i dont know why occur error? i write getGrouplist from JSFManageBean and have 1 method getAllGroup Current of table in database.

解决方案

Hey, I just ran into a very similar problem and stumbled upon this from Google. I fixed it by creating an empty data object in the ManagedBean that you're mapping it to, in your case that would be correcting

"private Iuser user;"

to

"private Iuser user = new Iuser();"

in the UserController class.

As I'm pretty new to EE myself, I can't really explain why, but it helped me & hope it solves your problem too...

这篇关于JSF错误目标无法访问,'null'返回null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆