java - HTTP 状态 500 - org.eclipse.persistence.exceptions.EntityManagerSetupException

标签 java eclipse jsp jpa

我有一个问题。我收到此错误,但我不知道为什么。我创建了类别-产品实体,然后运行了 CategorySummaryPage.xhtml 但出现了错误。我正在使用 eclipse 并添加了 mysql 驱动程序。我在做category.java之前使用的是product.java,它正在与数据库一起使用,然后我用jpa制作了category.java,我收到了一个错误。我是 stackoverflow 的新用户, 我希望真正的错误能够减少。

堆栈跟踪:

type Exception report

message Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.EntityManagerSetupException

description The server encountered an internal error that prevented it from fulfilling this request.

exception 
javax.servlet.ServletException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Deployment of PersistenceUnit [Start] failed. Close all factories for this PersistenceUnit.
Internal Exception: Exception [EclipseLink-0] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.IntegrityException
Descriptor Exceptions: 
---------------------------------------------------------

Exception [EclipseLink-48] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: Multiple writable mappings exist for the field [product.CATEGORYID].  Only one may be defined as writable, all others must be specified read-only.
Mapping: org.eclipse.persistence.mappings.ManyToOneMapping[category]
Descriptor: RelationalDescriptor(com.kerem.inventory.entity.Product --> [DatabaseTable(product)])

Runtime Exceptions: 
---------------------------------------------------------

    javax.faces.webapp.FacesServlet.service(FacesServlet.java:229)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)



root cause 
javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Deployment of PersistenceUnit [Start] failed. Close all factories for this PersistenceUnit.
Internal Exception: Exception [EclipseLink-0] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.IntegrityException
Descriptor Exceptions: 
---------------------------------------------------------

Exception [EclipseLink-48] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: Multiple writable mappings exist for the field [product.CATEGORYID].  Only one may be defined as writable, all others must be specified read-only.
Mapping: org.eclipse.persistence.mappings.ManyToOneMapping[category]
Descriptor: RelationalDescriptor(com.kerem.inventory.entity.Product --> [DatabaseTable(product)])

Runtime Exceptions: 
---------------------------------------------------------

    org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.createDeployFailedPersistenceException(EntityManagerSetupImpl.java:820)
    org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:760)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:204)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:304)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:336)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:302)
    com.kerem.inventory.repository.CategoryRepository.list(CategoryRepository.java:18)
    com.kerem.inventory.faces.CategorySummaryBean.<init>(CategorySummaryBean.java:21)
    java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
    java.base/java.lang.reflect.ReflectAccess.newInstance(ReflectAccess.java:166)
    java.base/jdk.internal.reflect.ReflectionFactory.newInstance(ReflectionFactory.java:404)
    java.base/java.lang.Class.newInstance(Class.java:591)
    org.apache.myfaces.config.annotation.Tomcat7AnnotationLifecycleProvider.newInstance(Tomcat7AnnotationLifecycleProvider.java:56)
    org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(ManagedBeanBuilder.java:156)
    org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.createManagedBean(ManagedBeanResolver.java:333)
    org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.getValue(ManagedBeanResolver.java:296)
    javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)
    org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:169)
    org.apache.myfaces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:65)
    org.apache.myfaces.el.convert.VariableResolverToELResolver.getValue(VariableResolverToELResolver.java:123)
    javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)
    org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:169)
    org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:72)
    org.apache.el.parser.AstValue.getValue(AstValue.java:161)
    org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:185)
    org.apache.myfaces.view.facelets.el.ContextAwareTagValueExpression.getValue(ContextAwareTagValueExpression.java:96)
    javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:246)
    javax.faces.component.UIData.getValue(UIData.java:2028)
    javax.faces.component.UIData.createDataModel(UIData.java:1976)
    javax.faces.component.UIData.getDataModel(UIData.java:1953)
    javax.faces.component.UIData.getRowCount(UIData.java:478)
    org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.encodeInnerHtml(HtmlTableRendererBase.java:328)
    org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.encodeChildren(HtmlTableRendererBase.java:198)
    javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:549)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:749)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:758)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:758)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:758)
    org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1900)
    org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:285)
    org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:115)
    org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)



root cause 
Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Deployment of PersistenceUnit [Start] failed. Close all factories for this PersistenceUnit.
Internal Exception: Exception [EclipseLink-0] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.IntegrityException
Descriptor Exceptions: 
---------------------------------------------------------

Exception [EclipseLink-48] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: Multiple writable mappings exist for the field [product.CATEGORYID].  Only one may be defined as writable, all others must be specified read-only.
Mapping: org.eclipse.persistence.mappings.ManyToOneMapping[category]
Descriptor: RelationalDescriptor(com.kerem.inventory.entity.Product --> [DatabaseTable(product)])

