Spring Boot und JPA Error creating bean

BetaUser

Mitglied
Hallo zusammen,
ich habe mal wieder ein Problem mit Spring Boot und JPA.
Code:
@SpringBootApplication
@ComponentScan(basePackages = "de.xxx.Preisbearbeitung2022Application.jpa")
public class Preisbearbeitung2022Application {

    private static final Logger log = Logger.getLogger((Preisbearbeitung2022Application.class.getName()));
    public static Config CONFIG = new Config();
    public static ConfigurableApplicationContext APPLICATIONCONTEXT;
    public static JTLDatabase JTLDATABASE;
    public static TArtikelService TARTIKELSERVICE;
    public static TlagerbestandService TLAGERBESTANDSERVICE;
    public static SellersAPIBuilder SPAPIBUILDER = new SellersAPIBuilder();
    public static MySQLDatabase MYSQLDATABASIS = new MySQLDatabase();

    public static void main(String[] args) {
        APPLICATIONCONTEXT = SpringApplication.run(Preisbearbeitung2022Application.class, args);
        ReportDLHandler reportDLHandler = new ReportDLHandler();
        //TARTIKELSERVICE = APPLICATIONCONTEXT.getBean(TArtikelService.class);
        //TLAGERBESTANDSERVICE = APPLICATIONCONTEXT.getBean(TlagerbestandService.class);


        List<String> sku = reportDLHandler.getReportColumnBynamenWithCall(3843554019263l, "sku");
        List<PreisOBJ> preisOBJS = new ArrayList<>();
        sku.parallelStream().forEach(s -> {
            preisOBJS.add(new PreisOBJ(s));
        });
        log.info("size ist: "+preisOBJS.size());
    }
}
Code:
@Service
public class TArtikelService {
    @Autowired
    private TArtikelRepository tArtikelRepository;

    public TArtikelService(TArtikelRepository tArtikelRepository) {
        this.tArtikelRepository = tArtikelRepository;
    }

    public Optional<TArtikelEntity> getById(int id) {
        return tArtikelRepository.findById(Long.valueOf(id));
    }

    public List<TArtikelEntity> getAll() {
        return tArtikelRepository.findAll();
    }

    public List<TArtikelEntity> getByAsin(String asin) {
        return tArtikelRepository.findBycAsin(asin);
    }

    public TArtikelEntity getBycArtNr(String artNr) {
        return tArtikelRepository.findBycArtNr(artNr).get();
    }

    public List<TArtikelEntity> getByHan(String han) {
        return tArtikelRepository.findBycHan(han);
    }

    public List<TArtikelEntity> getByIstVater(byte istVater) {
        return tArtikelRepository.findBynIstVater(istVater);
    }

    public List<TArtikelEntity> getByVaterArtikel(int vaterArtikel) {
        return tArtikelRepository.findBykVaterArtikel(vaterArtikel);
    }


}
Code:
@Repository
public interface TArtikelRepository extends JpaRepository<TArtikelEntity, Long> {
    Optional<TArtikelEntity> findById(Long id);
    List<TArtikelEntity> findBycAsin(String cAsin);
    Optional<TArtikelEntity> findBycArtNr(String cArtNr);
    List<TArtikelEntity> findBycHan(String cHan);
    List<TArtikelEntity> findBynIstVater(byte nIstVater);
    List<TArtikelEntity> findBykVaterArtikel(int kVaterArtikel);
}
Code:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'TArtikelService' defined in file [C:\Users\DavidPapola\IdeaProjects\Preisbearbeitung2022\target\classes\de\xxx\Preisbearbeitung2022\jpa\TArtikelService.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TArtikelRepository' defined in de.xxx.Preisbearbeitung2022.jpa.TArtikelRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Not a managed type: class de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.23.jar:5.3.23]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.23.jar:5.3.23]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) ~[spring-boot-2.7.5.jar:2.7.5]
    at de.xxx.Preisbearbeitung2022.Preisbearbeitung2022Application.main(Preisbearbeitung2022Application.java:40) ~[classes/:na]
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TArtikelRepository' defined in de.xxx.Preisbearbeitung2022.jpa.TArtikelRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Not a managed type: class de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.23.jar:5.3.23]
    ... 18 common frames omitted
Caused by: java.lang.IllegalArgumentException: Not a managed type: class de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity
    at org.hibernate.metamodel.internal.MetamodelImpl.managedType(MetamodelImpl.java:583) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.hibernate.metamodel.internal.MetamodelImpl.managedType(MetamodelImpl.java:85) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation.<init>(JpaMetamodelEntityInformation.java:75) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaEntityInformationSupport.getEntityInformation(JpaEntityInformationSupport.java:66) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getEntityInformation(JpaRepositoryFactory.java:233) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:182) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:165) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:76) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:325) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.lambda$afterPropertiesSet$5(RepositoryFactoryBeanSupport.java:323) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.util.Lazy.getNullable(Lazy.java:231) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.util.Lazy.get(Lazy.java:115) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:329) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.afterPropertiesSet(JpaRepositoryFactoryBean.java:144) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.23.jar:5.3.23]
    ... 29 common frames omitted
Code:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>de.xxx</groupId>
    <artifactId>Preisbearbeitung2022</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>Preisbearbeitung2022</name>
    <description>kosten rechner</description>
    <properties>
        <java.version>19</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>

        <dependency>
            <groupId>com.microsoft.sqlserver</groupId>
            <artifactId>mssql-jdbc</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-j</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>javax.persistence</groupId>
            <artifactId>javax.persistence-api</artifactId>
            <version>2.2</version>
        </dependency>
        <dependency>
            <groupId>c3p0</groupId>
            <artifactId>c3p0</artifactId>
            <version>0.9.1.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-csv</artifactId>
            <version>1.8</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate.orm</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>6.1.2.Final</version>
        </dependency>
        <dependency>
            <groupId>jakarta.persistence</groupId>
            <artifactId>jakarta.persistence-api</artifactId>
            <version>3.1.0</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13.2</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>
ich habe schon mit ComponentScan uns diversen Einstellungen versucht doch bekomme ich es nicht anzulaufen.
 
Du hast die Klasse TArtikelEntity nicht gezeigt - hat das eine @Entity Annotation?
Das wäre so ein erster Rateversuch.
 
Java:
import jakarta.persistence.*;

import java.math.BigDecimal;
import java.sql.Date;
import java.util.Objects;

