Avatar billede sowiho Nybegynder
06. juli 2013 - 21:54 Der er 5 kommentarer

java.lang.IllegalArgumentException: Object: dk.whatueat.JPA.Bruger[ id=null ] is not a known entity type.

Jeg får denne error, når jeg prøver at oprette denne bruger.

Den virker første gang efter jeg har kørt entity from database(bruger netbeans) men efterfølgende før jeg den fejl..
nogle der kan hjælpe??
Avatar billede arne_v Ekspert
06. juli 2013 - 22:10 #1
Hvordan ser klassen dk.whatueat.JPA.Bruger ud?
Avatar billede sowiho Nybegynder
07. juli 2013 - 15:32 #2
Den er autogenereret af netbeans fra databasen..

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package dk.whatueat.model;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
*
* @author S-H
*/
@Entity
@Table(name = "BRUGER")
@NamedQueries({
    @NamedQuery(name = "Bruger.findAll", query = "SELECT b FROM Bruger b"),
    @NamedQuery(name = "Bruger.findByUsername", query = "SELECT b FROM Bruger b WHERE b.username = :username")})
@SequenceGenerator(sequenceName = "WHAT_SEQ",name = "SEQ")
public class Bruger implements Serializable {
    @Basic(optional = false)
    @Column(name = "FIRSTNAME")
    private String firstname;
    @Basic(optional = false)
    @Column(name = "LASTNAME")
    private String lastname;
    @Column(name = "ADRESS")
    private String adress;
    @Column(name = "POSTNR")
    private Integer postnr;
    @Column(name = "PHONE")
    private String phone;
    @Column(name = "BIRTH")
    @Temporal(TemporalType.DATE)
    private Date birth;
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(generator = "SEQ", strategy = GenerationType.SEQUENCE)
    @Basic(optional = false)
    @Column(name = "ID")
    private Integer id;
    @Basic(optional = false)
    @Column(name = "USERNAME")
    private String username;
    @Basic(optional = false)
    @Column(name = "PASSWORD")
    private String password;
    @Basic(optional = false)
    @Column(name = "EMAIL")
    private String email;

    public Bruger() {
    }

   

    public Bruger(String username, String password, String email) {
       
        this.username = username;
        this.password = password;
        this.email = email;
    }

    public Bruger(String firstname, String lastname, String adress, Integer postnr, String phone, Date birth, String username, String password, String email) {
        this.firstname = firstname;
        this.lastname = lastname;
        this.adress = adress;
        this.postnr = postnr;
        this.phone = phone;
        this.birth = birth;
       
        this.username = username;
        this.password = password;
        this.email = email;
    }

   
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    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 String getEmail() {
        return email;
    }

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

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (id != null ? id.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 Bruger)) {
            return false;
        }
        Bruger other = (Bruger) object;
        if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "dk.whatueat.JPA.Bruger[ id=" + id + " ]";
    }

    public String getFirstname() {
        return firstname;
    }

    public void setFirstname(String firstname) {
        this.firstname = firstname;
    }

    public String getLastname() {
        return lastname;
    }

    public void setLastname(String lastname) {
        this.lastname = lastname;
    }

    public String getAdress() {
        return adress;
    }

    public void setAdress(String adress) {
        this.adress = adress;
    }

    public Integer getPostnr() {
        return postnr;
    }

    public void setPostnr(Integer postnr) {
        this.postnr = postnr;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public Date getBirth() {
        return birth;
    }

    public void setBirth(Date birth) {
        this.birth = birth;
    }
   
}
Avatar billede sowiho Nybegynder
07. juli 2013 - 15:33 #3
du kan også få persistance.xml..

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
  <persistence-unit name="WhatUEatJPAPU" transaction-type="RESOURCE_LOCAL">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <class>dk.whatueat.model.Bruger</class>
    <properties>
      <property name="javax.persistence.jdbc.url" value="jdbc:derby://localhost:1527/whatueat"/>
      <property name="javax.persistence.jdbc.password" value="swh"/>
      <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver"/>
      <property name="javax.persistence.jdbc.user" value="swh"/>
    </properties>
  </persistence-unit>
</persistence>
Avatar billede arne_v Ekspert
07. juli 2013 - 16:04 #4
dk.whatueat.JPA.Bruger
dk.whatueat.model.Bruger

er ikke samme klasse
Avatar billede sowiho Nybegynder
08. juli 2013 - 10:50 #5
okay, det eneste sted der står dk.whatueat.JPA.Bruger det er i Bruger tostring

@Override
    public String toString() {
        return "dk.whatueat.JPA.Bruger[ id=" + id + " ]";
    }

har ændret den til .model... men nu virker det...

Fatter ikke netbeans...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester