1

BroadleafCommerce 3.1.0 を使用しています。これより前は、3.0.13 を使用しています。3.0.13 ではすべて正常に動作していました。BLC Web サイトにある移行に関する注意事項に従って、必要なすべての変更を行いました。すべての作業が完了したら、WorkSpace をコンパイルできます。展開も成功。MyCompany,And Admin の呼び出し中に、次のエラーが発生します。

   ==============================================>MYCOMPANY
            java.lang.NullPointerException
                    at org.broadleafcommerce.common.web.BroadleafRequestCustomerResolverImpl.setCustomer(BroadleafRequestCustomerResolverImpl.java:62)
                    at org.broadleafcommerce.profile.web.core.CustomerState.setCustomer(CustomerState.java:52)
                    at org.broadleafcommerce.profile.web.core.security.CustomerStateRequestProcessor.process(CustomerStateRequestProcessor.java:134)
                    at org.broadleafcommerce.profile.web.core.security.CustomerStateFilter.doFilter(CustomerStateFilter.java:55)
                    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
           .......

        ======================================>ADMIN

         Error while inserting fetched product id:12357968
        org.springframework.dao.DataIntegrityViolationException: Cannot add or update a child row: a foreign key constraint fails (`broadleaf`.`blc_product`, CONSTRAINT `FK5B95B7C96D386535` FOREIGN KEY (`DEFAULT_SKU_ID`) REFERENCES `blc_sku` (`SKU_ID`)); SQL [n/a]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: Cannot add or update a child row: a foreign key constraint fails (`broadleaf`.`blc_product`, CONSTRAINT `FK5B95B7C96D386535` FOREIGN KEY (`DEFAULT_SKU_ID`) REFERENCES `blc_sku` (`SKU_ID`))
            at org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:643)
            at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:105)
            at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:517)
            at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:755)
            at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:724)
            at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:475)
            at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:270)
            at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
            at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
            at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
            at com.sun.proxy.$Proxy161.saveSku(Unknown Source)

        Caused by: org.hibernate.exception.ConstraintViolationException: Cannot add or update a child row: a foreign key constraint fails (`broadleaf`.`blc_product`, CONSTRAINT `FK5B95B7C96D386535` FOREIGN KEY (`DEFAULT_SKU_ID`) REFERENCES `blc_sku` (`SKU_ID`))
            at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:74)
            at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49)
            at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:125)
            at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:110)
            at org.hibernate.engine.jdbc.internal.proxy.AbstractStatementProxyHandler.continueInvocation(AbstractStatementProxyHandler.java:129)
            at org.hibernate.engine.jdbc.internal.proxy.AbstractProxyHandler.invoke(AbstractProxyHandler.java:81)
            at com.sun.proxy.$Proxy447.executeUpdate(Unknown Source)
            at org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.addToBatch(NonBatchingBatch.java:56)
            at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3028)
            at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3469)
            at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:88)
            at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:362)
            at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:354)
            at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:275)
            at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:326)
            at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:52)
            at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1213)
            at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:402)
            at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.beforeTransactionCommit(JdbcTransaction.java:101)
            at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.commit(AbstractTransactionImpl.java:175)
            at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:75)
            at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:513)
            ... 109 more
4

1 に答える 1

0

管理者の問題については、default_sku_id の blc_product テーブルから制約を削除します。3.1 では、この制約がインストールの一部として作成されなくなったことを確認しました。

サイトの問題については、新しい 3.1 デモ インストールに対して web.xml と applicationContext.xml を再確認して、違いを見つけられるかどうかを確認してください。クリーンな 3.1 デモ インストールで再作成できる場合は、GitHub でイシューを開いてください。それ以外の場合は、コードにブレークポイントを追加し、クリーンな 3.1 デモ インストールの同様の場所にブレークポイントを追加して、違いを判断できるかどうかを確認してください。

編集: サイトの問題は個別に追跡されています :

ブライアン、免責事項:私はBroadleaf Commerceで働いています

于 2014-11-26T13:58:47.843 に答える