Runtime Exceptions: 
---------------------------------------------------------

    org.eclipse.persistence.exceptions.EntityManagerSetupException.deployFailed(EntityManagerSetupException.java:238)
    org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.createDeployFailedPersistenceException(EntityManagerSetupImpl.java:820)
    org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:760)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:204)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:304)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:336)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:302)
    com.kerem.inventory.repository.CategoryRepository.list(CategoryRepository.java:18)
    com.kerem.inventory.faces.CategorySummaryBean.<init>(CategorySummaryBean.java:21)
    java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
    java.base/java.lang.reflect.ReflectAccess.newInstance(ReflectAccess.java:166)
    java.base/jdk.internal.reflect.ReflectionFactory.newInstance(ReflectionFactory.java:404)
    java.base/java.lang.Class.newInstance(Class.java:591)
    org.apache.myfaces.config.annotation.Tomcat7AnnotationLifecycleProvider.newInstance(Tomcat7AnnotationLifecycleProvider.java:56)
    org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(ManagedBeanBuilder.java:156)
    org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.createManagedBean(ManagedBeanResolver.java:333)
    org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.getValue(ManagedBeanResolver.java:296)
    javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)
    org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:169)
    org.apache.myfaces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:65)
    org.apache.myfaces.el.convert.VariableResolverToELResolver.getValue(VariableResolverToELResolver.java:123)
    javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)
    org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:169)
    org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:72)
    org.apache.el.parser.AstValue.getValue(AstValue.java:161)
    org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:185)
    org.apache.myfaces.view.facelets.el.ContextAwareTagValueExpression.getValue(ContextAwareTagValueExpression.java:96)
    javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:246)
    javax.faces.component.UIData.getValue(UIData.java:2028)
    javax.faces.component.UIData.createDataModel(UIData.java:1976)
    javax.faces.component.UIData.getDataModel(UIData.java:1953)
    javax.faces.component.UIData.getRowCount(UIData.java:478)
    org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.encodeInnerHtml(HtmlTableRendererBase.java:328)
    org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.encodeChildren(HtmlTableRendererBase.java:198)
    javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:549)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:749)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:758)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:758)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:758)
    org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1900)
    org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:285)
    org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:115)
    org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)



root cause 
Exception [EclipseLink-0] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.IntegrityException
Descriptor Exceptions: 
---------------------------------------------------------

Exception [EclipseLink-48] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: Multiple writable mappings exist for the field [product.CATEGORYID].  Only one may be defined as writable, all others must be specified read-only.
Mapping: org.eclipse.persistence.mappings.ManyToOneMapping[category]
Descriptor: RelationalDescriptor(com.kerem.inventory.entity.Product --> [DatabaseTable(product)])

Runtime Exceptions: 
---------------------------------------------------------

    org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:696)
    org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:632)
    org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:568)
    org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postConnectDatasource(DatabaseSessionImpl.java:799)
    org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:743)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:239)
    org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:685)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:204)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:304)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:336)
    org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:302)
    com.kerem.inventory.repository.CategoryRepository.list(CategoryRepository.java:18)
    com.kerem.inventory.faces.CategorySummaryBean.<init>(CategorySummaryBean.java:21)
    java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
    java.base/java.lang.reflect.ReflectAccess.newInstance(ReflectAccess.java:166)
    java.base/jdk.internal.reflect.ReflectionFactory.newInstance(ReflectionFactory.java:404)
    java.base/java.lang.Class.newInstance(Class.java:591)
    org.apache.myfaces.config.annotation.Tomcat7AnnotationLifecycleProvider.newInstance(Tomcat7AnnotationLifecycleProvider.java:56)
    org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(ManagedBeanBuilder.java:156)
    org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.createManagedBean(ManagedBeanResolver.java:333)
    org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.getValue(ManagedBeanResolver.java:296)
    javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)
    org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:169)
    org.apache.myfaces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:65)
    org.apache.myfaces.el.convert.VariableResolverToELResolver.getValue(VariableResolverToELResolver.java:123)
    javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)
    org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:169)
    org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:72)
    org.apache.el.parser.AstValue.getValue(AstValue.java:161)
    org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:185)
    org.apache.myfaces.view.facelets.el.ContextAwareTagValueExpression.getValue(ContextAwareTagValueExpression.java:96)
    javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:246)
    javax.faces.component.UIData.getValue(UIData.java:2028)
    javax.faces.component.UIData.createDataModel(UIData.java:1976)
    javax.faces.component.UIData.getDataModel(UIData.java:1953)
    javax.faces.component.UIData.getRowCount(UIData.java:478)
    org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.encodeInnerHtml(HtmlTableRendererBase.java:328)
    org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.encodeChildren(HtmlTableRendererBase.java:198)
    javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:549)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:749)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:758)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:758)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:758)
    org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1900)
    org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:285)
    org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:115)
    org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)



note The full stack trace of the root cause is available in the Apache Tomcat/7.0.47 logs.


Apache Tomcat/7.0.47

类别.java

 package com.kerem.inventory.entity;

import java.io.Serializable;
import javax.persistence.*;
import java.util.List;


/**
 * The persistent class for the category database table.
 * 
 */
