上篇博客《OFbiz--简单介绍》我们介绍了OFbiz是什么,以下我们就開始用OFbiz开发我们的第一个程序--HelloWorld。

过程例如以下:

首先在hot-deploy下新建文件夹simple。文件夹结构例如以下:

1.ofbiz-component.xml文件配置

此文件为程序的启动配置。配置webapp的名称、位置、权限、信息。

<?

xml version="1.0" encoding="UTF-8"?> <ofbiz-component name="simple" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-component.xsd"> <resource-loader name="main" type="component"/> <webapp name="simple" title="Simple" server="default-server" base-permission="OFBTOOLS" location="webapp/simple" mount-point="/simple" app-bar-display="false"/> </ofbiz-component>

2.web.xml文件配置

配置默认的实体载入器、分发器、装饰器。能够与springMVC或struts的项目中的web.xml进行比較。会发现有些地方是同样的。做为MVC模式的项目,在配置文件里都须要配置ControlServlet进行请求分法。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"><web-app> <!-- 有关实体引擎 --><context-param><param-name>entityDelegatorName</param-name><param-value>default</param-value></context-param><!-- 有关服务引擎 --><context-param><param-name>localDispatcherName</param-name><param-value>school</param-value> </context-param><!-- 有关界面装饰器 --><context-param><param-name>mainDecoratorLocation</param-name><param-value>component://simple/widget/SimpleScreens.xml</param-value></context-param><!-- 配置訪问过滤器 --><filter><filter-name>ContextFilter</filter-name><display-name>ContextFilter</display-name><filter-class>org.ofbiz.webapp.control.ContextFilter</filter-class><init-param><param-name>disableContextSecurity</param-name><param-value>N</param-value></init-param><init-param><param-name>allowedPaths</param-name><param-value>/error:/control:/select:/index.html:/index.jsp:/default.html:/default.jsp:/images:includes/maincss.css</param-value>    </init-param><init-param><param-name>errorCode</param-name><param-value>403</param-value></init-param><init-param><param-name>redirectPath</param-name><param-value>/control/main</param-value></init-param></filter><filter-mapping><filter-name>ContextFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping><!-- 配置控制监听器 --><listener><listener-class>org.ofbiz.webapp.control.ControlEventListener</listener-class></listener><!-- 配置登录监听器 --><listener><listener-class>org.ofbiz.webapp.control.LoginEventListener</listener-class></listener><!-- 配置核心控制器 --><servlet><servlet-name>ControlServlet</servlet-name><servlet-class>org.ofbiz.webapp.control.ControlServlet</servlet-class><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>ControlServlet</servlet-name><url-pattern>/control/*</url-pattern></servlet-mapping><!-- 配置session过期时间 --><session-config><session-timeout>60</session-timeout></session-config><!-- 配置默认界面 --><welcome-file-list><welcome-file>index.jsp</welcome-file><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file></welcome-file-list>
</web-app>

3.controller.xml

配置request请求及请求的视图。

<?

xml version="1.0" encoding="UTF-8"?> <site-conf xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/site-conf.xsd"> <include location="component://common/webcommon/WEB-INF/common-controller.xml"/> <!-- Request Mappings --> <request-map uri="main"> <security https="false" auth="false"/> <response name="success" type="view" value="main"/> </request-map> <!-- View Mappings --> <view-map name="main" type="screen" page="component://simple/widget/SimpleScreens.xml#main"/> </site-conf>

4.SimpleScreens.xml

配置界面信息,一个screen是一个定义的界面。

<?

xml version="1.0" encoding="UTF-8"?> <screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-screen.xsd"> <screen name="main"> <section> <widgets> <label text="Hello World"/> </widgets> </section> </screen> </screens>

5.訪问

訪问地址:http://localhost:8080/simple/control/main

结果例如以下:

总结

通过如上操作,我们建立了自己的第一个OFbiz程序,这个程序不涉及实体的CRUD、不涉及请求的重定向、不涉及表单拼装界面、不涉及请求服务。以下我们会一点点的完好这个Demo.

大家能够感受到使用OFbiz如此简单,没有一行java代码。全是xml配置文件。大家仅仅要熟悉xml的编写规范就可以高速上手。

转载于:https://www.cnblogs.com/blfshiye/p/5129677.html

OFbiz--HelloWorld相关推荐

  1. Docker安装Apache与运行简单的web服务——httpd helloworld

    Docker运行简单的web服务--httpd helloworld目录[阅读时间:约5分钟] 一.Docker简介 二.Docker的安装与配置[CentOS环境] 三.Docker运行简单的web ...

  2. CentOS Docker安装配置部署Golang web helloworld

    目录[阅读时间:约5分钟] 一.Docker简介 二.Docker的安装与配置[CentOS环境] 三.Docker部署Golang web helloworld 四.Docker与虚拟机的区别 五. ...

  3. 简单图文配置golang+vscode【win10/centos7+golang helloworld+解决install failed等情况】

    博客目录(阅读时间:10分钟) 一.win10 0.系统环境 1. win10配置golang环境 ①下载相关软件 ②创建gowork工作空间 ③配置环境变量(GOPATH+PATH) ④验证环境配置 ...

  4. idea java jni 调试_IntelliJ IDEA平台下JNI编程(一)—HelloWorld篇

    JNI(Java Native Interface),出于学习JNI的目的,为了能够更方便快速地运行程序.本文的是在IDEA中进行,而不在AndroidStudio,这样能够对NDK的工作过程有个更深 ...

  5. Apache模块开发helloworld无错版

    环境:CentOS 5.4 第一步:安装Apache的apxs 首先来介绍下apache的一个工具apxs.apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,用于编译一个或多个源程 ...

  6. 1.1GTK+ 的简单程序HelloWorld

    1.1GTK+ 的简单程序HelloWorld 编译执行如图所看到的:

  7. 项目构建之maven篇:2.HelloWorld项目构建过程

    文件结构说明: 项目构建生命周期: 清理 编译 測试 打包 执行 部署 清理与编译 hello\pom.xml POM:Project Object Model,项目对象模型 pom.xml与ant的 ...

  8. Python基础01-Python环境搭建与HelloWorld

    目录 从今天开始学习Python Python环境搭建 安装gcc Python源码包安装 开始Python第一个代码HelloWorld! 从今天开始学习Python 为啥选择Python,可能是跟 ...

  9. 从HelloWorld看Knative Serving代码实现

    为什么80%的码农都做不了架构师?>>>    摘要: Knative Serving以Kubernetes和Istio为基础,支持无服务器应用程序和函数的部署并提供服务.我们从部署 ...

  10. flask源码学习-helloworld与本地启动流程

    Flask源码分析 本文环境python3.5.2,flask-1.0.2. Flask的初探 首先,在项目文件夹下建立flask_run.py文件,然后写入如下, from flask import ...

最新文章

  1. Linux shell笔记
  2. R语言当前目录获取及设置函数(getwd setwd)实战
  3. sqlalchemy(一)基本操作
  4. 军队可以用oracle,使用Oracle JRockit 提高tomcat性能
  5. python笔记:数组的一些操作
  6. SpringSecurity权限控制之异常处理方式一
  7. WinRAR在DOS下压缩/解压缩的使用方法
  8. mongodb在32位机的连接
  9. nodejs的mysql初始化
  10. 中国酒器市场趋势报告、技术动态创新及市场预测
  11. IBM - 开拓语音识别 - 概述 - 中国
  12. ASP.NET Web API 安全验证之摘要(Digest)认证
  13. 在网页输入框输入角标_这个免费插件能帮我们把Excel内容快速填充到网页表单?...
  14. 手机python安装教程_Python安装不用愁,Python安装教程来了(2021)
  15. js验证开始时间和结束时间 结束时间不能比开始时间早
  16. python出现syntaxerror_python 报错syntaxerror怎么解决
  17. ipad+pdfexpert+webdav 双向同步文件
  18. 如何利用ps制作一张全景图?
  19. C语言中 srand()函数和rand()函数
  20. mid代表计算机,MID是什么

热门文章

  1. 树莓派学习路程No.2 GPIO功能初识 wiringPi安装
  2. Linux上查到目前透过FTP进来的使用者
  3. iOS简单实现查看更多/收起的效果[最新]
  4. SpringBoot + Kafka + ELK 完成海量日志收集(超详细)
  5. 阿里P8架构师:淘宝技术架构从1.0到4.0的架构变迁!12页PPT详解
  6. 推荐一款配置中心新贵:Nacos,阿里开源,是真的香!!
  7. 最新!Dubbo 远程代码执行漏洞通告,速度升级
  8. BAT互联网大厂的后端主流技术栈是啥?
  9. 15 张 Vim 速查表奉上,帮你提高N倍效率!
  10. 没有副业的人,太难了。。。