开源电商 OFBiz (Mysql)Idea安装过程及问题(中文乱码,500 GenericEntityException jdbc,Visitor错误处理)

来源:互联网 发布:windows寨板 哪款好 编辑:程序博客网 时间:2024/05/16 14:08

开源电商 OFBiz (Mysql)安装过程及问题

OFBiz是一个非常著名的电子商务平台,是一个非常著名的开源项目,提供了创建基于最新J2EE/XML规范和技术标准,构建大中型企业级、跨平台、跨数据库、跨应用服务器的多层、分布式电子商务类WEB应用系统的框架。 OFBiz最主要的特点是OFBiz提供了一整套的开发基于Java的web应用程序的组件和工具。包括实体引擎, 服务引擎, 消息引擎, 工作流引擎, 规则引擎等。OFBiz 已经正式成为 Apache 的顶级项目: Apache OFBiz。Apache OFBiz不仅是一个产品及订单管理系统,它还提供了一整套功能,涵盖企业所需的方方面面。除了管理产品及其相关内容(如电子商店)外,Apache OFBiz还能履行许多其它重要角色,包括客户关系管理、项目进度、计费管理、人力资源管理以及订单管理。简而言之,它就是一个企业资源规划器。世界上有上千个企业在某方面或多方面依赖于OFBiz。

下载Ofbiz

目前Ofbiz的下载版本为:13.07.3(我们也是把这个版本作为实验环境)
- 下载地址为:http://ofbiz.apache.org/download.html
- 本版本下载:http://101.110.118.71/www.apache.org/dyn/closer.lua/ofbiz/apache-ofbiz-13.07.03.zip

Apache 官方下载

关于分支版本,官方是这样给的,后面可能会有16.xx,14.12 - 15.12官方描述

官方版本描述

运行Ofbiz

这里是已经下载好的目录

这个是已经下载好的目录及解压
\ue415 下一个步骤,我们开始做一系列配置
ofbiz自带的数据库是Derby,这是一种小型的适合与测试系统的数据库,因为在项目中我们只是简单的实现一个但不适合在产品级系统中使用,所以通常我们需要将ofbiz迁移到其它数据库上,下面我就以如何迁移至mysql为例,向大家讲述数据库迁移过程,迁移至其它数据库的过程类似.
修改配置文件:
entityengine.xml–>目录为..\apache-ofbiz-13.07.03\framework\entity\config


–idea快捷键
注释快捷键 Ctrl+/ Ctrl+Shift+/ 区分它们两个的性质 一个是单行,一个是多行多注释 一个是多行单注释
格式化代码 Ctrl+Alt+L (如果不起作用,热键冲突了,自己可以根据自己喜好设置)

<delegator name="default" entity-model-reader="main" entity-group-reader="main" entity-eca-reader="main" distributed-cache-clear-enabled="false">    <group-map group-name="org.ofbiz" datasource-name="localderby"/>    <group-map group-name="org.ofbiz.olap" datasource-name="localderbyolap"/>    <group-map group-name="org.ofbiz.tenant" datasource-name="localderbytenant"/>    <!-- <group-map group-name="org.ofbiz" datasource-name="localmysql"/>    <group-map group-name="org.ofbiz.olap" datasource-name="localmysqlolap"/>    <group-map group-name="org.ofbiz.tenant" datasource-name="localmysqltenant"/>  -->    <!-- <group-map group-name="org.ofbiz" datasource-name="localpostnew"/>    <group-map group-name="org.ofbiz.olap" datasource-name="localpostolap"/>    <group-map group-name="org.ofbiz.tenant" datasource-name="localposttenant"/> --></delegator>

修改..(自己举一反三,下面的雷同)

<delegator name="default" entity-model-reader="main" entity-group-reader="main" entity-eca-reader="main" distributed-cache-clear-enabled="false">    <!--<group-map group-name="org.ofbiz" datasource-name="localderby"/>    <group-map group-name="org.ofbiz.olap" datasource-name="localderbyolap"/>    <group-map group-name="org.ofbiz.tenant" datasource-name="localderbytenant"/>-->    <group-map group-name="org.ofbiz" datasource-name="localmysql"/>    <group-map group-name="org.ofbiz.olap" datasource-name="localmysqlolap"/>    <group-map group-name="org.ofbiz.tenant" datasource-name="localmysqltenant"/>    <!-- <group-map group-name="org.ofbiz" datasource-name="localpostnew"/>    <group-map group-name="org.ofbiz.olap" datasource-name="localpostolap"/>    <group-map group-name="org.ofbiz.tenant" datasource-name="localposttenant"/> --></delegator>

其实如果你仔细的阅读了README 后面的就很Easy,贴出来

All you need to run OFBiz is a 1.7 (version 7) JDK(not just the JRE, the full JDK).http://java.sun.com/javase/downloads/index.jspYou can load the demo data (strongly advised if you are new toOFBiz) with the following command on the command linefrom the OFBiz home folder (in Unix-like operating systemstype "./ant" rather than "ant" to use the embed ant version if you haven't installed it on your system) :ant load-demoThen start OFBiz:ant start(or "java -Xms128M -Xmx512M -XX:MaxPermSize=128m -jar ofbiz.jar")(you can also run directly "ant load-demo start")Once OFBiz starts, you can look at the demo storefront at:http://localhost:8080/ecommercethe back office at:https://localhost:8443/ordermgrand the administration interface at:https://localhost:8443/webtoolsYou can log in with the user "admin" and password "ofbiz".To stop OFBiz:ant stopTo get the list of available commands:ant -p

ofbiz采用编码jbk,我们改成utf-8主要都有哪些要改动的地方….
创建数据库
创建数据库
我们上面说了,修改 entityengine.xml 这个文件,那么继续修改 ,土鳖康铁牛(to be continue)
数据源配置
下面配置localmysql 数据连接字符,在entityengine.xml 下半部分,
当然为了方便,数据库,用户名,密码都设置成ofbiz就不用改配置。连接自己改
character-set=”utf8”
collate=”utf8_general_ci”
jdbc-uri=”jdbc:mysql://192.168.163.128/ofbiz?autoReconnect=true&characterEncoding=UTF-8”

<datasource name="localmysql"            helper-class="org.ofbiz.entity.datasource.GenericHelperDAO"            field-type-name="mysql"            check-on-start="true"            add-missing-on-start="true"            check-pks-on-start="false"            use-foreign-keys="true"            join-style="ansi-no-parenthesis"            alias-view-columns="false"            drop-fk-use-foreign-key-keyword="true"            table-type="InnoDB"            character-set="utf8"            collate="utf8_general_ci">    <read-data reader-name="tenant"/>    <read-data reader-name="seed"/>    <read-data reader-name="seed-initial"/>    <read-data reader-name="demo"/>    <read-data reader-name="ext"/>    <read-data reader-name="ext-test"/>    <read-data reader-name="ext-demo"/>    <inline-jdbc            jdbc-driver="com.mysql.jdbc.Driver"            jdbc-uri="jdbc:mysql://192.168.163.128/ofbiz?autoReconnect=true&amp;characterEncoding=UTF-8"            jdbc-username="ofbiz"            jdbc-password="ofbiz"            isolation-level="ReadCommitted"            pool-minsize="2"            pool-maxsize="250"            time-between-eviction-runs-millis="600000"/><!-- Please note that at least one person has experienced a problem with this value with MySQL            and had to set it to -1 in order to avoid this issue.            For more look at http://markmail.org/thread/5sivpykv7xkl66px and http://commons.apache.org/dbcp/configuration.html-->    <!-- <jndi-jdbc jndi-server-name="localjndi" jndi-name="java:/MySqlDataSource" isolation-level="Serializable"/> --></datasource>
"%JAVA_HOME%\bin\java"  -jar framework/base/lib/ant-1.9.0-ant-launcher.jar -lib framework/base/lib/ant %1 %2 %3 %4 %5 %6-->改ant.bat启动参数"%JAVA_HOME%\bin\java" -Xms128M -Xmx512M -XX:MaxPermSize=128m -Dfile.encoding=UTF-8 -jar framework/base/lib/ant-1.9.0-ant-launcher.jar -lib framework/base/lib/ant %1 %2 %3 %4 %5 %6

配置好这些就可以做初步的尝试了
ant load-demo

ant load-demo

但是要注意看上面这个时间太短了,仔细看一下过程,可能已经抛出异常了
Caused by: org.ofbiz.entity.GenericEntityException: org.ofbiz.entity.GenericEntityException: Cached loader got a known bad class name: com.mysql.jdbc.Driver (Cached loader got a known bad class name: com.mysql.jdbc.Driver) (Cached loader got a known bad class name: com.mysql.jdbc.Driver (Cached loader got a known bad class name: com.mysql.jdbc.Driver))
解决:更新JDBC驱动,将mysql的jdbc驱动拷贝到${Ofbiz_Home}/framework/entity/lib/jdbc 目录下。

-下载地址:http://dev.mysql.com/downloads/connector/j/


ant start
商城

订单

后台配置

中文检测

完美—-修改公司名称 中文乱码问题也已经解决
如果在页面出现500 visitor 错误,数据库配置问题。检查配置文件是否正确。

Markdown及扩展

ofbiz —— [ 维基百科 ]

0 0
原创粉丝点击