@Entity
@Table(name = "tArtikel", schema = "dbo", catalog = "eazybusiness")
public class TArtikelEntity {
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Id
    @Column(name = "kArtikel")
    private int kArtikel;
    @Basic
    @Column(name = "cArtNr")
    private String cArtNr;
    @Basic
    @Column(name = "fVKNetto")
    private BigDecimal fVkNetto;
    @Basic
    @Column(name = "fUVP")
    private BigDecimal fUvp;
    @Basic
    @Column(name = "cAnmerkung")
    private String cAnmerkung;
    @Basic
    @Column(name = "cPreisliste")
    private String cPreisliste;
    @Basic
    @Column(name = "cAktiv")
    private String cAktiv;
    @Basic
    @Column(name = "nLagerbestand")
    private BigDecimal nLagerbestand;
    @Basic
    @Column(name = "nMindestbestellmaenge")
    private BigDecimal nMindestbestellmaenge;
    @Basic
    @Column(name = "cBarcode")
    private String cBarcode;
    @Basic
    @Column(name = "cTopArtikel")
    private String cTopArtikel;
    @Basic
    @Column(name = "cInet")
    private String cInet;
    @Basic
    @Column(name = "cDelInet")
    private String cDelInet;
    @Basic
    @Column(name = "fGewicht")
    private BigDecimal fGewicht;
    @Basic
    @Column(name = "cNeu")
    private String cNeu;
    @Basic
    @Column(name = "cLagerArtikel")
    private String cLagerArtikel;
    @Basic
    @Column(name = "cTeilbar")
    private String cTeilbar;
    @Basic
    @Column(name = "cLagerAktiv")
    private String cLagerAktiv;
    @Basic
    @Column(name = "cLagerKleinerNull")
    private String cLagerKleinerNull;
    @Basic
    @Column(name = "nMidestbestand")
    private BigDecimal nMidestbestand;
    @Basic
    @Column(name = "fEKNetto")
    private BigDecimal fEkNetto;
    @Basic
    @Column(name = "fEbayPreis")
    private BigDecimal fEbayPreis;
    @Basic
    @Column(name = "cLagerVariation")
    private String cLagerVariation;
    @Basic
    @Column(name = "nDelete")
    private Byte nDelete;
    @Basic
    @Column(name = "dMod")
    private Date dMod;
    @Basic
    @Column(name = "fPackeinheit")
    private BigDecimal fPackeinheit;
    @Basic
    @Column(name = "nVPE")
    private Byte nVpe;
    @Basic
    @Column(name = "fVPEWert")
    private BigDecimal fVpeWert;
    @Basic
    @Column(name = "cSuchbegriffe")
    private String cSuchbegriffe;
    @Basic
    @Column(name = "cTaric")
    private String cTaric;
    @Basic
    @Column(name = "cHerkunftsland")
    private String cHerkunftsland;
    @Basic
    @Column(name = "kSteuerklasse")
    private int kSteuerklasse;
    @Basic
    @Column(name = "dErstelldatum")
    private Date dErstelldatum;
    @Basic
    @Column(name = "dErscheinungsdatum")
    private Date dErscheinungsdatum;
    @Basic
    @Column(name = "nSort")
    private Integer nSort;
    @Basic
    @Column(name = "kVersandklasse")
    private Integer kVersandklasse;
    @Basic
    @Column(name = "fArtGewicht")
    private BigDecimal fArtGewicht;
    @Basic
    @Column(name = "cHAN")
    private String cHan;
    @Basic
    @Column(name = "cSerie")
    private String cSerie;
    @Basic
    @Column(name = "cISBN")
    private String cIsbn;
    @Basic
    @Column(name = "cUNNummer")
    private String cUnNummer;
    @Basic
    @Column(name = "cGefahrnr")
    private String cGefahrnr;
    @Basic
    @Column(name = "cASIN")
    private String cAsin;
    @Basic
    @Column(name = "kEigenschaftKombi")
    private int kEigenschaftKombi;
    @Basic
    @Column(name = "kVaterArtikel")
    private int kVaterArtikel;
    @Basic
    @Column(name = "nIstVater")
    private byte nIstVater;
    @Basic
    @Column(name = "nIstMindestbestand")
    private Byte nIstMindestbestand;
    @Basic
    @Column(name = "fAbnahmeintervall")
    private BigDecimal fAbnahmeintervall;
    @Basic
    @Column(name = "kStueckliste")
    private int kStueckliste;
    @Basic
    @Column(name = "cUPC")
    private String cUpc;
    @Basic
    @Column(name = "kWarengruppe")
    private int kWarengruppe;
    @Basic
    @Column(name = "cEPID")
    private String cEpid;
    @Basic
    @Column(name = "nMHD")
    private byte nMhd;
    @Basic
    @Column(name = "nCharge")
    private byte nCharge;
    @Basic
    @Column(name = "nNichtBestellbar")
    private byte nNichtBestellbar;
    @Basic
    @Column(name = "fAmazonVK")
    private BigDecimal fAmazonVk;
    @Basic
    @Column(name = "nPufferTyp")
    private Byte nPufferTyp;
    @Basic
    @Column(name = "nPuffer")
    private int nPuffer;
    @Basic
    @Column(name = "nProzentualePreisStaffelAktiv")
    private byte nProzentualePreisStaffelAktiv;
    @Basic
    @Column(name = "nSeriennummernVerfolgung")
    private byte nSeriennummernVerfolgung;
    @Basic
    @Column(name = "kHersteller")
    private Integer kHersteller;
    @Basic
    @Column(name = "kLieferStatus")
    private Integer kLieferStatus;
    @Basic
    @Column(name = "kMassEinheit")
    private Integer kMassEinheit;
    @Basic
    @Column(name = "fMassMenge")
    private BigDecimal fMassMenge;
    @Basic
    @Column(name = "kGrundPreisEinheit")
    private Integer kGrundPreisEinheit;
    @Basic
    @Column(name = "fGrundpreisMenge")
    private BigDecimal fGrundpreisMenge;
    @Basic
    @Column(name = "fBreite")
    private BigDecimal fBreite;
    @Basic
    @Column(name = "fHoehe")
    private BigDecimal fHoehe;
    @Basic
    @Column(name = "fLaenge")
    private BigDecimal fLaenge;
    @Basic
    @Column(name = "kVPEEinheit")
    private Integer kVpeEinheit;
    @Basic
    @Column(name = "nLiefertageWennAusverkauft")
    private Integer nLiefertageWennAusverkauft;
    @Basic
    @Column(name = "kVerkaufsEinheit")
    private Integer kVerkaufsEinheit;
    @Basic
    @Column(name = "dZulaufVerfuegbarAm")
    private Date dZulaufVerfuegbarAm;
    @Basic
    @Column(name = "nAutomatischeLiefertageberechnung")
    private Byte nAutomatischeLiefertageberechnung;
    @Basic
    @Column(name = "nBearbeitungszeit")
    private Integer nBearbeitungszeit;
    @Basic
    @Column(name = "fLetzterEK")
    private BigDecimal fLetzterEk;
    @Basic
    @Column(name = "dLetzterEK")
    private Date dLetzterEk;
    @Basic
    @Column(name = "kBenutzerLetzteAenderung")
    private Integer kBenutzerLetzteAenderung;
    @Basic
    @Column(name = "nZulaufVerfuegbarMenge")
    private BigDecimal nZulaufVerfuegbarMenge;
    @Basic
    @Column(name = "dNeuImSortiment")
    private Date dNeuImSortiment;
    @Basic
    @Column(name = "nEbayAbgleich")
    private byte nEbayAbgleich;
    @Basic
    @Column(name = "kZustand")
    private int kZustand;
    @Basic
    @Column(name = "cAmazonFNSKU")
    private String cAmazonFnsku;
    @Basic
    @Column(name = "cJfsku")
    private String cJfsku;
    @Basic
    @Column(name = "nSonderTyp")
    private byte nSonderTyp;
    @Basic
    @Column(name = "bRowversion")
    private Object bRowversion;
    @Basic
    @Column(name = "nNichtRabattfaehig")
    private byte nNichtRabattfaehig;
    @Basic
    @Column(name = "cLabelNamen")
    private String cLabelNamen;
    @Basic
    @Column(name = "kDefinition")
    private Integer kDefinition;
    @Basic
    @Column(name = "nIstTeilmengenArtikel")
    private byte nIstTeilmengenArtikel;

    public TArtikelEntity() {
    }

    public int getkArtikel() {
        return kArtikel;
    }

    public void setkArtikel(int kArtikel) {
        this.kArtikel = kArtikel;
    }

    public String getcArtNr() {
        return cArtNr;
    }

    public void setcArtNr(String cArtNr) {
        this.cArtNr = cArtNr;
    }

    public BigDecimal getfVkNetto() {
        return fVkNetto;
    }

    public void setfVkNetto(BigDecimal fVkNetto) {
        this.fVkNetto = fVkNetto;
    }

    public BigDecimal getfUvp() {
        return fUvp;
    }

    public void setfUvp(BigDecimal fUvp) {
        this.fUvp = fUvp;
    }

    public String getcAnmerkung() {
        return cAnmerkung;
    }

    public void setcAnmerkung(String cAnmerkung) {
        this.cAnmerkung = cAnmerkung;
    }

    public String getcPreisliste() {
        return cPreisliste;
    }

    public void setcPreisliste(String cPreisliste) {
        this.cPreisliste = cPreisliste;
    }

    public String getcAktiv() {
        return cAktiv;
    }

    public void setcAktiv(String cAktiv) {
        this.cAktiv = cAktiv;
    }

    public BigDecimal getnLagerbestand() {
        return nLagerbestand;
    }

    public void setnLagerbestand(BigDecimal nLagerbestand) {
        this.nLagerbestand = nLagerbestand;
    }

    public BigDecimal getnMindestbestellmaenge() {
        return nMindestbestellmaenge;
    }

    public void setnMindestbestellmaenge(BigDecimal nMindestbestellmaenge) {
        this.nMindestbestellmaenge = nMindestbestellmaenge;
    }

    public String getcBarcode() {
        return cBarcode;
    }

    public void setcBarcode(String cBarcode) {
        this.cBarcode = cBarcode;
    }

    public String getcTopArtikel() {
        return cTopArtikel;
    }

    public void setcTopArtikel(String cTopArtikel) {
        this.cTopArtikel = cTopArtikel;
    }

    public String getcInet() {
        return cInet;
    }

    public void setcInet(String cInet) {
        this.cInet = cInet;
    }

    public String getcDelInet() {
        return cDelInet;
    }

    public void setcDelInet(String cDelInet) {
        this.cDelInet = cDelInet;
    }

    public BigDecimal getfGewicht() {
        return fGewicht;
    }

    public void setfGewicht(BigDecimal fGewicht) {
        this.fGewicht = fGewicht;
    }

    public String getcNeu() {
        return cNeu;
    }

    public void setcNeu(String cNeu) {
        this.cNeu = cNeu;
    }

    public String getcLagerArtikel() {
        return cLagerArtikel;
    }

    public void setcLagerArtikel(String cLagerArtikel) {
        this.cLagerArtikel = cLagerArtikel;
    }

    public String getcTeilbar() {
        return cTeilbar;
    }

    public void setcTeilbar(String cTeilbar) {
        this.cTeilbar = cTeilbar;
    }

    public String getcLagerAktiv() {
        return cLagerAktiv;
    }

    public void setcLagerAktiv(String cLagerAktiv) {
        this.cLagerAktiv = cLagerAktiv;
    }

    public String getcLagerKleinerNull() {
        return cLagerKleinerNull;
    }

    public void setcLagerKleinerNull(String cLagerKleinerNull) {
        this.cLagerKleinerNull = cLagerKleinerNull;
    }

    public BigDecimal getnMidestbestand() {
        return nMidestbestand;
    }

    public void setnMidestbestand(BigDecimal nMidestbestand) {
        this.nMidestbestand = nMidestbestand;
    }

    public BigDecimal getfEkNetto() {
        return fEkNetto;
    }

    public void setfEkNetto(BigDecimal fEkNetto) {
        this.fEkNetto = fEkNetto;
    }

    public BigDecimal getfEbayPreis() {
        return fEbayPreis;
    }

    public void setfEbayPreis(BigDecimal fEbayPreis) {
        this.fEbayPreis = fEbayPreis;
    }

    public String getcLagerVariation() {
        return cLagerVariation;
    }

    public void setcLagerVariation(String cLagerVariation) {
        this.cLagerVariation = cLagerVariation;
    }

    public Byte getnDelete() {
        return nDelete;
    }

    public void setnDelete(Byte nDelete) {
        this.nDelete = nDelete;
    }

    public Date getdMod() {
        return dMod;
    }

    public void setdMod(Date dMod) {
        this.dMod = dMod;
    }

    public BigDecimal getfPackeinheit() {
        return fPackeinheit;
    }

    public void setfPackeinheit(BigDecimal fPackeinheit) {
        this.fPackeinheit = fPackeinheit;
    }

    public Byte getnVpe() {
        return nVpe;
    }

    public void setnVpe(Byte nVpe) {
        this.nVpe = nVpe;
    }

    public BigDecimal getfVpeWert() {
        return fVpeWert;
    }

    public void setfVpeWert(BigDecimal fVpeWert) {
        this.fVpeWert = fVpeWert;
    }

    public String getcSuchbegriffe() {
        return cSuchbegriffe;
    }

    public void setcSuchbegriffe(String cSuchbegriffe) {
        this.cSuchbegriffe = cSuchbegriffe;
    }

    public String getcTaric() {
        return cTaric;
    }

    public void setcTaric(String cTaric) {
        this.cTaric = cTaric;
    }

    public String getcHerkunftsland() {
        return cHerkunftsland;
    }

    public void setcHerkunftsland(String cHerkunftsland) {
        this.cHerkunftsland = cHerkunftsland;
    }

    public int getkSteuerklasse() {
        return kSteuerklasse;
    }

    public void setkSteuerklasse(int kSteuerklasse) {
        this.kSteuerklasse = kSteuerklasse;
    }

    public Date getdErstelldatum() {
        return dErstelldatum;
    }

    public void setdErstelldatum(Date dErstelldatum) {
        this.dErstelldatum = dErstelldatum;
    }

    public Date getdErscheinungsdatum() {
        return dErscheinungsdatum;
    }

    public void setdErscheinungsdatum(Date dErscheinungsdatum) {
        this.dErscheinungsdatum = dErscheinungsdatum;
    }

    public Integer getnSort() {
        return nSort;
    }

    public void setnSort(Integer nSort) {
        this.nSort = nSort;
    }

    public Integer getkVersandklasse() {
        return kVersandklasse;
    }

    public void setkVersandklasse(Integer kVersandklasse) {
        this.kVersandklasse = kVersandklasse;
    }

    public BigDecimal getfArtGewicht() {
        return fArtGewicht;
    }

    public void setfArtGewicht(BigDecimal fArtGewicht) {
        this.fArtGewicht = fArtGewicht;
    }

    public String getcHan() {
        return cHan;
    }

    public void setcHan(String cHan) {
        this.cHan = cHan;
    }

    public String getcSerie() {
        return cSerie;
    }

    public void setcSerie(String cSerie) {
        this.cSerie = cSerie;
    }

    public String getcIsbn() {
        return cIsbn;
    }

    public void setcIsbn(String cIsbn) {
        this.cIsbn = cIsbn;
    }

    public String getcUnNummer() {
        return cUnNummer;
    }

    public void setcUnNummer(String cUnNummer) {
        this.cUnNummer = cUnNummer;
    }

    public String getcGefahrnr() {
        return cGefahrnr;
    }

    public void setcGefahrnr(String cGefahrnr) {
        this.cGefahrnr = cGefahrnr;
    }

    public String getcAsin() {
        return cAsin;
    }

    public void setcAsin(String cAsin) {
        this.cAsin = cAsin;
    }

    public int getkEigenschaftKombi() {
        return kEigenschaftKombi;
    }

    public void setkEigenschaftKombi(int kEigenschaftKombi) {
        this.kEigenschaftKombi = kEigenschaftKombi;
    }

    public int getkVaterArtikel() {
        return kVaterArtikel;
    }

    public void setkVaterArtikel(int kVaterArtikel) {
        this.kVaterArtikel = kVaterArtikel;
    }

    public byte getnIstVater() {
        return nIstVater;
    }

    public void setnIstVater(byte nIstVater) {
        this.nIstVater = nIstVater;
    }

    public Byte getnIstMindestbestand() {
        return nIstMindestbestand;
    }

    public void setnIstMindestbestand(Byte nIstMindestbestand) {
        this.nIstMindestbestand = nIstMindestbestand;
    }

    public BigDecimal getfAbnahmeintervall() {
        return fAbnahmeintervall;
    }

    public void setfAbnahmeintervall(BigDecimal fAbnahmeintervall) {
        this.fAbnahmeintervall = fAbnahmeintervall;
    }

    public int getkStueckliste() {
        return kStueckliste;
    }

    public void setkStueckliste(int kStueckliste) {
        this.kStueckliste = kStueckliste;
    }

    public String getcUpc() {
        return cUpc;
    }

    public void setcUpc(String cUpc) {
        this.cUpc = cUpc;
    }

    public int getkWarengruppe() {
        return kWarengruppe;
    }

    public void setkWarengruppe(int kWarengruppe) {
        this.kWarengruppe = kWarengruppe;
    }

