Jetspeed2 将文件数据初始化到数据库的实现方法

	Jetspeed2 版本 2.2.2
	数据库 MYSQL
	文件:pages/*

首先,不得不说,jetspeed2的文件转数据库挺折磨人的,在网上收集的各种资料,均告失败:

http://www.360doc.com/content/10/0310/20/972665_18281206.shtml

http://www.360doc.com/content/08/0128/11/27906_1010273.shtml

http://portals.apache.org/jetspeed-1/psml_db.html

在Jetspeed2.2.2中,已经取代了DatabasePsmlManagerService,改为PageSerializerImpl;而且,在jetspeed2.2.2中,采用admin的方式登录,并在网站管理中,import是无效的,会报出Index Unique错误。

现在,介绍将pages下面的所有文件导入到数据库(初始化)的实现方法

1,所有在导入过程中不允许出现中文字样(文件目录,*psml文件内容,link等)

2,建立文件夹Jetspeed-Data-Files

3,文件夹中包含两部分内容,j2-data.xml,pages文件夹

j2-data.xml文件通过jetspeed2.2.2安装文件的 export jetspeed portal database 功能获取,或者用源码包中的j2-seed.xml替代;

pages文件夹,即为使用文件存储页面数据的文件夹,效果图如下:


4,运行jetspeed2.2.2的安装文件

java -jar E:\jetspeed2.2.2\jetspeed-installer-2.2.2.jar
5,选择 Import Jetspeed Portal database


6,选择Jetspeed-Data-Files目录:

Jetspeed2 将文件数据初始化到数据库的实现方法_第1张图片


7,在数据库导入过程中,jetspeed会生成一些临时文件,包括数据库配置,jar包等等,在这里指定临时文件位置,(默认可忽略)

Jetspeed2 将文件数据初始化到数据库的实现方法_第2张图片


8,默认需要512m内存供给数据库导入功能,可以设置更大



9,选择数据库类型

Jetspeed2 将文件数据初始化到数据库的实现方法_第3张图片


10,填写数据库配置,及jdbc链接的jar包位置



11,一切准备就绪,开始导入了



12,日志分析

a,安装数据库导入时必备的功能性文件

antinstaller.jarE:\jetspeed2.2.2\jetspeed-installer-2.2.2.jar

setupInstallation:
     [echo] Starting the installation
     [echo] Deleting all content from the installation target directory
     [echo] Installing Jetspeed-2.2.2 Enterprise Portal
    [unzip] Expanding: E:\jetspeed2.2.2\jetspeed-installer-2.2.2.jar into C:\Users\DB~1\AppData\Local\Temp\Jetspeed-2.2.2
    [unzip] Expanding: C:\Users\DBLIUE~1\AppData\Local\Temp\Jetspeed-2.2.2\database.zip into C:\Users\DB~1\AppData\Local\Temp\Jetspeed-2.2.2
    [unzip] Expanding: C:\Users\DB~1\AppData\Local\Temp\Jetspeed-2.2.2\tomcat-portal.zip into C:\Users\DB~1\AppData\Local\Temp\Jetspeed-2.2.2
     [echo] Setting up the database configuration
     [copy] Copying 1 file to C:\Users\DB~1\AppData\Local\Temp\Jetspeed-2.2.2\lib
     [move] Moving 1 file to C:\Users\DB~1\AppData\Local\Temp\Jetspeed-2.2.2\database
b,读取j2-data.xml,插入权限,规则等

importPortalDB:
     [echo] Import all data into Jetspeed database

checkDerby:

importDB:

importData:
     [echo] Import Jetspeed database from C:\Apache\Jetspeed-Data-Files/j2-data.xml
     [java] creating clients, mediatypes and mimetypes
     [java] creating principals and permissions
     [java] creating permissions
     [java] creating profiling rules and user profiling rules
     [java] creating entities
     [java] creating SSO sites, principals, and security domains

c,开始导入pages下面的数据

importPrefs:

importPages:
     [echo] Import Jetspeed database pages from C:\Apache\Jetspeed-Data-Files/pages directory
     [java] Starting complete import of folder: / (overwriting folders: true, pages: true)
     [java] overwriting folder /
     [java] processing new page /css-demo.psml
     [java] processing new page /default-page.psml
     [java] processing new page /jetspeed.psml
     [java] processing new page /minimal-default-page.psml
     [java] processing new page /my-account.psml
     [java] processing new page /p002.psml	
	... ...

d,导入成功

[java] Import finished: processed 80 folder(s), 120 page(s), 24 link(s).
     [echo] Import Jetspeed database complete!
     [echo] Deleting temporary installation target directory
   [delete] Deleting directory C:\Users\DBLIUE~1\AppData\Local\Temp\Jetspeed-2.2.2


importdb:


BUILD SUCCESSFUL
Total time: 2 minutes 40 seconds
    13,注意事项:

1:文件和文件夹的内容中尽量不好包含中文,进入数据库很可能是乱码,尤其在windows系统中

2:在导入过程中,可能会出现错误,尽量找到错误原因重新导入即可,jetspeed2.2.2再导入时会首先删除数据库中的数据确保数据一致性

    14,数据库字段修改

在插入时,遇到字段过长数值越界报错,内容如下,出现在fragment表,LAYOUT_SIZES字段,原字段长度 varchar (20),建议改长些。

	338px,808px;float:left;margin-top:5px;,20px

你可能感兴趣的:(import,Export,Jetspeed,pages,文件导入数据库)