将HSQL迁移到Mysql但在站点上出现404错误

时间:2016-02-04 20:12:40

标签: broadleaf-commerce

我在将hsql迁移到mysql时遇到问题。首先我已经使用hsql在ant tomcat上运行它,然后我想将它与mysql一起使用。我按照本文档http://www.broadleafcommerce.com/docs/c ... l-tutorial

的所有步骤进行了操作

但是在访问网站时它出错了,它给出了错误404.当我检查数据库时。所有表都已创建,但它们中没有数据。

这里有一些日志。

[artifact:mvn] [ERROR] 15:34:02 SchemaExport - HHH000231:架构导出失败 [artifact:mvn] org.hibernate.tool.hbm2ddl.ImportScriptException:语句执行期间出错(文件:'/ sql / load_i18n_countries.sql'):INSERT INTO BLC_ISO_COUNTRY(ALPHA_2,NAME,ALPHA_3,NUMERIC_CODE,STATUS)VALUES('AX ','奥兰群岛','ALA','248','OFFICIALLY_ASSIGNED') [artifact:mvn] org.hibernate.tool.hbm2ddl.SchemaExport.importScript(SchemaExport.java:451) [artifact:mvn]在org.hibernate.tool.hbm2ddl.SchemaExport.execute(SchemaExport.java:378) [artifact:mvn] org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:304) [artifact:mvn] org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:293) [artifact:mvn]在org.hibernate.internal.SessionFactoryImpl。(SessionFactoryImpl.java:498) [artifact:mvn] org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1742) [artifact:mvn]在org.hibernate.ejb.EntityManagerFactoryImpl。(EntityManagerFactoryImpl.java:94) [artifact:mvn] org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:905) [artifact:mvn] org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:890) [artifact:mvn] at org.springframework.orm.jpa.vendor.SpringHibernateEjbPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateEjbPersistenceProvider.java:51)

请帮帮我。谢谢。

1 个答案:

答案 0 :(得分:0)

这可能是因为MySQL没有以UTF-8模式运行。请参阅Broadleaf文档中的此链接:http://www.broadleafcommerce.com/docs/core/current/broadleaf-concepts/key-aspects-and-configuration/database-configuration/mysql

基本上,请确保my.cnf配置告诉MySQL使用以下命令运行:

[mysqld]
lower_case_table_names=1
character-set-server=utf8
collation-server=utf8_general_ci

您需要重启MySQL才能生效。执行此操作后,您可能需要创建另一个默认为UTF-8的模式。如果你不配置它,MySQL通常在MYISAM中启动,这与UTF-8不兼容。我不确定您是否可以将现有架构从MYISAM更改为UTF-8;如果您只是创建一个新架构,可能会更容易。