Ofbiz安装与部署

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_32447301/article/details/83090489

一、下载Ofbiz
http://www.apache.org/dyn/closer.lua/ofbiz/apache-ofbiz-16.11.04.zip
二、环境,采用JDK1.8与gradle-4.10.2-bin
三、配置gradle-4.10.2-bin
https://jingyan.baidu.com/article/00a07f38706f0b82d028dcf3.html
四、修改gradle配置文件
在这里插入图片描述
修改为下载版本一致:
在这里插入图片描述
五、下载mysql驱动jar包放在lib目录下
在这里插入图片描述
六、修改D:\ofbiz\apache-ofbiz-16.11.05\framework\entity\config目录下的entityengine.xml
在这里插入图片描述

<?xml version="1.0" encoding="UTF-8" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->
<!--
 - This file configures the Entity Engine JDBC (or other DataSource) and JTA
access. For a detailed description see the core/docs/entityconfig.html file.
-->
<entity-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/entity-config.xsd">
    <resource-loader name="fieldfile" class="org.apache.ofbiz.base.config.FileLoader"
            prepend-env="ofbiz.home" prefix="/framework/entity/fieldtype/"/>

    <!-- the transaction factory class to use, one is needed for each way of getting JTA interfaces -->
    <!-- Use this one for Geronimo -->
    <transaction-factory class="org.apache.ofbiz.entity.transaction.GeronimoTransactionFactory"/>

    <!-- Use this one for getting the JTA objects from JNDI -->
    <!-- NOTE: to use the JndiFactory you must specify the necessary JNDI properties
    <transaction-factory class="org.apache.ofbiz.entity.transaction.JNDITransactionFactory">
        <user-transaction-jndi jndi-server-name="default" jndi-name="java:comp/UserTransaction"/>
        <transaction-manager-jndi jndi-server-name="default" jndi-name="java:comp/UserTransaction"/>
    </transaction-factory>
    -->
    <!--
        It is common to use UserTransaction for the TransactionManager, but if that doesn't work, try this: <transaction-manager-jndi jndi-server-name="default" jndi-name="java:comp/TransactionManager"/>
        Common UserTransaction locations:
            java:comp/UserTransaction (most servers: Resin, Orion, OC4J, etc)
            UserTransaction (RexIP)
        JBoss uses two different objects for the UserTransaction and TransactionManager interfaces;
        they are located in JNDI at: "java:comp/UserTransaction" and "java:/TransactionManager" respectively
    -->

    <!-- the connection factory class to use, one is needed for obtaining connections/pools for defined resources -->
    <connection-factory class="org.apache.ofbiz.entity.connection.DBCPConnectionFactory"/>

    <debug-xa-resources value="false" />  <!-- see https://issues.apache.org/jira/browse/OFBIZ-4282 for more -->
    
   <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.apache.ofbiz" datasource-name="localmysql"/> 
		 <group-map group-name="org.apache.ofbiz.olap" datasource-name="localmysqlolap"/> 
		 <group-map group-name="org.apache.ofbiz.tenant" datasource-name="localmysqltenant"/> 
	</delegator> 
	<delegator name="default-no-eca" entity-model-reader="main" entity-group-reader="main" entity-eca-reader="main" entity-eca-enabled="false" distributed-cache-clear-enabled="false"> 
		<group-map group-name="org.apache.ofbiz" datasource-name="localmysql"/> 
		<group-map group-name="org.apache.ofbiz.olap" datasource-name="localmysqlolap"/> 
		<group-map group-name="org.apache.ofbiz.tenant" datasource-name="localmysqltenant"/> 
		</delegator> 
	<delegator name="test" entity-model-reader="main" entity-group-reader="main" entity-eca-reader="main"> 
		<group-map group-name="org.apache.ofbiz" datasource-name="localmysql"/> 
		<group-map group-name="org.apache.ofbiz.olap" datasource-name="localmysqlolap"/> 
		<group-map group-name="org.apache.ofbiz.tenant" datasource-name="localmysqltenant"/> 
	</delegator>

   
    <!-- need to at least define a name for each component to use -->
    <entity-model-reader name="main"/>

    <!-- need to at least define a name for each component to use -->
    <entity-group-reader name="main"/>

    <!-- need to at least define a name for each component to use -->
    <entity-eca-reader name="main"/>

    <!-- need to at least define a name for each component to use -->
    <!-- defining:
        tenant       = OFBiz and External Tenant Data
        seed         = OFBiz and External Seed Data - to be maintained along with source and updated whenever a system deployment is updated
        seed-initial = OFBiz and External Seed Data - to be maintained along with source like other seed data, but only loaded initially and not updated when a system is updated except manually reviewing each line
        demo         = OFBiz Only Demo Data
        ext          = External General Data (custom)
        ext-test     = External Test Data (custom)
        ext-demo     = External Demo Data (custom)
    -->
    <entity-data-reader name="tenant"/>
    <entity-data-reader name="seed"/>
    <entity-data-reader name="seed-initial"/>
    <entity-data-reader name="demo"/>
    <entity-data-reader name="ext"/>
    <entity-data-reader name="ext-test"/>
    <entity-data-reader name="ext-demo"/>

    <field-type name="hsql" loader="fieldfile" location="fieldtypehsql.xml"/>
    <field-type name="derby" loader="fieldfile" location="fieldtypederby.xml"/>
    <field-type name="daffodil" loader="fieldfile" location="fieldtypedaffodil.xml"/>
    <field-type name="axion" loader="fieldfile" location="fieldtypeaxion.xml"/>
    <field-type name="mysql" loader="fieldfile" location="fieldtypemysql.xml"/>
    <field-type name="postgres" loader="fieldfile" location="fieldtypepostgres.xml"/>
    <field-type name="oracle" loader="fieldfile" location="fieldtypeoracle.xml"/>
    <field-type name="sapdb" loader="fieldfile" location="fieldtypesapdb.xml"/>
    <field-type name="sybase" loader="fieldfile" location="fieldtypesybase.xml"/>
    <field-type name="firebird" loader="fieldfile" location="fieldtypefirebird.xml"/>
    <field-type name="mssql" loader="fieldfile" location="fieldtypemssql.xml"/>
    <field-type name="advantage" loader="fieldfile" location="fieldtypeadvantage.xml"/>
    
    <!--
    For DAO/JDBC Helper: Tries:
      1. JNDI Datasource IF jdbc.jndi.name, context.provider, etc are specified
      2. Embedded (JOTM) if available (uses jdbc.driver, jdbc.uri, jdbc.username, jdbc.password, isolation.level)
      3. Direct to manually laoded JDBC driver (uses jdbc.driver, jdbc.uri, jdbc.username, jdbc.password)

    Transaction Isolation Levels - (<helperName>.isolation.level) can be as follows:
     * None
     * ReadCommitted (Recommended)
     * ReadUncommitted
     * RepeatableRead
     * Serializable (NOT Recommended)
     * Not set uses database default
    -->


    <datasource name="localmysql"
            helper-class="org.apache.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="latin1"
            collate="latin1_general_cs">
        <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://127.0.0.1/ofbiz?autoReconnect=true"
                jdbc-username="root"
                jdbc-password="123456"
                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>
    <datasource name="localmysqlolap"
            helper-class="org.apache.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="latin1"
            collate="latin1_general_cs">
        <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://127.0.0.1/ofbizolap?autoReconnect=true"
                jdbc-username="root"
                jdbc-password="123456"
                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>
    <datasource name="localmysqltenant"
            helper-class="org.apache.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="latin1"
            collate="latin1_general_cs">
        <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://127.0.0.1/ofbiztenant?autoReconnect=true"
                jdbc-username="root"
                jdbc-password="123456"
                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>
    <datasource name="odbcmysql"
            helper-class="org.apache.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="latin1"
            collate="latin1_general_cs">
        <read-data reader-name="tenant"/>
        <read-data reader-name="seed"/>
        <inline-jdbc
                jdbc-driver="com.mysql.jdbc.Driver"
                jdbc-uri="jdbc:mysql://127.0.0.1/ofbiz_odbc?autoReconnect=true"
                jdbc-username="root"
                jdbc-password="123456"
                isolation-level="ReadCommitted"
                pool-minsize="2"
                pool-maxsize="250"
                time-between-eviction-runs-millis="600000"/>
        <!-- <jndi-jdbc jndi-server-name="localjndi" jndi-name="java:/MySqlDataSource" isolation-level="Serializable"/> -->
    </datasource>

    
</entity-config>

七、编译项目
点击解压目录下的gradlew.bat文件,会自动下载gradlew以及相关的依赖。(这个步骤花费时间最长)需要恒心。
在这里插入图片描述
八、创建数据库:ofbiz、ofbiz_odbc、ofbizolad、ofbiztenant
在这里插入图片描述
九、输入gradlew cleanAll loadDefault导入数据、输入gradlew ofbiz运行项目
在这里插入图片描述
十、进入服务
在这里插入图片描述
https://localhost:8443/ordermgr
在这里插入图片描述
https://localhost:8443/webtools/control/main
在这里插入图片描述
https://localhost:8443/accounting/control/main
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_32447301/article/details/83090489
今日推荐