论坛首页 入门技术论坛

Eclipse+DB2下Liferay 4.2.2扩展开发环境的建立

浏览 3451 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-09-04  
<o:p>

Author:Helo
Email:porbilo@gmail.com
最近在一直看Portal的一些东西,以后会逐渐把一些相关的东西写上来,也算一个总结吧。


一、环境:
JDK: JDK 1.4
Liferay: Liferay-portal-tomca-4.2.2.zip
Liferay Src: liferay-portal-src-4.2.2.zip
OS: Windows xp
Tomcat: Tomcat-5.5.X (bundle with liferay JKD 1.4)
Database:DB2 8.2
Jikes: Jikes-1.22
Ant: Apace-ant-1.65


       在系统环境变量里面新建JAVA_HOME、JIKES_HOME、ANT_HOME,在PATH环境变量里面添加%JAVA_HOME%\bin;%JIKES_HOME%\bin;%ANT_HOME%\bin。这里的ANT_HOME和PATH也可以不用设置,使用eclipse中自带的就好,这里就顺便设置下。另:这里使用的是JDK1.4,若要使用1.5则需使用官网提供的tomcat的JDK1.5绑定版。


二、Eclipse环境下的portal工程加载 
       Liferay的源代码实际上是一个Eclipse工程文件(该项目名称叫portal)。在Eclipse工作目录(我的目录为D:\liferay_4.2,此后记为${WORKSPACE})下建立portal目录,然后把下载下来的源代码liferay-portal-src-4.2.2.zip解压缩portal目录下。 
       选择File->New->Project->Java Project,输入项目名称为“portal”,保持默认的“create new project in workspace”,选择“Finish”结束。 
       如果上一步成功,那么已经可以在左侧栏看到源代码的目录结构了;并且右键点击项目的根目录,选“Properties”,选“Java Build Path”的“Libraries”标签,应该能够看到所有需要的jar格式库文件在里面了。 
       加载了portal项目之后的Eclipse的Package Explorer栏。
       选择Windows showViewAnt在出现的Ant视图中单击Add build files,在弹出对话框中选择portal项目中根目录下build.xml文件。


三、基于Tomcat的扩展开发环境建立
修改portal下release.properties文件:

  1. lp.source.dir=D:/liferay_4.2/portal   
  2. lp.ext.dir=D:/liferay_4.2/ext   
  3. lp.eclipse.dir=D:/liferay_4.2/eclipse   
  4. lp.eclipse.project.name=ext  

       编辑在${WORKSPACE}/portal\tools\ext_tmpl\ext-ejb\classes下的portal-ext.properties文件,修改#portal.release=enterprise为portal.release=professional。
然后在最后加入下面的语句:

  1. hibernate.dialect=org.hibernate.dialect.DB2Dialect   
  2. custom.sql.function.isnull=CAST(? AS VARCHAR(32672)) IS NULL    
  3. custom.sql.function.isnotnull=CAST(? AS VARCHAR(32672)) IS NOT NULL  

liferay使用了hibernate做持久化,而liferay 4.3以前的所有版本在对DB2的支持上都有问题,所以这里需要手动配置hibernate.dialect和null的问题,否则无法启动或启动后出现莫名其妙的问题。
       回到Eclipse中的Ant视图中,双击展开根节点Portal,双击打开根目录下的build.xml,应该可以在Outline看到很多Ant任务。 
       Outline下的ANT任务: 
       顺序执行 clean, start, build-ext 。屏幕下方的命令行窗口会跳跃相关文字提示信息,如果一切正确,那么其中不应该有红色的错误信息(绝大多数此处可能出现的错误都是配置文件不正确所引起的)。特别注意的是,如果你已经正确设置了JIKES_HOME和PATH却仍然提示“需要JIKES”,则把你的PATH设置为绝对路径如:C:\jikes\bin(我曾被这个问题郁闷了N久!^0^!)。一切正常的话,那么${WORKSPACE}\ext 目录下应该生成了很多东西了。 
       解压缩下载的liferay-portal-tomcat-4.2.2.zip(可运行的Liferay)到安装目录,以后假定此解压缩目录为${TOMCAT_HOME}。在${WORKSPACE}/ext目录下创建。
app.server.${username}.properties配置文件,在其中添加如下内容:

  1. lp.ext.dir=${WORKSPACE}/ext    
  2. app.server.type=tomcat    
  3. app.server.tomcat.dir=${TOMCAT_HOME}   

仿照建立portal项目,选择File->New->Project->Java Project,输入项目名称为“ext”,保持默认的“create new project in workspace”,选择“Finish”结束。
       如果上一步成功,那么已经可以在左侧栏看到ext项目的目录结构了;并且右键点击项目的根目录,选“Properties”,选“Java Build Path”的“Libraries”标签,应该能够看到所有需要的jar格式库文件在里面了。 
 
       安装Tomcat插件支持(这里不在详述)。

       然后,在ant中点击deploy,即可完成部署。

四、配置DB2数据库支持
       创建liferay数据库lportal:
       将${WORKSPACE}\sql下的build.xml加入ant试图,启动rebuild-db2即可(当然,你应该先装好DB2)。
       修改 ${TOMCAT_HOME}\conf\Catalina\localhost下的ROOT.xml文件:

xml 代码
  1. <Context path="">  
  2.     <Resource  
  3.         name="jdbc/LiferayPool"  
  4.         auth="Container"  
  5.         type="javax.sql.DataSource"  
  6.         driverClassName="COM.ibm.db2.jdbc.app.DB2Driver"  
  7.         url="jdbc:db2:lportal"  
  8.         username=""  
  9.         password=""  
  10.         maxActive="100"  
  11.         maxIdle="30"  
  12.         maxWait="10000"  
  13.     />  
  14.     <Resource  
  15.         name="mail/MailSession"  
  16.         auth="Container"  
  17.         type="javax.mail.Session"  
  18.         mail.imap.host="localhost"  
  19.         mail.pop3.host="localhost"  
  20.         mail.smtp.host="localhost"  
  21.         mail.store.protocol="imap"  
  22.         mail.transport.protocol="smtp"  
  23.     />  
  24.     <Realm    
  25.         className="org.apache.catalina.realm.JAASRealm"  
  26.         appName="PortalRealm"  
  27.         userClassNames="com.liferay.portal.security.jaas.PortalPrincipal"  
  28.         roleClassNames="com.liferay.portal.security.jaas.PortalRole"  
  29.         debug="99"  
  30.         useContextClassLoader="false"  
  31.     />  
  32. Context>  

       然后将db2java.jar拷贝到 ${TOMCAT_HOME}\common\lib\ext下面即可。
       至此,扩展开发环境搭建完成!

PS:
 附件是本文的word文档,插入了一些图片可供参考。

 </o:p>
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics