我在将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)
请帮帮我。谢谢。
答案 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;如果您只是创建一个新架构,可能会更容易。