2015-09-10 4 views
1

J'ai été en mesure d'exécuter le projet DemoSite après avoir modifié la base de données HSQL en mémoire en MySql en suivant les instructions données dans le manuel broadleaf commerce. Maintenant, quand j'exécute l'application Demosite, je trouve que 183 tables sont créées et remplies avec des données, mais cela n'existe que pendant l'exécution de l'application. Une fois l'application fermée, il ne reste que 4 tables dans la base de données. J'utilise la version de démo de broadleaf 4.0.0 et la base de données de MySql. Les 4 tables qui restent après l'application arrêt sont nommés comme suit: -les tables de base de données broadleaf ne persistent pas après l'arrêt de l'application

blc_bank_account_payment 

blc_credit_card_payment 

blc_gift_card_payment 

blc_static_asset_strg 

J'ai changé les propriétés pertinentes des fichiers de valeur d'entrée « hbmddl2.auto » à « mettre à jour » afin que les tables de base de données ne sont pas créés et effacé pour chaque nouvelle exécution de l'application, mais n'ont toujours pas été en mesure de se débarrasser de ce problème.

J'ai également beaucoup cherché sur les forums mais je n'ai pas trouvé de réponse. SOF est mon dernier recours. S'il vous plaît aider.

Répondre

1

Lors du premier lancement demosite vous pourriez avoir blPU.hibernate.hbm2ddl.auto=create-drop dans votre site/src/main/resources/runtime propriétés/development.properties fichierafin de générer des tables de base de données.

Comment fonctionne le Site/Admin? De et de tomcat cible de l'IDE ou de déployer la guerre dans Tomcat en dehors de l'IDE.

J'espère que vous avez changé la valeur de la propriété blPU.hibernate.hbm2ddl.auto à mise à jour.

Maintenant, si vous utilisez tomcat ant de IDE, après avoir modifié la propriété ci-dessus vous devez d'abord installer maven core/site/modules d'administration avant le site en cours d'exécution/admin. Si vous exécutez IntellijIDEA lorsque vous arrêtez l'application, les tables seront supprimées si vous avez blPU.hibernate.hbm2ddl.auto=create-drop, où Eclipse mettra immédiatement fin au processus sans exécuter la phase de suppression. La meilleure chose à faire est lorsque vous démarrez l'application pour la première fois, après que les tables de base de données sont créées et que les données de l'échantillon sont remplies, puis sauvegardez le schéma. Ensuite, modifiez blPU.hibernate.hbm2ddl.auto à mettez à jour, exécutez maven install. Maintenant, lancez l'application.

Espérons que ça aide.

+0

Je lance d'abord l'application DemoSite avec la propriété blPU.hibernate.hbm2ddl.auto dans la valeur site/src/main/resources/runtime-properties/development.properties définie sur create-drop. –

+1

Exécutez d'abord l'application DemoSite avec la propriété blPU.hibernate.hbm2ddl.auto dans la valeur site/src/main/resources/runtime-properties/development.properties définie sur create-drop. Une fois l'application en cours d'exécution, la base de données est remplie avec les données pertinentes. Reprenez la base de données en utilisant la commande mysqldump. Ensuite, fermez l'application.Changez la propriété mentionnée ci-dessus pour mettre à jour et nettoyer l'installation du projet. Ensuite, supprimez la base de données et créez une nouvelle base de données avec le même nom qu'auparavant.Ensuite, importez la base de données sauvegardée dans la nouvelle base de données. module de site. –

+0

Est-ce que ça marche maintenant? –