@Entity
@Table(name="category")
@NamedQuery(name="Category.findAll", query="SELECT c FROM Category c")
public class Category implements Serializable {
    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private int categoryId;

    private String categoryName;

    //bi-directional many-to-one association to Product2
    @OneToMany(mappedBy="category")
    private List<Product> products;

    public Category() {
    }



    public Category(int categoryId, String categoryName) {
        super();
        this.categoryId = categoryId;
        this.categoryName = categoryName;
    }



    public int getCategoryId() {
        return this.categoryId;
    }

    public void setCategoryId(int categoryId) {
        this.categoryId = categoryId;
    }

    public String getCategoryName() {
        return this.categoryName;
    }

    public void setCategoryName(String categoryName) {
        this.categoryName = categoryName;
    }

    public List<Product> getProducts() {
        return this.products;
    }

    public void setProducts(List<Product> products) {
        this.products = products;
    }

    public Product addProduct(Product product) {
        getProducts().add(product);
        product.setCategory(this);

        return product;
    }

    public Product removeProduct(Product product) {
        getProducts().remove(product);
        product.setCategory(null);

        return product;
    }

}

产品.java

package com.kerem.inventory.entity;

import java.io.Serializable;
import javax.persistence.*;


/**
 * The persistent class for the product database table.
 * 
 */
@Entity
@Table(name="product")
@NamedQuery(name="Product.findAll", query="SELECT p FROM Product p")
public class Product implements Serializable {
    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private int productId;

    private int categoryId;

    private String productName;

    private double salesPrice;

    @ManyToOne
    @JoinColumn(name = "categoryId")
    private Category category;

    public Product() {

    }



    public Product(int productId, String productName, double salesPrice) {
        this.productId = productId;
        this.productName = productName;
        this.salesPrice = salesPrice;
    }



    public int getProductId() {
        return this.productId;
    }

    public void setProductId(int productId) {
        this.productId = productId;
    }

    public int getCategoryId() {
        return this.categoryId;
    }

    public void setCategoryId(int categoryId) {
        this.categoryId = categoryId;
    }

    public String getProductName() {
        return this.productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public double getSalesPrice() {
        return this.salesPrice;
    }

    public void setSalesPrice(double salesPrice) {
        this.salesPrice = salesPrice;
    }

    public Category getCategory() {
        return this.category;
    }

    public void setCategory(Category category) {
        this.category = category;
    }

}

CategorySummaryPage.xhtml

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html">

<h:head>
    <title>Summary Page</title>
</h:head>
<h:body>

    <h:form>
        <h:dataTable value="#{categorySummaryBean.categoryList}" var="p" border="1">
            <h:column>
                <f:facet name="header">Category Id</f:facet>
                <h:outputText value="#{p.categoryId}" />
            </h:column>
            <h:column>
                <f:facet name="header">Category Name</f:facet>
                <h:outputText value="#{p.categoryName}" />
            </h:column>
            <h:column>
                <h:outputLink value="CategoryDetailPage.xhtml">
                    <f:param name="categoryId" value="#{p.categoryId}"/>
                    Guncelle
                </h:outputLink>
            </h:column>
            <h:column>
                <h:commandLink action="#{categorySummaryBean.delete()}">
                    <f:param name="categoryId" value="#{p.categoryId}"/>
                    Sil
                </h:commandLink>
            </h:column>
        </h:dataTable>
    </h:form>
    <h:outputLink value="CategoryDetailPage.xhtml">Detail Page</h:outputLink>


</h:body>
</html>

持久性.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.2" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd">
    <persistence-unit name="Start" transaction-type="RESOURCE_LOCAL">
        <class>com.kerem.inventory.entity.Category</class>
        <class>com.kerem.inventory.entity.Product</class>
        <exclude-unlisted-classes>false</exclude-unlisted-classes>
        <properties>
            <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
            <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/start"/>
            <property name="javax.persistence.jdbc.user" value="root"/>
            <property name="javax.persistence.jdbc.password" value="kerem2112"/>
        </properties>
    </persistence-unit>
</persistence>

最佳答案

好的,我明白了。我必须在 Product.java 中执行 insertable = false, updatable = false ,因为 ManyToOne 只有一个映射应该能够写入该字段。

关于java - HTTP 状态 500 - org.eclipse.persistence.exceptions.EntityManagerSetupException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61550027/

相关文章:

java - 从 JSP scriptlet 设置 JSTL 条件,然后传递给 java 脚本

java - 网络服务器的 out.flush() 问题

java - 在 Chrome 浏览器上删除 NPAPI 后替代 Jzebra/QZ Java Raw Print Plugin

java - 如何从 StringBuffer 中删除字符?

java - switch 语句中的重复局部变量

eclipse - Eclipse 平台中的循环依赖关系

jquery - 从选择标签中获取选定的名称

java - 从不同线程更新 UI

java - 构建期间发生错误。在项目 'Android Pre Compiler' 上运行生成器 'com.xxx...' 时出错。 com/android/sdklib/util/SparseArray

java - RCP 导出向导删除不必要的项目