1. 在eclipse下运行或调试Ofbiz的出现Can't find bundle for base

关键字: ofbiz

eclipse 中利用org.ofbiz. base.start.Start类运行Ofbiz 出现错误:

Exception in thread "main" java.lang.ExceptionInInitializerError
at org.ofbiz. base.util.Debug.<clinit>(Debug.java:90)
at org.ofbiz. base.container.ContainerLoader.load(ContainerLoader.java:50)
at org.ofbiz. base.start.Start.initStartLoaders(Start.java:248)
at org.ofbiz. base.start.Start.init(Start.java:87)
at org.ofbiz. base.start.Start.main(Start.java:403)
Caused by: java.util.MissingResourceException: Can't find bundle for base name cache, locale zh_CN
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:836)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:805)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:549)
at org.ofbiz. base.util. cache.UtilCache.setPropertiesParams(UtilCache.java:217)
at org.ofbiz. base.util. cache.UtilCache.setPropertiesParams(UtilCache.java:213)
at org.ofbiz. base.util. cache.UtilCache.<init>(UtilCache.java:172)
at org.ofbiz. base.util.UtilProperties.<clinit>(UtilProperties.java:53)
... 5 more

原因是没有正确设置Debug环境,OFBiz Wiki上的 文章描述的很详细,按照它的步骤设置,就不会出现上面的问题。

2.trunk 中定义entity时在entitymodel中,如果定义的group在org.ofbiz中就不需要在entitygroup中定义,而自定义的
如在com.aicent中,实体存放在不同的数据库,那么需要定义entitygroup。因此导致的一个问题就是:
如果有自定义实体在entitymodel中定义了但是没有加入到entitygroup中,那么就会导致此实体默认放在在org.ofbiz中从而在ofbiz的数据库中建表了,这点得注意。