Liferay 5.2.3 环境搭建
- 格式:docx
- 大小:909.81 KB
- 文档页数:19
我的全栈之路-Java基础之Java企业级项⽬开发环境搭建我的全栈之路-Java基础之Java企业级项⽬开发环境搭建我的全栈之路2.1 Java企业级开发环境概述绝⼤多数Java开发⼯程师在公司⼊职做项⽬开发时,公司都会统⼀发放Windows笔记本(例如⼩⽶,戴尔等),当然有些公司也会发苹果的MacBookPro。
本⼈⽬前打算做全平台开发,因此准备了两台电脑,配置仅供参考。
Alicenware 17R5Intel 8代i9+32G内存+1TSSD+1T机械+GTX1080显卡+4K分辨率+眼动仪macBookPro 19款Intel 9代i9+32G内存+512SSD+Radeon Pro Vega 20显卡良好的硬件配置可以提⾼开发、测试、部署效率,如果条件允许尽量选择⾼配置的电脑。
然后会使⽤Windows10/macOS+Java8+IntelliJ IDEA+Git/GitLab+Maven/Gradle+Chrome作为开发环境同时也会使⽤到Navicat、SecureCRT、Jenkins、Postman,JMeter等⼯具来完成⽇常的相关开发、测试、部署等任务。
2.2 Windows10安装Java82.2.1 Windows10和Java介绍Java8作为⽬前最主流的版本,⼀些开源框架(例如SpringBoot2.0)和 ⼤型互联⽹公司的分布式应⽤都已经采⽤Java8构建和部署。
2.2.2 Java8下载Windows10安装Java8⾮常简单,⾸先我们去Oracle官⽹下载Java8,⽬前最新的Java8版本是1.8.0_221在点击jdk-8u221-windows-x64.exe的下载链接后,登录Oracle账户就可以开始下载了如果Oracle官⽹下载⽐较慢,还可以复制链接到迅雷下载。
2.2.3 Windows10安装JDK8Java8下载完成以后,双击安装⽂件jdk-8u221-windows-x64.exe,然后系统会弹出⼀个⽤户账户控制的窗⼝,提⽰"你要允许此应⽤对你的设备进⾏更改吗",这⾥选择⽤⿏标点击是,就可以开始进⾏安装了。
请先登录ftp://59.77.7.25/账号:student密码:software一、Eclispe的安装方法1、软件位置ftp://59.77.7.25/教学课件/王美红/Java案例设计/软件/ eclipse-jee-indigo-SR2-win32.zip 2、安装步骤(1)解压eclipse-jee-indigo-SR2-win32.zip 到C:\Program Files\eclipse(2)将eclipse.exe 发送到桌面快捷方式二、Tomcat的安装方式1、软件位置ftp://59.77.7.25/教学课件/王美红/Java案例设计/软件/ apache-tomcat-7.0.27.zip2、安装步骤(1)解压apache-tomcat-7.0.27.zip 到C:\Program Files\Java\apache-tomcat-7.0.27 (2)运行eclipse.exe 选择工作目录C:\Program Files\Java\workspace(3)关闭欢迎界面,新建Tomcat服务器,步骤如下:点击new server wizard,选择Apache 下Tomcat v7.0 Server,其他默认,Next点击Browse,选择Tomcat解压路径,选择根目录即可,如C:\Program Files\Java\apache-tomcat-7.0.27,然后点击Finish添加成功后,在Servers选项下,会出现如下新建好的服务器,表示服务器安装成功。
三、mysql的安装方式1、位置软件ftp://59.77.7.25/教学课件/王美红/Java案例设计/软件/MySQL/目录下的两个文件mysql-noinstall-5.1.53-win32.zip 以及Navicat for MySQL2、mysql安装步骤解压mysql-noinstall-5.1.53-win32.zip 到目录C:\Program Files\mysql-5.1.53-win32 3、Navicat安装步骤(1)运行navicat8_mysql_cs.exe 安装程序(2)运行安装后的程序,Navicat for MySQL ,弹出注册对话框,点击注册复制黏贴navicat8_mysql_cs注册码.txt 下的姓名,组织,注册码,完成软件注册。
Windows2008r2 环境搭建简明教程(本文适用32、64 bit的IIS7和IIS7.5,php5.2.x、php5.3.x和php5.4.x等后续新版本)强烈推荐:IIS7.5+mysql5.5.x+php5.2.17+ZendOptimizer3.3.3+xcache2.0.1青海西宁生活网-西宁人自己的网上生活平台-/一、软件环境准备二、安装配置步骤2.1、安装MYSQL所以MYSQL直接选用[Typical]标准安装方式,Mysql 字符集选择UTF8,不影响网站的编码选择。
完成安装,打开cmd命令提示符窗口,输入命令:mysql –u root –p输入刚才安装时设置的密码后,如果能够正常进入MySQL控制台则说明MySQL安装正常。
2.2、安装IIS7.5和CGIWindows2008r2主机打开服务器管理器-添加角色-Web 服务器(IIS),再勾选CGI后安装。
Win7主机打开控制面板-程序和功能-打开或关闭Windows功能-选中Internet信息服务选框和应用程序开发功能中的CGI选框,确定安装。
2.3、安装PHPManagerPHPManager安装过程简单,直接双击安装至完成。
打开控制面板-管理工具-Internet 信息服务(IIS)管理器,PHP Manager已存在IIS功能列表中2.4、安装PHP首先安装 Visual C++ 库,过程省略。
这里使用的是32位php,所以安装32位vcredist_x86.exe解压 php-5.2.17-Win32-VC6-x86.zip,例如解压目录为E:\php-5.2.17-Win32-VC6-x86注:此目录需要administrator完全控制权限,USERS读取执行权限。
打开PHPManager如下图点击"Register new PHP version"选择已解压 E:\php-5.2.17-Win32-VC6-x86目录下的php-cgi.exe,"Configure error reporting"选择"Prodution machine"点击“Check phpinfo()”查看PHP安装信息。
准备Liferay版本:6.0.4开发模式:普通插件模式(非Ext)Struts版本:2.1.8.1环境使用到的Struts2相关jar包如下:antlr-2.7.2.jarcommons-fileupload-1.2.1.jar freemarker-2.3.15.jarognl-2.7.3.jarstruts2-core-2.1.8.1.jarstruts2-portlet-plugin-2.1.8.1.jar xwork-core-2.1.6.jar工程目录如下:参考内容参考Struts2自带的portlet示例struts2-portlet-2.1.8.1.war,在Struts 解压包下面的apps目录里面,这个示例是基于Pluto(/pluto/)Apache的Portal实现,但开发的都是portlet,所以可以参考这个。
开发示例代码portlet.xmlXml代码1.<portlet>2.<portlet-name>StrutsPortlet</portlet-name>3.<display-name>Struts Test Portlet</display-name>4.5.<portlet-class>org.apache.struts2.portlet.dispatcher.Jsr168Dispatcher</portlet-class>6.7. <!--这里的name名字不能修改,value对应于Struts.xml文件里面的配置-->8.<init-param>9.<name>viewNamespace</name>10. <value>/strutsDemoView</value>11. </init-param>12.13. <!-- 对应Struts.xml中设置的默认action -->14. <init-param>15. <name>defaultViewAction</name>16. <value>index</value>17. </init-param>18.19. <init-param>20. <name>editNamespace</name>21. <value>/strutsDemoEdit</value>22. </init-param>23.24. <init-param>25. <name>defaultEditAction</name>26. <value>index</value>27. </init-param>28.29. <expiration-cache>0</expiration-cache>30.31. <!-- 支持view、edit,和前面的portlet一样 -->32. <supports>33. <mime-type>text/html</mime-type>34. <portlet-mode>view</portlet-mode>35. <portlet-mode>edit</portlet-mode>36. </supports>37.38. <portlet-info>39. <title>My StrutsPortlet portlet</title>40. <short-title>SP</short-title>41. <keywords>struts,portlet</keywords>42. </portlet-info>43. </portlet>liferay-portlet.xmlXml代码1.<portlet>2.<portlet-name>StrutsPortlet</portlet-name>3.<instanceable>true</instanceable>4.</portlet>liferay-display.xmlXml代码1.<portlet id="StrutsPortlet"></portlet>Struts.xmlXml代码1.<?xml version="1.0"encoding="UTF-8"?>2.<!DOCTYPE struts PUBLIC3. "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"4. "/dtds/struts-2.0.dtd">5.6.<struts>7.<package name="strutsDemoView"namespace="/strutsDemoView"extends="struts-portlet-default">8.<action name="index"method="view"class="org.huqiwen.study.StrutsDemo">9.<result name="success">/strutsDemoView/view.jsp</result>10. </action>11. <action name="portletView"method="portletView"class="org.huqiwen.study.StrutsDemo">12. <result name="view">/strutsDemoView/viewMode.jsp</result>13. </action>14. </package>15.16.17. <package name="strutsDemoEdit"namespace="/strutsDemoEdit"extends="struts-portlet-default">18. <action name="index"method="edit"class="org.huqiwen.study.StrutsDemo">19. <result name="success">/strutsDemoEdit/edit.jsp</result>20. </action>21. <action name="portleEdit"method="portletEdit"class="org.huqiwen.study.StrutsDemo">22. <result name="edit">/strutsDemoEdit/editMode.jsp</result>23. </action>24. </package>25.</struts>java文件Java代码1.import com.opensymphony.xwork2.ActionSupport;2.3.public class StrutsDemo extends ActionSupport {4.5. private static final long serialVersionUID = 1L;6.7. private String message;8.9. public String getMessage(){10. return message;11. }12. public void setMessage(String message){13. this.message=message;14. }15. public String view() throws Exception {16. message = "hello Struts2 View Portlet!";17. return SUCCESS;18. }19. public String portletView(){20. return "view";21. }22. public String edit() throws Exception {23. message = "hello Struts2 Edit Portlet!";24. return SUCCESS;25. }26. public String portletEdit(){27. return "edit";28. }29.}strutsDemoView/view.jspHtml代码1.<%@ page contentType="text/html;charset=utf-8"%>2.<%@ taglib prefix="s"uri="/struts-tags"%>3.<h2><s:property value="message"/></h2>4.<s:form action="portletView!portletView.action"method="post"namespace="view">5.<s:textfield label="名字"key="message"></s:textfield>6.<s:submit value="提交"></s:submit>7.</s:form>其他的JSP不写了,和普通的Strtus2开发一样。
Struts2入门初步需掌握1.struts2概述2.struts2环境搭建(第一个struts2的应用程序)3.struts.xml文件配置详解4.struts2请求的URL的搜索路径的顺序概述5.struts2工作原理概述6.struts2指定多个配置文件7.struts2动态方法调用8.使用通配符定义action一:简介Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。
其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。
Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。
虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。
二:环境搭建搭建Struts2环境时,我们一般需要做以下几个步骤的工作:1.找到开发Struts2应用需要使用到的jar文件.下载官网:/download.cgi#struts221解压后:开始学习使用依赖的最基本的jar 包2:编写Struts2的配置文件解压其中一个案例在此目录下找到struts.xml 文件先拷贝到项目的src 下。
再对起进行修改。
删除剩余如下代码:[html]01.<?xml version ="1.0"encoding ="UTF-8" ?> 02.<!DOCTYPE struts PUBLIC 03."-//Apache Software Foundation//DTD StrutsConfiguration 2.3//EN" 04."/dtds/struts-2.3.dtd"> 05.06.<struts> 07.08. </struts>无法加载插件。
solrCloud5.2配置说明1,到solr官网下载solr5.2.0,解压到D盘2,复制server目录到server1和server2两个目录3,server1/solr和server2/solr目录结构如下:server1\--gettingstarted\--conf\(从configsets\basic_configs\conf目录复制)--gettingstarted_shard1_replica1\--core.properties--gettingstarted_shard2_replica1\--core.properties--solr.xml--zoo.cfgserver2\--gettingstarted\--conf\(从configsets\basic_configs\conf目录复制)--gettingstarted_shard1_replica2\--core.properties--gettingstarted_shard2_replica2\--core.properties--solr.xml--zoo.cfg各个目录下core.properties内容如下Server目录core.propertiesserver1gettingstarted_shard1_replica1numShards=2name=gettingstarted_shard1_replica1shard=shard1collection=gettingstartedcoreNodeName=core_node1server1gettingstarted_shard2_replica1numShards=2name=gettingstarted_shard2_replica1shard=shard2collection=gettingstartedcoreNodeName=core_node2server2gettingstarted_shard1_replica2numShards=2name=gettingstarted_shard1_replica2shard=shard1collection=gettingstartedcoreNodeName=core_node3server2gettingstarted_shard2_replica2numShards=2name=gettingstarted_shard2_replica2shard=shard2collection=gettingstartedcoreNodeName=core_node44,server1和server2目录下新建start.cmd文件java-Dsolr.solr.home=./solr/gettingstarted-Dcollection.configName=gettingstarted-Dbootstrap_confdir=./solr/gettingstarted/conf-DzkHost=127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183-jar start.jar5,Server1#Module:server--module=server#minimum number of threadsthreads.min=10#maximum number of threadsthreads.max=200#thread idle timeout in millisecondsthreads.timeout=60000#buffer size for outputjetty.output.buffer.size=32768#request header buffer sizejetty.request.header.size=8192#response header buffer sizejetty.response.header.size=8192#should jetty send the server version header?jetty.send.server.version=true#should jetty send the date header?jetty.send.date.header=false#What host to listen on(leave commented to listen on all interfaces)#jetty.host=#Dump the state of the Jetty server,components,and webapps after startupjetty.dump.start=false#Dump the state of the Jetty server,before stopjetty.dump.stop=false#Enable delayed dispatch optimisationjetty.delayDispatchUntilContent=falsejsp-impl=apache#Module:http--module=http##HTTP port to listen onjetty.port=8981##HTTP idle timeout in millisecondshttp.timeout=30000Server2##端口修改为8982,其他都相同jetty.port=89825,启动zookeeper集群,执行server1/start.cmd和server2/start.cmd分别启动两个server。
Kong开发环境搭建. Kong being an OpenResty application, you must follow the OpenResty . You will need and to compile OpenResty, and to at least use the following compilation options:sudo yum install -y gcc gcc-c++sudo yum install -y pcre pcre-develsudo yum install -y zlib zlib-develsudo yum install -y openssl openssl-devel$ ./configure \--with-pcre-jit \--with-http_ssl_module \--with-http_realip_module \--with-http_stub_status_module \--with-http_v2_moduleYou might have to specify --with-openssl and you can add any other option you’d like, such as additional Nginx modules or a custom --prefix directory.OpenResty conveniently bundles and which are essential to Kong. Add the nginx and resty executables to your $PATH:export PATH="$PATH:/usr/local/openresty/bin"2、安装库管理器, compiled with the LuaJIT version bundled with OpenResty (See the --with-lua and --with-lua-include configure options). Example:./configure \--lua-suffix=jit \--with-lua=/usr/local/openresty/luajit \--with-lua-include=/usr/local/openresty/luajit/include/luajit-2.1luarocks path--查看配置export LUA_PATH='/usr/local/share/lua/5.1/?.lua;/usr/local/share/lua/5.1/?/init.lua;./?.lua;/usr/local/openresty/luajit/share/luajit-2.1.0-beta3/?.lua;/usr/local/openresty/luajit/share/lua/5.1/?.lua;/usr/local/openresty/luajit/share/lua/5.1/?/init.lua;/root/.lu export LUA_CPATH='/usr/local/lib/lua/5.1/?.so;./?.so;/usr/local/openresty/luajit/lib/lua/5.1/?.so;/usr/local/lib/lua/5.1/loadall.so;/root/.luarocks/lib/lua/5.1/?.so'export PATH='/root/.luarocks/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/openresty/bin:/root/bin'3、Install Kongyum install -y libyaml libyaml-develNow that OpenResty is installed, we can use Luarocks to install Kong’s Lua sources:$ luarocks install kong 2.0.2-0Or:yum install -y libyaml libyaml-devel$ git clone git@:Kong/kong.git$ cd kong$ [sudo] make install # this simply runs the `luarocks make kong-*.rockspec` commandFinally, place the bin/kong script in your $PATH.4、Add kong.confNote: This step is required if you are using Cassandra; it is optional for Postgres users.By default, Kong is configured to communicate with a local Postgres instance. If you are using Cassandra, or need to modify any settings, download the file and it as necessary.Then, as root, add it to /etc:$ sudo mkdir -p /etc/kong$ sudo cp kong.conf.default /etc/kong/kong.conf5、安装数据库A-镜像模式docker run -d --name kong-database -p 5432:5432 -e "POSTGRES_USER=kong" -e "POSTGRES_DB=kong" -e "POSTGRES_PASSWORD=123456" postgres-e "POSTGRES_USER=kong" -e "POSTGRES_DB=kong" #⾃动创建数据库kong#docker run --rm -e "KONG_DATABASE=postgres" -e "KONG_PG_HOST=10.254.220.170" -e "KONG_PG_PORT=5432" -e "KONG_PG_DATAB # docker run --rm -e "KONG_DATABASE=postgres" -e "KONG_PG_HOST=10.254.220.170" -e "KONG_PG_PORT=5432" -e "KONG_PG_DATAB//认证⽅式配置/var/lib/postgresql/data/pg_hba.conf# TYPE DATABASE USER ADDRESS METHOD# "local" is for Unix domain socket connections onlylocal all all trust# IPv4 local connections:host all all 127.0.0.1/32 trust# IPv6 local connections:host all all ::1/128 trust# Allow replication connections from localhost, by a user with the# replication privilege.local replication all trusthost replication all 127.0.0.1/32 trusthost replication all ::1/128 trusthost all all all md5 #允许外⽹访问密码md5加密//var/lib/postgresql/data/postgresql.conf————————————————listen_addresses = '*'B-原⽣安装Kong so it can connect to your database. Kong supports both and as its datastore.If you are using Postgres, provision a database and a user before starting Kong: CREATE USER kong; CREATE DATABASE kong OWNER kong;Next, run the Kong migrations:$ kong migrations bootstrap -c /etc/kong/kong.conf----kong初始化数据库报错,https:///Kong/lua-kong-nginx-module--下载tls.lua-拷贝到搜索路径6-启动kongkong start [-c /path/to/kong.conf]测试:curl -i http://localhost:8001/安装Konga安装curl --silent --location https:///setup_9.x | bash -yum install -y nodejsgit clone https:///pantsel/konga.gitcd konga/npm install --unsafe-perm=true --allow-rootnpm i pm2 -g配置数据库su - postgrespsqlCREATE USER konga WITH PASSWORD '123456';CREATE DATABASE konga OWNER konga;GRANT ALL PRIVILEGES ON DATABASE konga to konga;编写配置⽂件cp .env_example .envcat .envPORT=1337NODE_ENV=productionKONGA_HOOK_TIMEOUT=120000DB_ADAPTER=postgresDB_URI=postgresql://konga:123456@localhost:5432/kongaKONGA_LOG_LEVEL=warnTOKEN_SECRET=some_secret_token# 创建数据node ./bin/konga.js prepare --adapter postgres --uri postgresql://localhost:5432/konga启动pm2 start npm --name 'konga' -- run production打开 ip:1337注册密码要尽量复杂,密码过于简单报错,需要删库重建 ,⽰例 li@123。
您好:受命搭建Testlink试用环境,经过一系列调整后,搭建起来能够运行的Testlink服务,说明如下:●组件版本:⏹系统平台:Windows Server 2003 Enterprise Edition⏹Web服务器:IIS 6.0⏹PHP版本:5.2.12⏹Mysql版本:4.1.22⏹TestLink :1.8.5⏹说明:系统平台,Web服务器和Mysql版本在搭建之初均有明确要求,TestLink选择当前已发布版本中的最新版(1.8.5),而TestLink 1.8.5支持PHP 5.2,所以PHP版本选择PHP 5.2中最新稳定版5.2.12,没有选择5.3.1●安装步骤:(假定操作系统已安装)⏹安装IIS 6.0:系统安装组件方式安装,Win 2003默认提供IIS 6.0的安装;⏹安装PHP 5.2.12:◆PHP官网(/index.php)下载php-5.2.12-Win32.zip,解压到C:\根目录下,并修改目录名为C:\PHP◆重命名PHP目录下的php .ini – dist 到php.ini,并打开修改其中配置:●修改extension_dir = "c:\PHP\ext" →扩展目录指向本地PHP扩展目录;●去掉需要的组件前面的注释:⏹extension=php_mysql.dll →按设计TestLink使用Mysql数据库,所以添加扩展;⏹extension=php_ldap.dll →TestLink中将使用LDAP登录验证,所以添加LDAP扩展;⏹extension=php_mbstring.dll →TestLink中将使用到的扩展;⏹具体的其它扩展可以根据自己的需求订制;●修改时区:date.timezone = Asia/Shanghai →避免出现一些乱码(网络上的经验)◆将修改后的php.ini拷贝到C:\Windows目录下;◆将PHP目录下:php5isapi.dll,ssleay32.dll,libeay32.dll拷贝到C:\Windows\system32下⏹配置IIS支持PHP:◆右键我的电脑→管理→Internet信息服务管理器→右键属性默认站点→主目录页签,点击页面中的配置按钮:●如图所示:◆右键Internet信息服务管理器下的Web 服务扩展,添加一个新的Web 服务扩展:●如图所示:◆重启IIS服务,测试IIS是否支持PHP;●写一个打印phpinfo()的页面,检查IIS是否能解析PHP,并且查看是否配置的扩展都生效;⏹安装Mysql数据库:◆官网下载mysql-4.1.22-win32.zip;◆安装并配置Mysql数据库,记住数据库的的root密码,咱们TestLink服务的为(root:******)◆安装完成后验证Mysql服务正常启动:●Services.msc中有Mysql服务运行;●CMD→Mysql –u root –p 能够进入Mysql数据库;⏹安装TestLink:◆配置TestLink为IIS的默认服务:●右键我的电脑→管理→Internet信息服务管理器→右键属性默认站点→主目录页签,将本地路径执行TestLink所在目录;●同时右键点击TestLink目录→共享和安全→Web共享页签,选择共享文件夹;●开始安装TestLink:⏹打开浏览器,在地址栏输入:http://ip/testlink/install/index.php,回车即可打开安装页面:⏹选择New installation,进入一个全新的安装界面:⏹点击Process TestLink Setup按钮即开始自动安装,在左边把选项勾选上,右边的Proceed才可以操作:⏹安装成功后,出现安装成功的画面:●配置TestLink:⏹建议安装完成后,及时将TestLink目录下面的Install文件夹删除;⏹首次登录时页面会有提示,如图:到TestLink目录下的Config.inc.php中将$tlCfg->config_check_warning_mode修改为”SILENT”即可;⏹配置SMTP:◆到Config.inc.php中配置SMTP,根据实际配置:●$g_smtp_host = 'mail.intra. com';●$g_tl_admin_email = 'Testlink@intra. com';●$g_from_email = 'Testlink@intra. com';●$g_return_path_email = 'Testlink@';●$g_mail_priority = 5;●define ("SMTP_SEND",2);$g_phpMailer_method = SMTP_SEND;●$g_smtp_username = ''; # user●$g_smtp_password = ''; # password⏹配置LDAP:◆到Config.inc.php中配置LDAP,根据实际配置:●$tlCfg->authentication['method'] = 'LDAP';●$tlCfg->authentication['ldap_server'] = '*.*.*.*';●$tlCfg->authentication['ldap_port'] = '389';●$tlCfg->authentication['ldap_version'] = '3'; // could be '2' in some cases●$tlCfg->authentication['ldap_root_dn'] = 'OU=****,DC=****;DC=****;DC=****';●$tlCfg->authentication['ldap_organization'] = ''; // e.g. '(organizationname=*Traffic)'●$tlCfg->authentication['ldap_uid_field'] = 'sAMAccountName'; // Use 'sAMAccountName' for Active Directory●$tlCfg->authentication['ldap_bind_dn'] = 'CN=****;CN=****;DC=****,DC=****,DC=****'; // Left empty for anonymous LDAPbinding●$tlCfg->authentication['ldap_bind_passwd'] = '*******'; // Left empty for anonymous LDAP binding●使用TestLink:⏹IIS中配置:◆右键我的电脑→管理→Internet信息服务管理器→右键属性默认站点→文档页签,添加index.php,并上移到最上;◆右键我的电脑→管理→Internet信息服务管理器→右键属性默认站点→目录安全性页签,点击编辑按钮,编辑如下:●允许匿名访问;●去掉用户访问需要身份认证;●●同时配置匿名访问时给予合理的用户权限;◆使用LDAP认证,需要本地数据库中有相应的用户名,通过首页添加后去掉New User链接:●Config.inc.php中配置$tlCfg->user_self_signup = False;数据转移过程中的问题汇总:您好:再次验证了几次,通过备份数据库目录的方式(未经官方认证办法)无法拷贝数据到异地testlink;So,还是使用官方的办法:●Mysqldump.exe – -- user=root – -- password=nsf0cus. –opt testlink > testlink_back.sql →在数据源mysql(10.255.250.253)●将获得的testlink_back.sql拷贝到目的主机(192.168.11.253)●Mysqladmin – -- user=root – --password=nsf0cus. Create testlinkMysql -- --user=root -- --password=nsf0cus. Testlink < testlink_back.sql备份恢复过程中发生两个问题并解决办法如下:●恢复数据库(Mysql -- --user=root -- --password=nsf0cus. Testlink < testlink_back.sql)时提示: Error 121⏹→解决办法:在mysql中连续执行:DROP DATABASE IF EXISTS testlink;CREATE DATABASE testlink;//再重复执行一次DROP DATABASE IF EXISTS testlink;CREATE DATABASE testlink;⏹参考链接:/f?kz=111846361●数据备份完成后Firefox访问Testlink提示:PHP has encountered an Access Violation ××××⏹→解决办法:把mysql安装目录下面的libmysql.dll分别覆盖到php安装目录和%win%\system32下面,再重启MYSQL和IIS⏹参考链接:/user1/kevin/archives/2008/1089.html。
Recky 19968541@qq.com Liferay 5.2.3 开发环境搭建 Recky 2010.07.22
1. 关于Liferay Liferay 是一个完整的门户解决方案,基于J2EE的应用,使用了EJB以及JMS等技术,前台界面部分使用Struts MVC 框架,基于XML的portlet配置文件可以自由地动态扩展,使用了Web服务来支持一些远程信息的获取,使用 Lucene实现全文检索功能。
(Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供。Lucene提供了一个简单强大的应用程式接口,能够做全文索引和搜寻,在Java开发环境里Lucene是一个成熟的免费开放源代码工具;就其本身而论,Lucene是现在并且是这几年,最受欢迎的免费java资讯检索程式库。人们经常提到资讯检索程式库,就像是搜寻引擎,但是不应该将资讯检索程式库与网搜索引擎相混淆。)
主要特点如下: 1、提供单一登陆接口,多认证模式(LDAP或SQL); 2、管理员能通过用户界面轻松管理用户,组,角色; 3、用户可以根据需要定制个性化的门户布局; 4、能够在主流的J2EE应用服务器上运行; 5、支持主流的数据库; 6、使用了第三方的开源项目,如Hibernate, Lucene, Struts; 7、支持包括中文在内的多种语言; 8、采用最先进的技术 Java, EJB, JMS, SOAP, XML; 9、提供扩展模式下开发; 10、提供插件模式下开发; 11、多数据库支持;
这里我们就是利用Liferay源码通过Ant发布Liferay扩展包进行Portal项目Recky 19968541@qq.com
的发布和开发工作。 2. 准备工作
2.1 下载Liferay 5.2.3 Liferay源码包liferay-portal-src-5.2.3.zip Oracle数据文件liferay-portal-sql-oracle-10-5.2.3.dmp (下载地址:http://sourceforge.net/project/showfiles.php?group_id=49260)
2.2 开发工具 JDK 1.6 以上; Ant 1.7 以上; Tomcat 6.0 以上; Myeclipse 5.1以上;
3. 环境配置 3.1 JDK配置 (1)JAVA_HOME:JDK的安装目录 (2)PATH:把%JAVA_HOME%\bin目录加到path变量 (检查JDK是否安装正确,通过“JAVA –version”命令来判断。同样下边的ant也是同样的方式进行检查“ANT -version”)
3.2 ANT配置 (1)ANT_HOME:ANT的安装目录 (2)PATH:把%ANT_HOME%\bin目录加到path变量 Recky 19968541@qq.com
3.3 Myeclipse配置 (1)设置Myeclipse的JDK Myeclipse的JDK采用上面安装过的JDK1.6
(2)设置字符编码 字符编码统一采用UTF-8 (3)Tomcat Server 选择6.X,目录为Tomcat的目录,JDK采用上面安装过的JDK1.6, 在后面的“部署ext扩展工程”会详细说明。
4. 部署Liferay源码 4.1建立目录结构 新建一个工作空间目录Liferay,然后在Liferay目录中新建两个目录;一个是service目录,并将Tomcat复制进去;再新建一个portal目录,将liferay-portal-src-5.2.3.zip压缩包中的源码文件解压到该目录。我的工作空间是D:\program\Liferay。 如图所示目录结构: Recky 19968541@qq.com
4.2 导入Liferay源码 (1) 切换工作空间 启动Myeclipse,切换到刚才新建的Liferay工作空间中去。 操作方法:选择菜单File → Switch Workspace → Other,选择Liferay目录,点击确认完成操作。
(2) Import源码 选择菜单: File →Import; 在弹出窗口中,选中“Existing Projects into Workspace” Recky 19968541@qq.com
点击“NEXT”,进入到源码文件目录选择窗口。在“Select root directory”中选择前边新建好的存放Liferay源文件目录portal。 Recky 19968541@qq.com
点击“Finish”,进行导入工作,等待Myeclipse加载和编译完工作空间之后,出现以下目录结构: Recky 19968541@qq.com 4.3 修改配置文件
4.3.1 新增release.${username}.properties扩展环境配置文件 进入D:\program\Liferay\portal目录,你会看到release.properties配置文件。 按照Liferay官方的说法,该文件不能修改,但需要在同目录下创建一个release.${username}.properties文件,它是release.properties的扩展文件,release.${username}.properties中的属性配置会覆盖release.properties中的属性。
${username}是计算机登录的用户名,官方配置文档提供一个查看用户名的方法:cmd输入set。
如图中标记所示,我的计算机用户名为recky,那么我们就要创建release.recky.properties文件,然后添加如下内容: ##lp.eclipse.dir tells Liferay where you installed Eclipse. ##lp.ext.dir tells Liferay where to create the EXT environment.
## Extension Environment ## lp.ext.dir=D:/program/Liferay/ext ## ## Eclipse ## ##lp.eclipse.dir= lp.eclipse.project.name=ext ## Recky 19968541@qq.com
## AntInstaller ## ant.installer.dir=D:/apache-ant-1.8.0
说明:lp.ext.dir指向为扩展环境目录,这个目录设定好了之后,通过ant自动生成一系列扩展文件。 lp.eclipse.dir为eclipse安装目录,这里可以缺省。 lp.eclipse.project.name扩展项目名称,这个好像可以缺省。 ant.installer.dir为ANT安装目录。
4.3.2 新增app.server. ${username}.properties服务器配置文件 在D:\program\Liferay\portal目录,你会看到app.server.properties配置文件。这个是自定义服务器配置脚本文件。这里我们要在同目录创建app.server. ${username}.properties文件,用你的计算机登录用户名替换${username}。
新建文件app.server.recky.properties,并添加以下内容:
app.server.type=tomcat app.server.tomcat.dir=D:/program/Liferay/service/apache-tomcat-6.0.24
##app.server.type tells Liferay which server it will deploy to ##app.server.tomcat.dir tells Liferay the location of Tomcat
说明:app.server.type指定服务器类型
app.server.tomcat.dir指定Tomcat安装目录
4.3.3 修改build.xml文件 修改下面的操作 找到 添加一个如下:
在Liferay官方文档中是没有此操作的,那为什么这样做呢?在官方文档中是这样说明的:新增release.${username}.properties文件之后,通过ant命令创建扩展环境。下一步才是创建app.server. ${username}.properties文件(它在前边指定的扩展文件夹根目录)。原build.xml文件执行时是不拷贝你新建的app.server. Recky 19968541@qq.com
${username}.properties文件到扩展环境的,所以这里我们要加上这段代码。这样,执行build文件创建扩展文件的同时也将对应的自定义服务器配置文件copy到扩展环境中。
4.4 编译生成Ext扩展工程
4.4.1 打开ant视图 选择菜单window → show view → Other
弹出选择框,选中ant,点击OK打开ant视图