extWord文档下载推荐.docx
《extWord文档下载推荐.docx》由会员分享,可在线阅读,更多相关《extWord文档下载推荐.docx(10页珍藏版)》请在冰豆网上搜索。
3.1.1通过IDE创建
选择Eclipse菜单栏上
第一个菜单,创建LiferayProject或直接新建LiferayPorject就会出现下面的对话框,选择Ext选项(前提eclipse已经配置好了SDK路径)
创建完后生成的工程结构如下图
3.1.2在LiferaySDK目录里通过命令创建(Windows下)
找到LiferaySDK目录,在Dos窗口里输入跳转到SDK中ext目录下,例如:
输入cd/dD:
\Material\liferay\liferay-plugins-sdk-6.0.6-20110225\ext
然后输入create.batexample"
Example"
创建一个exampleExt插件项目,显示名字为Example(默认显示名字为工程名首字母应大写),项目结构和上面显示对话框一致。
在ext目录下生成一个sample-ext工程目录,生成的目录结构和上面一致
3.2目录结构意义
ext-impl/src:
主要存放portal-ext.properties、用户实现类以及当需要修改覆盖Liferay源码portal-impl.jar文件时修改的类
ext-lib/global:
主要存放类库*.jar文件,当部署Ext插件时,首先应将此目录下jar包拷贝到应用服务器里相应目录下(此目录很少用,一般采用存放到下面目录里)
ext-lib/portal:
这里主要存放用户编写代码需要用到的jar包存放位置
ext-service/src:
存放在这里类可供其它插件调用。
当Buildservice.xml生成的所有Service接口都存放在这个目录,而且这个目录将存放覆盖portal-servivce.jar的类
ext-web/docroot:
主要包含Web应用一些配置文件及JSP页面
Other:
ext-util-bridges,ext-util-java,ext-util-taglib仅仅在高级场合用到,大多数场合可以忽视这些目录。
3.3主要文件的作用
portal-ext.porperties:
被用来可以直接覆盖Liferay的任何配置文件,甚至那些不能被Hook钩子插件覆盖的,这个文件将被替代服务应用服务器的任何portal-ext.properties文件,这个文件涉及到数据连接,系统补丁等等。
portal-ext.xml:
被用来覆盖已定义的Liferayportlet,首先应从Liferay源码中的portal-constom.xml将所有的描述portlet拷贝到portal-ext.xml文件中,然后再进行相应的修改。
Liferay-portal-ext.xml:
与portal-ext.xml很类似,但是额外定义liferay元素,从liferay源码中liferay-portal.xml拷贝所有的描述portlet,然后作相应修改。
struts-config-ext.xml和tiles-defs-ext.xml:
用户创建自己的strutsaction在这里定义
3.4高级配置文件
ext-impl/src/META-INF/ext-model-hints.xml:
覆盖Liferay核心portlets使用数据模块域默认配置,这个配置文件决定怎样表单去创建或修改每个被提交的模块
ext-impl/src/META-INF/ext-spring.xml:
覆盖Liferay使用的Spring配置文件和任何它的Portlets,可以为service提供数据源
ext-impl/src/content/Language-ext_*.properties:
国际化文件
ext-impl/src/META-INF/portal-log4j-ext.xml:
可以覆盖log4j配置文件
ext-impl/src/com/liferay/portal/jcr/jackrabbit/dependencies/repository-
ext.xml:
覆盖Jackrabbit库
ext-web/docroot/WEB-INF/portlet-ext.xml:
覆盖Liferay中声明的核心Portlets,最常用的改变Portlets用户角色
ext-web/docroot/WEB-INF/liferay-portlet-ext.xml:
覆盖Liferay中声明的核心Portlets,涉及liferay-portlet-app_6_0_0.dtd所有详细选项,小心使用这个文件,由于这个文件能设置核心portlets某些值
ext-web/docroot/WEB-INF/liferay-display.xml:
这个文件将ext显示在“添加应用”里显示名称及分类名称
ext-web/docroot/WEB-INF/liferay-layout-templates-ext.xml:
这个文件指定自定义模板文件为Liferay默认提供的模板部署,通常你不需要修改它,除非一定要。
ext-web/docroot/WEB-INF/liferay-look-and-feel-ext.xml:
改变Liferay默认提供的主题properties文件,通常你不需要修改它,除非一定要
重要说明:
创建完一个Ext插件工程后,移除所有SDK默认添加但没有必要的文件,这点非常重要。
因为liferay记录了每个Ext插件部署的文件而且不允许部署两个Ext插件覆盖同一个文件去避免冲突,通过删除所有新建ext插件不是真正必要的文件将使得沿用其它Ext插件更加容易。
4Ext服务器部署
4.1SDK配置应用服务器路径
在SDK根目录下,新建一个build.{username}.properties,配置以下应用服务器相关信息,如果是直接采用eclipseIDE配置好的,eclipse会自动在SDK目录下创建此文件,则不再需要手动创建
#ManagedbyLiferayIDE(removethiscommenttopreventfutureupdates)
#ManagedbyLiferayIDE(removethiscommenttopreventfutureupdates)
#TueAug0911:
31:
37CST2011
app.server.portal.dir=D:
\\Material\\liferay\\liferay-portal-6.0.6\\tomcat-6.0.29\\webapps\\ROOT
app.server.lib.global.dir=D:
\\Material\\liferay\\liferay-portal-6.0.6\\tomcat-6.0.29\\lib\\ext
app.server.deploy.dir=D:
\\Material\\liferay\\liferay-portal-6.0.6\\tomcat-6.0.29\\webapps
app.server.type=tomcat
app.server.dir=D:
\\Material\\liferay\\liferay-portal-6.0.6\\tomcat-6.0.29
4.2通过Ant编译部署到应用服务器
在生成的ext项目里同时也生成了一个build.xml,这个文件是直接引用到SDKext目录下的build-common-ext.xml文件,所有生成的ext项目一定要放到SDK目录ext下,这点非常重要
生成的ext项目默认会有上面Ant项目构建部署操作,这里可以直接双击胡军deploy或direct-deploy可以将ext项目打包部署到应用服务器里
5Ext开发
5.1定制portal-ext.properties
5.2定制Liferay的Spring文件声明的接口的实现
新建一个类继承需要修改的接口实现类,如MyUserLocalServiceImpl继承UserLocalServiceImpl然后覆盖需要修改的实现方法的业务逻辑,同时将在META-INF目录中修改ext-spring.xml添加<
bean
id="
com.liferay.portal.service.UserLocalService"
class="
org.shine.liferay.ext.demo.MyUserLocalServiceImpl"
/>
5.3替换portal-impl的核心类
portal-impl为Liferay的核心库,可能通过ext替换portal-impl.jar中核心类
具体步骤:
1)liferay源码中拷贝需要替换的源码修改原来的名字。
如ServletResponseUtil
2)改为MyServletResponseUtil
3)用原来的类名创建一个新类,如创建一个新的ServletResponseUtil
4)定义静态方法
5)用日志记录两个类
1迁移老版本ext环境
Ext插件提供了能从Liferay5.2甚至更前面版本ext环境进行升级迁移,迁移时,值得考虑是否所有或一些能够用portlets和hooks类型。
1.1迁移操作进程
进入到doc命令窗口,切换到Sdk目录ext下输入下面的命令:
antupgrade-ext-Dext.dir=/projects/liferay/ext-Dext.name=my-ext
-Dext.display.name="
MyExt"
如下图所示
-Dext.dir:
需要迁移的ext目录
-Dext-name:
迁移后ext项目的名称字母都采用小写
-Dext-display.name:
部署后显示名字首字母大写
当BuildSUCCESSFUL后,在SDK下ext目录中会建立相应的{Dext-name}-ext文件夹
1.2将迁移的ext导入到eclipse中
选择菜单栏
第一个菜单,选择
弹出对话
浏览到迁移的ext目录,targetruntime选择当前运行环境,点击Finish即可