    public String getcEpid() {
        return cEpid;
    }

    public void setcEpid(String cEpid) {
        this.cEpid = cEpid;
    }

    public byte getnMhd() {
        return nMhd;
    }

    public void setnMhd(byte nMhd) {
        this.nMhd = nMhd;
    }

    public byte getnCharge() {
        return nCharge;
    }

    public void setnCharge(byte nCharge) {
        this.nCharge = nCharge;
    }

    public byte getnNichtBestellbar() {
        return nNichtBestellbar;
    }

    public void setnNichtBestellbar(byte nNichtBestellbar) {
        this.nNichtBestellbar = nNichtBestellbar;
    }

    public BigDecimal getfAmazonVk() {
        return fAmazonVk;
    }

    public void setfAmazonVk(BigDecimal fAmazonVk) {
        this.fAmazonVk = fAmazonVk;
    }

    public Byte getnPufferTyp() {
        return nPufferTyp;
    }

    public void setnPufferTyp(Byte nPufferTyp) {
        this.nPufferTyp = nPufferTyp;
    }

    public int getnPuffer() {
        return nPuffer;
    }

    public void setnPuffer(int nPuffer) {
        this.nPuffer = nPuffer;
    }

    public byte getnProzentualePreisStaffelAktiv() {
        return nProzentualePreisStaffelAktiv;
    }

    public void setnProzentualePreisStaffelAktiv(byte nProzentualePreisStaffelAktiv) {
        this.nProzentualePreisStaffelAktiv = nProzentualePreisStaffelAktiv;
    }

    public byte getnSeriennummernVerfolgung() {
        return nSeriennummernVerfolgung;
    }

    public void setnSeriennummernVerfolgung(byte nSeriennummernVerfolgung) {
        this.nSeriennummernVerfolgung = nSeriennummernVerfolgung;
    }

    public Integer getkHersteller() {
        return kHersteller;
    }

    public void setkHersteller(Integer kHersteller) {
        this.kHersteller = kHersteller;
    }

    public Integer getkLieferStatus() {
        return kLieferStatus;
    }

    public void setkLieferStatus(Integer kLieferStatus) {
        this.kLieferStatus = kLieferStatus;
    }

    public Integer getkMassEinheit() {
        return kMassEinheit;
    }

    public void setkMassEinheit(Integer kMassEinheit) {
        this.kMassEinheit = kMassEinheit;
    }

    public BigDecimal getfMassMenge() {
        return fMassMenge;
    }

    public void setfMassMenge(BigDecimal fMassMenge) {
        this.fMassMenge = fMassMenge;
    }

    public Integer getkGrundPreisEinheit() {
        return kGrundPreisEinheit;
    }

    public void setkGrundPreisEinheit(Integer kGrundPreisEinheit) {
        this.kGrundPreisEinheit = kGrundPreisEinheit;
    }

    public BigDecimal getfGrundpreisMenge() {
        return fGrundpreisMenge;
    }

    public void setfGrundpreisMenge(BigDecimal fGrundpreisMenge) {
        this.fGrundpreisMenge = fGrundpreisMenge;
    }

    public BigDecimal getfBreite() {
        return fBreite;
    }

    public void setfBreite(BigDecimal fBreite) {
        this.fBreite = fBreite;
    }

    public BigDecimal getfHoehe() {
        return fHoehe;
    }

    public void setfHoehe(BigDecimal fHoehe) {
        this.fHoehe = fHoehe;
    }

    public BigDecimal getfLaenge() {
        return fLaenge;
    }

    public void setfLaenge(BigDecimal fLaenge) {
        this.fLaenge = fLaenge;
    }

    public Integer getkVpeEinheit() {
        return kVpeEinheit;
    }

    public void setkVpeEinheit(Integer kVpeEinheit) {
        this.kVpeEinheit = kVpeEinheit;
    }

    public Integer getnLiefertageWennAusverkauft() {
        return nLiefertageWennAusverkauft;
    }

    public void setnLiefertageWennAusverkauft(Integer nLiefertageWennAusverkauft) {
        this.nLiefertageWennAusverkauft = nLiefertageWennAusverkauft;
    }

    public Integer getkVerkaufsEinheit() {
        return kVerkaufsEinheit;
    }

    public void setkVerkaufsEinheit(Integer kVerkaufsEinheit) {
        this.kVerkaufsEinheit = kVerkaufsEinheit;
    }

    public Date getdZulaufVerfuegbarAm() {
        return dZulaufVerfuegbarAm;
    }

    public void setdZulaufVerfuegbarAm(Date dZulaufVerfuegbarAm) {
        this.dZulaufVerfuegbarAm = dZulaufVerfuegbarAm;
    }

    public Byte getnAutomatischeLiefertageberechnung() {
        return nAutomatischeLiefertageberechnung;
    }

    public void setnAutomatischeLiefertageberechnung(Byte nAutomatischeLiefertageberechnung) {
        this.nAutomatischeLiefertageberechnung = nAutomatischeLiefertageberechnung;
    }

    public Integer getnBearbeitungszeit() {
        return nBearbeitungszeit;
    }

    public void setnBearbeitungszeit(Integer nBearbeitungszeit) {
        this.nBearbeitungszeit = nBearbeitungszeit;
    }

    public BigDecimal getfLetzterEk() {
        return fLetzterEk;
    }

    public void setfLetzterEk(BigDecimal fLetzterEk) {
        this.fLetzterEk = fLetzterEk;
    }

    public Date getdLetzterEk() {
        return dLetzterEk;
    }

    public void setdLetzterEk(Date dLetzterEk) {
        this.dLetzterEk = dLetzterEk;
    }

    public Integer getkBenutzerLetzteAenderung() {
        return kBenutzerLetzteAenderung;
    }

    public void setkBenutzerLetzteAenderung(Integer kBenutzerLetzteAenderung) {
        this.kBenutzerLetzteAenderung = kBenutzerLetzteAenderung;
    }

    public BigDecimal getnZulaufVerfuegbarMenge() {
        return nZulaufVerfuegbarMenge;
    }

    public void setnZulaufVerfuegbarMenge(BigDecimal nZulaufVerfuegbarMenge) {
        this.nZulaufVerfuegbarMenge = nZulaufVerfuegbarMenge;
    }

    public Date getdNeuImSortiment() {
        return dNeuImSortiment;
    }

    public void setdNeuImSortiment(Date dNeuImSortiment) {
        this.dNeuImSortiment = dNeuImSortiment;
    }

    public byte getnEbayAbgleich() {
        return nEbayAbgleich;
    }

    public void setnEbayAbgleich(byte nEbayAbgleich) {
        this.nEbayAbgleich = nEbayAbgleich;
    }

    public int getkZustand() {
        return kZustand;
    }

    public void setkZustand(int kZustand) {
        this.kZustand = kZustand;
    }

    public String getcAmazonFnsku() {
        return cAmazonFnsku;
    }

    public void setcAmazonFnsku(String cAmazonFnsku) {
        this.cAmazonFnsku = cAmazonFnsku;
    }

    public String getcJfsku() {
        return cJfsku;
    }

    public void setcJfsku(String cJfsku) {
        this.cJfsku = cJfsku;
    }

    public byte getnSonderTyp() {
        return nSonderTyp;
    }

    public void setnSonderTyp(byte nSonderTyp) {
        this.nSonderTyp = nSonderTyp;
    }

    public Object getbRowversion() {
        return bRowversion;
    }

    public void setbRowversion(Object bRowversion) {
        this.bRowversion = bRowversion;
    }

    public byte getnNichtRabattfaehig() {
        return nNichtRabattfaehig;
    }

    public void setnNichtRabattfaehig(byte nNichtRabattfaehig) {
        this.nNichtRabattfaehig = nNichtRabattfaehig;
    }

    public String getcLabelNamen() {
        return cLabelNamen;
    }

    public void setcLabelNamen(String cLabelNamen) {
        this.cLabelNamen = cLabelNamen;
    }

