好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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

[sql] view plaincopy Jetspeed2版本2.2.2 数据库MYSQL 文件:pages/* 首先,不得不说,jetspeed2 的文件转数据库挺折磨人的,在网上收集的各种资料,均告失败: http://HdhCmsTest360doc测试数据/content/10/0310/20/972665_18281206.shtml http://HdhCmsTest360doc测试数据/con

[sql] view plaincopy

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


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

http://HdhCmsTest360doc测试数据/content/10/0310/20/972665_18281206.shtml

http://HdhCmsTest360doc测试数据/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的安装文件

[python] view plaincopy

java -jar E:\jetspeed2. 2.2 \jetspeed-installer- 2.2 . 2.jar

5,选择 Import Jetspeed Portal database


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



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



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



9,选择数据库类型



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



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



12,日志分析

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

[plain] view plaincopy

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,插入权限,规则等

[plain] view plaincopy

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下面的数据

[plain] view plaincopy

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,导入成功

[plain] view plaincopy

[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),建议改长些。

[sql] view plaincopy

"white-space:pre" > 338px,808px; float : left ;margin- top :5px;,20px

查看更多关于Jetspeed2将文件数据初始化到数据库的实现方法的详细内容...

  阅读:41次