    public Integer getkDefinition() {
        return kDefinition;
    }

    public void setkDefinition(Integer kDefinition) {
        this.kDefinition = kDefinition;
    }

    public byte getnIstTeilmengenArtikel() {
        return nIstTeilmengenArtikel;
    }

    public void setnIstTeilmengenArtikel(byte nIstTeilmengenArtikel) {
        this.nIstTeilmengenArtikel = nIstTeilmengenArtikel;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        TArtikelEntity that = (TArtikelEntity) o;
        return kArtikel == that.kArtikel && kSteuerklasse == that.kSteuerklasse && kEigenschaftKombi == that.kEigenschaftKombi && kVaterArtikel == that.kVaterArtikel && nIstVater == that.nIstVater && kStueckliste == that.kStueckliste && kWarengruppe == that.kWarengruppe && nMhd == that.nMhd && nCharge == that.nCharge && nNichtBestellbar == that.nNichtBestellbar && nPuffer == that.nPuffer && nProzentualePreisStaffelAktiv == that.nProzentualePreisStaffelAktiv && nSeriennummernVerfolgung == that.nSeriennummernVerfolgung && nEbayAbgleich == that.nEbayAbgleich && kZustand == that.kZustand && nSonderTyp == that.nSonderTyp && nNichtRabattfaehig == that.nNichtRabattfaehig && nIstTeilmengenArtikel == that.nIstTeilmengenArtikel && Objects.equals(cArtNr, that.cArtNr) && Objects.equals(fVkNetto, that.fVkNetto) && Objects.equals(fUvp, that.fUvp) && Objects.equals(cAnmerkung, that.cAnmerkung) && Objects.equals(cPreisliste, that.cPreisliste) && Objects.equals(cAktiv, that.cAktiv) && Objects.equals(nLagerbestand, that.nLagerbestand) && Objects.equals(nMindestbestellmaenge, that.nMindestbestellmaenge) && Objects.equals(cBarcode, that.cBarcode) && Objects.equals(cTopArtikel, that.cTopArtikel) && Objects.equals(cInet, that.cInet) && Objects.equals(cDelInet, that.cDelInet) && Objects.equals(fGewicht, that.fGewicht) && Objects.equals(cNeu, that.cNeu) && Objects.equals(cLagerArtikel, that.cLagerArtikel) && Objects.equals(cTeilbar, that.cTeilbar) && Objects.equals(cLagerAktiv, that.cLagerAktiv) && Objects.equals(cLagerKleinerNull, that.cLagerKleinerNull) && Objects.equals(nMidestbestand, that.nMidestbestand) && Objects.equals(fEkNetto, that.fEkNetto) && Objects.equals(fEbayPreis, that.fEbayPreis) && Objects.equals(cLagerVariation, that.cLagerVariation) && Objects.equals(nDelete, that.nDelete) && Objects.equals(dMod, that.dMod) && Objects.equals(fPackeinheit, that.fPackeinheit) && Objects.equals(nVpe, that.nVpe) && Objects.equals(fVpeWert, that.fVpeWert) && Objects.equals(cSuchbegriffe, that.cSuchbegriffe) && Objects.equals(cTaric, that.cTaric) && Objects.equals(cHerkunftsland, that.cHerkunftsland) && Objects.equals(dErstelldatum, that.dErstelldatum) && Objects.equals(dErscheinungsdatum, that.dErscheinungsdatum) && Objects.equals(nSort, that.nSort) && Objects.equals(kVersandklasse, that.kVersandklasse) && Objects.equals(fArtGewicht, that.fArtGewicht) && Objects.equals(cHan, that.cHan) && Objects.equals(cSerie, that.cSerie) && Objects.equals(cIsbn, that.cIsbn) && Objects.equals(cUnNummer, that.cUnNummer) && Objects.equals(cGefahrnr, that.cGefahrnr) && Objects.equals(cAsin, that.cAsin) && Objects.equals(nIstMindestbestand, that.nIstMindestbestand) && Objects.equals(fAbnahmeintervall, that.fAbnahmeintervall) && Objects.equals(cUpc, that.cUpc) && Objects.equals(cEpid, that.cEpid) && Objects.equals(fAmazonVk, that.fAmazonVk) && Objects.equals(nPufferTyp, that.nPufferTyp) && Objects.equals(kHersteller, that.kHersteller) && Objects.equals(kLieferStatus, that.kLieferStatus) && Objects.equals(kMassEinheit, that.kMassEinheit) && Objects.equals(fMassMenge, that.fMassMenge) && Objects.equals(kGrundPreisEinheit, that.kGrundPreisEinheit) && Objects.equals(fGrundpreisMenge, that.fGrundpreisMenge) && Objects.equals(fBreite, that.fBreite) && Objects.equals(fHoehe, that.fHoehe) && Objects.equals(fLaenge, that.fLaenge) && Objects.equals(kVpeEinheit, that.kVpeEinheit) && Objects.equals(nLiefertageWennAusverkauft, that.nLiefertageWennAusverkauft) && Objects.equals(kVerkaufsEinheit, that.kVerkaufsEinheit) && Objects.equals(dZulaufVerfuegbarAm, that.dZulaufVerfuegbarAm) && Objects.equals(nAutomatischeLiefertageberechnung, that.nAutomatischeLiefertageberechnung) && Objects.equals(nBearbeitungszeit, that.nBearbeitungszeit) && Objects.equals(fLetzterEk, that.fLetzterEk) && Objects.equals(dLetzterEk, that.dLetzterEk) && Objects.equals(kBenutzerLetzteAenderung, that.kBenutzerLetzteAenderung) && Objects.equals(nZulaufVerfuegbarMenge, that.nZulaufVerfuegbarMenge) && Objects.equals(dNeuImSortiment, that.dNeuImSortiment) && Objects.equals(cAmazonFnsku, that.cAmazonFnsku) && Objects.equals(cJfsku, that.cJfsku) && Objects.equals(bRowversion, that.bRowversion) && Objects.equals(cLabelNamen, that.cLabelNamen) && Objects.equals(kDefinition, that.kDefinition);
    }

    @Override
    public int hashCode() {
        return Objects.hash(kArtikel, cArtNr, fVkNetto, fUvp, cAnmerkung, cPreisliste, cAktiv, nLagerbestand, nMindestbestellmaenge, cBarcode, cTopArtikel, cInet, cDelInet, fGewicht, cNeu, cLagerArtikel, cTeilbar, cLagerAktiv, cLagerKleinerNull, nMidestbestand, fEkNetto, fEbayPreis, cLagerVariation, nDelete, dMod, fPackeinheit, nVpe, fVpeWert, cSuchbegriffe, cTaric, cHerkunftsland, kSteuerklasse, dErstelldatum, dErscheinungsdatum, nSort, kVersandklasse, fArtGewicht, cHan, cSerie, cIsbn, cUnNummer, cGefahrnr, cAsin, kEigenschaftKombi, kVaterArtikel, nIstVater, nIstMindestbestand, fAbnahmeintervall, kStueckliste, cUpc, kWarengruppe, cEpid, nMhd, nCharge, nNichtBestellbar, fAmazonVk, nPufferTyp, nPuffer, nProzentualePreisStaffelAktiv, nSeriennummernVerfolgung, kHersteller, kLieferStatus, kMassEinheit, fMassMenge, kGrundPreisEinheit, fGrundpreisMenge, fBreite, fHoehe, fLaenge, kVpeEinheit, nLiefertageWennAusverkauft, kVerkaufsEinheit, dZulaufVerfuegbarAm, nAutomatischeLiefertageberechnung, nBearbeitungszeit, fLetzterEk, dLetzterEk, kBenutzerLetzteAenderung, nZulaufVerfuegbarMenge, dNeuImSortiment, nEbayAbgleich, kZustand, cAmazonFnsku, cJfsku, nSonderTyp, bRowversion, nNichtRabattfaehig, cLabelNamen, kDefinition, nIstTeilmengenArtikel);
    }
}
 
Oh ich sehe es. Hab es zuerst überlesen. Die Packages passen nichts.

In deiner Applikation
Code:
@ComponentScan(basePackages = "de.xxx.Preisbearbeitung2022Application.jpa")
Aus der Fehlermeldung:

Not a managed type: class de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity
Das Package wird vom ComponentScan nicht erfasst.
 
Ja aber beim einen ist es Preisbearbeitung2022Application, beim anderen Preisbearbeitung2022

Das klappt so nicht, da die Entity nicht in einem Package liegt, dass unterhalb des zu scannenden Packages liegt.
 
Java:
C:\Users\DavidPapola\.jdks\openjdk-19.0.1\bin\java.exe -XX:TieredStopAtLevel=1 -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2022.2.3\lib\idea_rt.jar=53473:C:\Program Files\JetBrains\IntelliJ IDEA 2022.2.3\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath "C:\Users\DavidPapola\IdeaProjects\Preisbearbeitung2022\target\classes;C:\Users\DavidPapola\IdeaProjects\Ext Libs\selling-partner-api-1.0.0.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter-data-jpa\2.7.5\spring-boot-starter-data-jpa-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter-aop\2.7.5\spring-boot-starter-aop-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-aop\5.3.23\spring-aop-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\2.7.5\spring-boot-starter-jdbc-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\com\zaxxer\HikariCP\4.0.3\HikariCP-4.0.3.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-jdbc\5.3.23\spring-jdbc-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\jakarta\transaction\jakarta.transaction-api\1.3.3\jakarta.transaction-api-1.3.3.jar;C:\Users\DavidPapola\.m2\repository\org\hibernate\hibernate-core\5.6.12.Final\hibernate-core-5.6.12.Final.jar;C:\Users\DavidPapola\.m2\repository\antlr\antlr\2.7.7\antlr-2.7.7.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\data\spring-data-jpa\2.7.5\spring-data-jpa-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\data\spring-data-commons\2.7.5\spring-data-commons-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-orm\5.3.23\spring-orm-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-context\5.3.23\spring-context-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-expression\5.3.23\spring-expression-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-tx\5.3.23\spring-tx-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-beans\5.3.23\spring-beans-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-aspects\5.3.23\spring-aspects-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\com\microsoft\sqlserver\mssql-jdbc\10.2.1.jre8\mssql-jdbc-10.2.1.jre8.jar;C:\Users\DavidPapola\.m2\repository\com\mysql\mysql-connector-j\8.0.31\mysql-connector-j-8.0.31.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter\2.7.5\spring-boot-starter-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot\2.7.5\spring-boot-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\2.7.5\spring-boot-autoconfigure-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter-logging\2.7.5\spring-boot-starter-logging-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\ch\qos\logback\logback-classic\1.2.11\logback-classic-1.2.11.jar;C:\Users\DavidPapola\.m2\repository\ch\qos\logback\logback-core\1.2.11\logback-core-1.2.11.jar;C:\Users\DavidPapola\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.2\log4j-to-slf4j-2.17.2.jar;C:\Users\DavidPapola\.m2\repository\org\apache\logging\log4j\log4j-api\2.17.2\log4j-api-2.17.2.jar;C:\Users\DavidPapola\.m2\repository\org\slf4j\jul-to-slf4j\1.7.36\jul-to-slf4j-1.7.36.jar;C:\Users\DavidPapola\.m2\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\DavidPapola\.m2\repository\org\yaml\snakeyaml\1.30\snakeyaml-1.30.jar;C:\Users\DavidPapola\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.3\jakarta.xml.bind-api-2.3.3.jar;C:\Users\DavidPapola\.m2\repository\jakarta\activation\jakarta.activation-api\1.2.2\jakarta.activation-api-1.2.2.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-core\5.3.23\spring-core-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-jcl\5.3.23\spring-jcl-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\javax\persistence\javax.persistence-api\2.2\javax.persistence-api-2.2.jar;C:\Users\DavidPapola\.m2\repository\c3p0\c3p0\0.9.1.2\c3p0-0.9.1.2.jar;C:\Users\DavidPapola\.m2\repository\org\apache\commons\commons-csv\1.8\commons-csv-1.8.jar;C:\Users\DavidPapola\.m2\repository\log4j\log4j\1.2.17\log4j-1.2.17.jar;C:\Users\DavidPapola\.m2\repository\org\hibernate\orm\hibernate-core\6.1.2.Final\hibernate-core-6.1.2.Final.jar;C:\Users\DavidPapola\.m2\repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;C:\Users\DavidPapola\.m2\repository\org\hibernate\common\hibernate-commons-annotations\6.0.2.Final\hibernate-commons-annotations-6.0.2.Final.jar;C:\Users\DavidPapola\.m2\repository\org\jboss\jandex\2.4.2.Final\jandex-2.4.2.Final.jar;C:\Users\DavidPapola\.m2\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;C:\Users\DavidPapola\.m2\repository\net\bytebuddy\byte-buddy\1.12.18\byte-buddy-1.12.18.jar;C:\Users\DavidPapola\.m2\repository\org\glassfish\jaxb\jaxb-runtime\2.3.7\jaxb-runtime-2.3.7.jar;C:\Users\DavidPapola\.m2\repository\org\glassfish\jaxb\txw2\2.3.7\txw2-2.3.7.jar;C:\Users\DavidPapola\.m2\repository\com\sun\istack\istack-commons-runtime\3.0.12\istack-commons-runtime-3.0.12.jar;C:\Users\DavidPapola\.m2\repository\com\sun\activation\jakarta.activation\1.2.2\jakarta.activation-1.2.2.jar;C:\Users\DavidPapola\.m2\repository\jakarta\inject\jakarta.inject-api\2.0.0\jakarta.inject-api-2.0.0.jar;C:\Users\DavidPapola\.m2\repository\org\antlr\antlr4-runtime\4.10\antlr4-runtime-4.10.jar;C:\Users\DavidPapola\.m2\repository\jakarta\persistence\jakarta.persistence-api\3.1.0\jakarta.persistence-api-3.1.0.jar" de.xxx.Preisbearbeitung2022.Preisbearbeitung2022Application

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.7.5)

2022-11-21 14:39:56.322  INFO 19996 --- [           main] d.m.P.Preisbearbeitung2022Application    : Starting Preisbearbeitung2022Application using Java 19.0.1 on PC-127-David with PID 19996 (C:\Users\DavidPapola\IdeaProjects\Preisbearbeitung2022\target\classes started by DavidPapola in C:\Users\DavidPapola\IdeaProjects\Preisbearbeitung2022)
2022-11-21 14:39:56.326  INFO 19996 --- [           main] d.m.P.Preisbearbeitung2022Application    : No active profile set, falling back to 1 default profile: "default"
2022-11-21 14:39:56.815  INFO 19996 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2022-11-21 14:39:56.854  INFO 19996 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 33 ms. Found 2 JPA repository interfaces.
2022-11-21 14:39:57.187  INFO 19996 --- [           main] o.hibernate.jpa.internal.util.LogHelper  : HHH000204: Processing PersistenceUnitInfo [name: default]
2022-11-21 14:39:57.227  INFO 19996 --- [           main] org.hibernate.Version                    : HHH000412: Hibernate ORM core version 5.6.12.Final
2022-11-21 14:39:57.415  INFO 19996 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
2022-11-21 14:39:57.723  INFO 19996 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
2022-11-21 14:39:57.733  INFO 19996 --- [           main] org.hibernate.dialect.Dialect            : HHH000400: Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect
2022-11-21 14:39:57.911  INFO 19996 --- [           main] o.h.e.t.j.p.i.JtaPlatformInitiator       : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
2022-11-21 14:39:57.918  INFO 19996 --- [           main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
2022-11-21 14:39:58.059  WARN 19996 --- [           main] s.c.a.AnnotationConfigApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'TArtikelService' defined in file [C:\Users\DavidPapola\IdeaProjects\Preisbearbeitung2022\target\classes\de\xxx\Preisbearbeitung2022\jpa\TArtikelService.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TArtikelRepository' defined in de.xxx.Preisbearbeitung2022.jpa.TArtikelRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Not a managed type: class de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity
2022-11-21 14:39:58.059  INFO 19996 --- [           main] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default'
2022-11-21 14:39:58.060  INFO 19996 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
2022-11-21 14:39:58.076  INFO 19996 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.
2022-11-21 14:39:58.081  INFO 19996 --- [           main] ConditionEvaluationReportLoggingListener :

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2022-11-21 14:39:58.097 ERROR 19996 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'TArtikelService' defined in file [C:\Users\DavidPapola\IdeaProjects\Preisbearbeitung2022\target\classes\de\xxx\Preisbearbeitung2022\jpa\TArtikelService.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TArtikelRepository' defined in de.xxx.Preisbearbeitung2022.jpa.TArtikelRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Not a managed type: class de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.23.jar:5.3.23]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.23.jar:5.3.23]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) ~[spring-boot-2.7.5.jar:2.7.5]
    at de.xxx.Preisbearbeitung2022.Preisbearbeitung2022Application.main(Preisbearbeitung2022Application.java:39) ~[classes/:na]
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TArtikelRepository' defined in de.xxx.Preisbearbeitung2022.jpa.TArtikelRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Not a managed type: class de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.23.jar:5.3.23]
    ... 18 common frames omitted
Caused by: java.lang.IllegalArgumentException: Not a managed type: class de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity
    at org.hibernate.metamodel.internal.MetamodelImpl.managedType(MetamodelImpl.java:583) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.hibernate.metamodel.internal.MetamodelImpl.managedType(MetamodelImpl.java:85) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation.<init>(JpaMetamodelEntityInformation.java:75) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaEntityInformationSupport.getEntityInformation(JpaEntityInformationSupport.java:66) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getEntityInformation(JpaRepositoryFactory.java:233) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:182) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:165) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:76) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:325) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.lambda$afterPropertiesSet$5(RepositoryFactoryBeanSupport.java:323) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.util.Lazy.getNullable(Lazy.java:231) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.util.Lazy.get(Lazy.java:115) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:329) ~[spring-data-commons-2.7.5.jar:2.7.5]
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.afterPropertiesSet(JpaRepositoryFactoryBean.java:144) ~[spring-data-jpa-2.7.5.jar:2.7.5]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.23.jar:5.3.23]
    ... 29 common frames omitted
Ändert leider nichts
 
Also was mich etwas irritiert (was aber evtl. mit dem Fehler nichts zu tun hat, weil Spring Boot das schon hin bekommt) ist der Code hier:
Java:
public class TArtikelService {
    @Autowired
    private TArtikelRepository tArtikelRepository;

    public TArtikelService(TArtikelRepository tArtikelRepository) {
        this.tArtikelRepository = tArtikelRepository;
    }

Du hast einen Konstruktor und der setzt das Repository ja. Da würde ich dann die @Autowired Annotation erwarten. Aber Statt dessen hast Du das auf dem Feld. Entweder Du hast eine Konstruktor Injection oder eine Field Injection. Aber da hast Du so irgendwie beides ...
Aber das kann prinzipiell egal sein nur eben fällt es mir direkt ins Auge.

Dann irritiert mich, dass Du id teilweise als Long und teilweise als int hast. Wie kommst Du da überhaupt auf ein Long?

Code:
public class TArtikelEntity {
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Id
    @Column(name = "kArtikel")
    private int kArtikel;

Da ist doch die Id kein Long und damit ist auch das Repository so schlicht falsch:

Java:
@Repository
public interface TArtikelRepository extends JpaRepository<TArtikelEntity, Long> {

Das sind so Dinge, über die gerade etwas stolpere....
 
Ok, andere Idee. Du importierst die Jakarta Annotationen bei der Entität - nutzt aber Spring Boot 2.7.5. Evtl. gehen die da noch nicht. Änder das mal auf die javax. Annotation
 
public class TArtikelService {
@Autowired
private TArtikelRepository tArtikelRepository;

public TArtikelService(TArtikelRepository tArtikelRepository) {
this.tArtikelRepository = tArtikelRepository;
}

Ist noch ein Überbleibsel aus dem Test und wird nicht mehr genutzt habe es auch grade gelöscht

@Repository
public interface TArtikelRepository extends JpaRepository<TArtikelEntity, Long> {


ist auch angepasst.

der Fehler besteht noch immer. wie im letzten Post.

Ich habe in wichen versucht mit ComponentScan, EntityScan und auch die Klassen/interface in den gleichen Ordner zu legen wie die Main
 
Probier wie gesagt mal die Entity-Annotation (und alle weiteren) aus javax.persistence zu importieren anstelle aus jakarta.persistence
 
Nachtrag: Die Dependency muss raus meines ERachtens:

<dependency>
<groupId>jakarta.persistence</groupId>
<artifactId>jakarta.persistence-api</artifactId>
<version>3.1.0</version>
</dependency>

Die wird erst ab Spring 6 / Spring Boot 3 unterstützt. Das ist die Ursache für den Fehler, da würde ich jetzt drauf wetten. Der Rest waren rote Heringe 🙂
 
Java:
C:\Users\DavidPapola\.jdks\openjdk-19.0.1\bin\java.exe -XX:TieredStopAtLevel=1 -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2022.2.3\lib\idea_rt.jar=53914:C:\Program Files\JetBrains\IntelliJ IDEA 2022.2.3\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath "C:\Users\DavidPapola\IdeaProjects\Preisbearbeitung2022\target\classes;C:\Users\DavidPapola\IdeaProjects\Ext Libs\selling-partner-api-1.0.0.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter-data-jpa\2.7.5\spring-boot-starter-data-jpa-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter-aop\2.7.5\spring-boot-starter-aop-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-aop\5.3.23\spring-aop-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\2.7.5\spring-boot-starter-jdbc-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\com\zaxxer\HikariCP\4.0.3\HikariCP-4.0.3.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-jdbc\5.3.23\spring-jdbc-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\jakarta\transaction\jakarta.transaction-api\1.3.3\jakarta.transaction-api-1.3.3.jar;C:\Users\DavidPapola\.m2\repository\jakarta\persistence\jakarta.persistence-api\2.2.3\jakarta.persistence-api-2.2.3.jar;C:\Users\DavidPapola\.m2\repository\org\hibernate\hibernate-core\5.6.12.Final\hibernate-core-5.6.12.Final.jar;C:\Users\DavidPapola\.m2\repository\antlr\antlr\2.7.7\antlr-2.7.7.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\data\spring-data-jpa\2.7.5\spring-data-jpa-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\data\spring-data-commons\2.7.5\spring-data-commons-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-orm\5.3.23\spring-orm-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-context\5.3.23\spring-context-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-expression\5.3.23\spring-expression-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-tx\5.3.23\spring-tx-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-beans\5.3.23\spring-beans-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-aspects\5.3.23\spring-aspects-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\com\microsoft\sqlserver\mssql-jdbc\10.2.1.jre8\mssql-jdbc-10.2.1.jre8.jar;C:\Users\DavidPapola\.m2\repository\com\mysql\mysql-connector-j\8.0.31\mysql-connector-j-8.0.31.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter\2.7.5\spring-boot-starter-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot\2.7.5\spring-boot-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\2.7.5\spring-boot-autoconfigure-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\boot\spring-boot-starter-logging\2.7.5\spring-boot-starter-logging-2.7.5.jar;C:\Users\DavidPapola\.m2\repository\ch\qos\logback\logback-classic\1.2.11\logback-classic-1.2.11.jar;C:\Users\DavidPapola\.m2\repository\ch\qos\logback\logback-core\1.2.11\logback-core-1.2.11.jar;C:\Users\DavidPapola\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.2\log4j-to-slf4j-2.17.2.jar;C:\Users\DavidPapola\.m2\repository\org\apache\logging\log4j\log4j-api\2.17.2\log4j-api-2.17.2.jar;C:\Users\DavidPapola\.m2\repository\org\slf4j\jul-to-slf4j\1.7.36\jul-to-slf4j-1.7.36.jar;C:\Users\DavidPapola\.m2\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\DavidPapola\.m2\repository\org\yaml\snakeyaml\1.30\snakeyaml-1.30.jar;C:\Users\DavidPapola\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.3\jakarta.xml.bind-api-2.3.3.jar;C:\Users\DavidPapola\.m2\repository\jakarta\activation\jakarta.activation-api\1.2.2\jakarta.activation-api-1.2.2.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-core\5.3.23\spring-core-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\org\springframework\spring-jcl\5.3.23\spring-jcl-5.3.23.jar;C:\Users\DavidPapola\.m2\repository\javax\persistence\javax.persistence-api\2.2\javax.persistence-api-2.2.jar;C:\Users\DavidPapola\.m2\repository\c3p0\c3p0\0.9.1.2\c3p0-0.9.1.2.jar;C:\Users\DavidPapola\.m2\repository\org\apache\commons\commons-csv\1.8\commons-csv-1.8.jar;C:\Users\DavidPapola\.m2\repository\log4j\log4j\1.2.17\log4j-1.2.17.jar;C:\Users\DavidPapola\.m2\repository\org\hibernate\orm\hibernate-core\6.1.2.Final\hibernate-core-6.1.2.Final.jar;C:\Users\DavidPapola\.m2\repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;C:\Users\DavidPapola\.m2\repository\org\hibernate\common\hibernate-commons-annotations\6.0.2.Final\hibernate-commons-annotations-6.0.2.Final.jar;C:\Users\DavidPapola\.m2\repository\org\jboss\jandex\2.4.2.Final\jandex-2.4.2.Final.jar;C:\Users\DavidPapola\.m2\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;C:\Users\DavidPapola\.m2\repository\net\bytebuddy\byte-buddy\1.12.18\byte-buddy-1.12.18.jar;C:\Users\DavidPapola\.m2\repository\org\glassfish\jaxb\jaxb-runtime\2.3.7\jaxb-runtime-2.3.7.jar;C:\Users\DavidPapola\.m2\repository\org\glassfish\jaxb\txw2\2.3.7\txw2-2.3.7.jar;C:\Users\DavidPapola\.m2\repository\com\sun\istack\istack-commons-runtime\3.0.12\istack-commons-runtime-3.0.12.jar;C:\Users\DavidPapola\.m2\repository\com\sun\activation\jakarta.activation\1.2.2\jakarta.activation-1.2.2.jar;C:\Users\DavidPapola\.m2\repository\jakarta\inject\jakarta.inject-api\2.0.0\jakarta.inject-api-2.0.0.jar;C:\Users\DavidPapola\.m2\repository\org\antlr\antlr4-runtime\4.10\antlr4-runtime-4.10.jar" de.xxx.Preisbearbeitung2022.Preisbearbeitung2022Application

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.7.5)

2022-11-21 15:07:04.986  INFO 18640 --- [           main] d.m.P.Preisbearbeitung2022Application    : Starting Preisbearbeitung2022Application using Java 19.0.1 on PC-127-David with PID 18640 (C:\Users\DavidPapola\IdeaProjects\Preisbearbeitung2022\target\classes started by DavidPapola in C:\Users\DavidPapola\IdeaProjects\Preisbearbeitung2022)
2022-11-21 15:07:04.990  INFO 18640 --- [           main] d.m.P.Preisbearbeitung2022Application    : No active profile set, falling back to 1 default profile: "default"
2022-11-21 15:07:05.455  INFO 18640 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2022-11-21 15:07:05.509  INFO 18640 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 46 ms. Found 2 JPA repository interfaces.
2022-11-21 15:07:05.927  INFO 18640 --- [           main] o.hibernate.jpa.internal.util.LogHelper  : HHH000204: Processing PersistenceUnitInfo [name: default]
2022-11-21 15:07:05.996  INFO 18640 --- [           main] org.hibernate.Version                    : HHH000412: Hibernate ORM core version 5.6.12.Final
2022-11-21 15:07:06.256  INFO 18640 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
2022-11-21 15:07:06.594  INFO 18640 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.
2022-11-21 15:07:06.606  INFO 18640 --- [           main] org.hibernate.dialect.Dialect            : HHH000400: Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect
2022-11-21 15:07:06.828 ERROR 18640 --- [           main] j.LocalContainerEntityManagerFactoryBean : Failed to initialize JPA EntityManagerFactory: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: property mapping has wrong number of columns: de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity.bRowversion type: object
2022-11-21 15:07:06.829  WARN 18640 --- [           main] s.c.a.AnnotationConfigApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: property mapping has wrong number of columns: de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity.bRowversion type: object
2022-11-21 15:07:06.829  INFO 18640 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown initiated...
2022-11-21 15:07:06.855  INFO 18640 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Shutdown completed.
2022-11-21 15:07:06.862  INFO 18640 --- [           main] ConditionEvaluationReportLoggingListener :

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2022-11-21 15:07:06.880 ERROR 18640 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: property mapping has wrong number of columns: de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity.bRowversion type: object
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154) ~[spring-context-5.3.23.jar:5.3.23]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908) ~[spring-context-5.3.23.jar:5.3.23]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.23.jar:5.3.23]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-2.7.5.jar:2.7.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) ~[spring-boot-2.7.5.jar:2.7.5]
    at de.xxx.Preisbearbeitung2022.Preisbearbeitung2022Application.main(Preisbearbeitung2022Application.java:39) ~[classes/:na]
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: property mapping has wrong number of columns: de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity.bRowversion type: object
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:421) ~[spring-orm-5.3.23.jar:5.3.23]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.23.jar:5.3.23]
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.23.jar:5.3.23]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.23.jar:5.3.23]
    ... 15 common frames omitted
Caused by: org.hibernate.MappingException: property mapping has wrong number of columns: de.xxx.Preisbearbeitung2022.jpa.TArtikelEntity.bRowversion type: object
    at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:632) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.hibernate.mapping.RootClass.validate(RootClass.java:267) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.hibernate.boot.internal.MetadataImpl.validate(MetadataImpl.java:359) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:314) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1498) ~[hibernate-core-5.6.12.Final.jar:5.6.12.Final]
    at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) ~[spring-orm-5.3.23.jar:5.3.23]
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.23.jar:5.3.23]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.23.jar:5.3.23]
    ... 19 common frames omitted


Process finished with exit code 1
schein ein hartnäckiger Fehler zu sein.
 
Ist jetzt aber ein anderer 🙂

Code:
    @Column(name = "bRowversion")
    private Object bRowversion;
Ein "Object" lässt sich nicht einer DB speichern. Zumindest nicht ohne entsprechenden Converter.
 
okay super Jetzt habe ich nur noch eine frage, wie kann ich bRowversion so ignorieren das die keinen schaden an den daten in der DB anrichtet.
Ich nutze JPA Im Grunde nur um Daten aus der DB zu holen (Solange ich noch ein Noob in jpa bin).
 
Erst mal Vielen Dank für die Großartige Hilfe. Das hat mir schon mal weitergeholfen.

Ich habe festgestellt das, wenn ich Annotation @Transient nutze, das JPA die Datenbank nicht erkennt und versucht eine eigen zu erstellen. Zum Glück habe ich „spring.jpa.hibernate.ddl-auto“ auf update gehabt.

Transient schein nicht die Lösung Zusein. Da ich bestehende daten aus der DB laden muss und sie nicht verändert möchte. Das mache ich mit einem anderen Programm und SQL Qurrys.

Also doch mal eine Frage, wie kann ich das am besten umsetzten, dass ich die Daten als Entity bekomme aber nicht die Daten der DB ändere.
 
In dem du die Entität richtig modellierst mit den passenden Datentypen. Das kann man ohne genau Kenntnis der Datenbank-Tabelle nicht besser beantworten.
 

Zurück
Oben