RPM 12 安装日志
/*********************************************************************
====== Hand Co,ltd =========
====== Copy Right 2008-2009 Reserved ===
====== RPM 安装日志 =========
–Created by : yunfang.shang@hand-china.com
–Creation Date : 2008-9-19
–Version : 1.0
====== Update History =========
–2008-9-19 version 1.0 created
—
**********************************************************************/
1\ 安装Oracle Application Server
1.1 安装 Oracle application Server 10.1.3.1.0 (soa_linux_x86_101310_disk1.cpio)
在安装RSM的时候,我们已经application Server 安装好,并把patch打到了10.1.3.4.0. 所以这里不需要做什么了.
2\ 安装RPM 数据库
RPM的表在安装RMS和RSM的时候已经安装完毕,这里不需要额外安装.
3\ 安装RPM Application
我看了RPM 12.0.1-12.0.7 的所有patch版本内容. 采用的是覆盖方式,不需要逐个打,可直接安装12.0.7
按照rpm-1207-ig.pdf 进行
3.1 Create a New OC4J Instance for RPM
su oracle
ORACLE_HOME=/d01/app/oracleas10gr3
export ORACLE_HOME
$ORACLE_HOME/bin/createinstance -instancename rpm -groupname rpm_group
#password: hello1
#成功创建
$ORACLE_HOME/opmn/bin/opmnctl @cluster startproc ias-component=rpm_group
$ORACLE_HOME/opmn/bin/opmnctl status -l
#显示已经成功启动
#Configure Apache for JNLP Files (在安装RSM的时候已经完成,可以跳过)
cd $ORACLE_HOME/Apache/Apache/conf
vi mimi.types
#添加 application/x-java-jnlp-file jnlp
#重启Apach
$ORACLE_HOME/opmn/bin/opmnctl restartproc process-type=HTTP_Server
#Configure Apache for JNLP Files 结束
3.2 准备安装文件
#准备安装文件
su root
chmod -R 777 /d01/app/retail
su oracle
cd /d01/app/retail
mkdir rpm
cd rpm
mkdir appserverunix
mkdir 12.0.7
INSTALL_DIR=/d01/app/retail
export INSTALL_DIR
#上传 hibernate2.jar 到 $INSTALL_DIR/rpm/
#上传 p6909057_1200_GENERIC.zip 到 $INSTALL_DIR/rpm/12.0.7
cd $INSTALL_DIR/rpm/12.0.7
unzip p6909057_1200_GENERIC.zip
unzip rpm_1207_install.zip
cp -f $INSTALL_DIR/rpm/12.0.7/appserverunix/rpm12application.zip $INSTALL_DIR/rpm/appserverunix/
cd $INSTALL_DIR/rpm/appserverunix/
unzip rpm12application.zip
cp $INSTALL_DIR/rpm/hibernate2.jar $INSTALL_DIR/rpm/appserverunix/rpm/application/hibernate/
3.3 安装RPM应用
#Run the RPM Application Installer
#切换到VNC界面,打开一个终端
#备注如果设置JAVA_HOME=/d01/app/oracleas10gr3/jdk,则版本是1.5. 安装过程选择1.4.2可以顺利通过,所以没有设置为1.5
xhost +
ORACLE_HOME=/d01/app/oracleas10gr3
export ORACLE_HOME
NLS_LANG=AMERICAN_AMERICA.UTF8
export NLS_LANG
PATH=$ORACLE_HOME/bin:$ORACLE_HOME/opmn/bin:$ORACLE_HOME/dcm/bin:$INSTALL_DIR/rms/oracle/lib/src:$PATH
export PATH
JAVA_HOME=/d01/app/oracleas10gr3/jre/1.4.2
export JAVA_HOME
INSTALL_DIR=/d01/app/retail
export INSTALL_DIR
cd $INSTALL_DIR/rpm/appserverunix/rpm/application
su oracle
#确认数据库和listener已经启动
./install.sh
#Data Source Detail :
RMS12 jdbc url:jdbc:oracle:thin@syfr12:1521:RETL
schema/schemapassword: rsm12dev/rsm12dev owner:rsm12dev
#JMS provider : 默认
#Manue deploy option : Yes
#Clinet File on Http server:Yes
#Clinet Destnation : 默认值
#Oc4j Server type: managed
#opmn request port:2002
#application deployment details :RPM 12 oc4j instance:rpm ,其他默认
#oracle other retail application: RSM 12 oc4j instance:rsm,其他默认
#oracle other retail application(Oracle as enterprise):
RSM 12 oc4j instance : rsm
RSM 12 deployment name :rsm12
RIB for rpm12 oc4j instance name : ribrpm
RIB for rpm12 deployment name : ribrpm
#oc4j administrator user/password:oc4jadmin/hello1
#Oracle retail application urls: 默认值
#Install progerss: Install
#安装成功,没有错误.
3.4 Post Install
#对客户端jar签名
JAVA_HOME=/d01/app/oracleas10gr3/jdk
export JAVA_HOME
cd $JAVA_HOME/bin
$JAVA_HOME/bin/keytool -genkey -alias foo
find $ORACLE_HOME -name rpm_client_config.jar
cd /d01/app/oracleas10gr3/Apache/Apache/htdocs/rpm/lib/
$JAVA_HOME/bin/jarsigner rpm_client_config.jar foo
#添加用户
使用RSM的用户。
#生辰JMS绑定 Re-Generating JMS Bindings with BindEGateJMSQueue.jar
ORACLE_HOME=/d01/app/oracleas10gr3
JAVA_HOME=/d01/app/oracleas10gr3/jdk
export ORACLE_HOME JAVA_HOME
cp -R /d01/app/retail/rpm/appserverunix/rpm/application/rpm12/sbynjndi $ORACLE_HOME/j2ee/rpm/
cd $ORACLE_HOME/j2ee/rpm/sbynjndi
#Usage: BindEGateJMSQueue -q <jms queue> -h <jms host> -p <jms port> -d <output directory>
$JAVA_HOME/bin/java –jar BindEGateJMSQueue.jar –q rpmTaskQueue –h syfr12 –p 13601 –d $ORACLE_HOME/j2ee/rpm/sbynjndi
$JAVA_HOME/bin/java BindEGateJMSQueue.jar –q rpmTaskQueue –h syfr12 –p 13601 –d $ORACLE_HOME/j2ee/rpm/sbynjndi
#测试:
http://syfr12:2000/rpm/rpm.jnlp
输入用户名:admin.rsm 密码:rsm12dev
可以正常进入
#RPM在公网开发需要开放哪些端口?
答:需要开放3个端口
针对每个As instance 开放:
1)AS httpd 端口
2)AS opmn request 端口
针对每个OC4J instance 开放:
1) OC4J RMI 端口
#ftp服务在公网开放需要怎么做?
答:
1)更改vstpd配置文件 vi /etc/vsftpd/vsftpd.conf
uncomment and modify: chroot_list_enable=NO
uncomment and modify: chroot_list_file=/etc/vsftpd.chroot_list
在最后添加一句:pasv_promiscuous=YES
2) 编辑 /etc/vsftpd.chroot_list
添加一行
hand
3) 在linux 服务器上启用 vstpd服务
4) 在ADSL路由器中开放 21 和 20两个端口
备注:pasv_promiscuous=YES 是解决ftp登陆有不能进行数据传输的问题。
chroot_list_enable=NO 是为了限制登陆用户的权限,不允许其切换到根目录
FAQ
一、 选择 RPM->连接代码->创建连接代码
报错:发生致命错误。
原因:RetekNetworkException
解决:
NOTE:563794.1 说打到12.0.8就可以了
INSTALL_DIR=/d01/app/retail
export INSTALL_DIR
cd $INSTALL_DIR/rpm/12.0.8
unzip p6909057_1200_GENERIC.zip
unzip rpm_12.0.8_install.zip
rm -fr $INSTALL_DIR/rpm/appserverunix/*
cp -f $INSTALL_DIR/rpm/12.0.8/appserverunix/rpm12application.zip $INSTALL_DIR/rpm/appserverunix/
cd $INSTALL_DIR/rpm/appserverunix/
unzip rpm12application.zip
cp $INSTALL_DIR/rpm/hibernate2.jar $INSTALL_DIR/rpm/appserverunix/rpm/application/hibernate/
在回到3.3 按步骤安装
3.4 签名
结果,错误依旧,Metalink NOTE:417782.1 描述现象与此一样,loc_type设置错误,但solution讲得不明白
NOTE:430791.1 描述的是另一种错误,这种错误也存在。
错误的主要原因在于数据不一致。已经在RMS中删除的区域没有在RPM表中删除。
目前我们在RPM中遇到的致命错误有:
1)RPM->连接代码->创建连接代码
2)RPM->购物栏代码->创建购物栏代码
3)RPM->区域结构->创建区域组
Metalink NosteThis is caused by departments deleted from Retail Merchandising System (RMS) were not deleted from Retail Price Management (RPM) tables.
SELECT * FROM RPM_PRICE_GUIDE_DEPT WHERE dept NOT IN (SELECT dept FROM deps)
SELECT * FROM RPM_MERCH_RETAIL_DEF WHERE dept NOT IN (SELECT dept FROM deps)
SELECT * FROM RPM_DEPT_AGGREGATION WHERE dept NOT IN (SELECT dept FROM deps)
–记录数=0 ;说明这种情况不存在
4)RPM->促销->创建促销
5)RPM->促销界限->创建促销界限
6)RPM->价格查询->检索货品价格
部分错误显示如下:
at com.retek.rpm.app.zonestructure.service.ZoneGroupAppServiceImpl.getZoneGroupCreateVO
Metalink若干文章指出数据不一致的可能性有:
1 部门在RMS中删除后,没有在RPM相关表中删除,这些表包括:
1- RPM_MERCH_RETAIL_DEF
2- RPM_DEPT_AGGREGATION
3- RPM_PRICE_GUIDE_DEPT
2 In this instance the Loc_Type in the data is zero for stores and one for warehouses. The correct values should be zero for stores and two for warehouses.
上述可能性均检查了一下,不存在。
无奈之下,到出错的信息中去查询关键语句,找到:
Could not find any of the requested items
在Metalink中查询这个语句,找到一个NOTE:399971.1 描述
原因:RPM_SYSTEM_OPTIONS中没有记录,select * from RPM_SYSTEM_OPTIONS 果来没有记录
解决方法是:
操作:RPM->系统选项->系统选项编辑->保存。
测试,按照上述方法操作后,确实解决了RPM中的5处报错情况。
二、选择 促销-> 创建促销 时报错:
com.retek.platform.exception.RetekNetworkException: Server connection failed and retries were not successful .
exception id: null at …
分析,从错误中找出关键错误:Could not find any of the requested items. Item: com.retek.rpm.domain.admin.bo.SystemDefaults ,在Metalink中搜索“Item: com.retek.rpm.domain.admin.bo.SystemDefaults” 得到 NOTE:368822.1
解决:选择 系统选项-> 系统默认值编辑->保存
测试:问题已解决。
关于作者:
昵称:商云方 档案信息:顾问, HAND张江技术中心 联系方式:你可以通过yunfang.shang@hand-china.com联系作者 点击查看商云方发表过的所有文章... 本文永久链接: http://blog.retailsolution.cn/archives/38 |
对本文的评价:
./install.sh
#Data Source Detail :
RMS12 jdbc url:jdbc:oracle:thin@syfr12:1521:RETL
schema/schemapassword: rsm12dev/rsm12dev owner:rsm12dev
应该改为:
RMS12 jdbc url:jdbc:oracle:thin:@syfr12:1521:RETL
schema/schemapassword: rms12dev/rms12dev
希望大家使用时多加注意 还有全角半角的标点符号的区别,最好拷贝到word中处理后再运行
#确认数据库和listener已经启动
./install.sh
#Data Source Detail :
RMS12 jdbc url:jdbc:oracle:thin@syfr12:1521:RETL
schema/schemapassword: rsm12dev/rsm12dev owner:rsm12dev
操作文档知道打patch时候出现以下问题:
1. 打patch时候需要运行数据库和所有的应用,否则在安装步骤会出现exception而导致不能pass
2. RMS12 jdbc url:jdbc:oracle:thin@syfr12:1521:RETL应该改为jdbc:oracle:thin:@syfr12:1521:RETL thin后面应该还有一个冒号
3. schema/schemapassword: rsm12dev/rsm12dev owner:rsm12dev 中的所有rsm12dev均该为rms12dev
3.3中
“INSTALL_DIR=/d01/app/retail
export INSTALL_DIR”
应该调节到
“PATH=$ORACLE_HOME/bin:$ORACLE_HOME/opmn/bin:$ORACLE_HOME/dcm/bin:$INSTALL_DIR/rms/oracle/lib/src:$PATH”之前
因为PATH中调用了INSTALL_DIR.
3.4中
“$JAVA_HOME/bin/java –jar BindEGateJMSQueue.jar –q rpmTaskQueue –h syfr12 –p 13601 –d $ORACLE_HOME/j2ee/rpm/sbynjndi“
与
”$JAVA_HOME/bin/java BindEGateJMSQueue.jar –q rpmTaskQueue –h syfr12 –p 13601 –d $ORACLE_HOME/j2ee/rpm/sbynjndi”
只需要运行第一句即可,第二句没有实际作用
3.3 安装RPM应用中
PATH=$ORACLE_HOME/bin:$ORACLE_HOME/opmn/bin:$ORACLE_HOME/dcm/bin:$INSTALL_DIR/rms/oracle/lib/src:$PATH
export PATH
JAVA_HOME=/d01/app/oracleas10gr3/jre/1.4.2
export JAVA_HOME
INSTALL_DIR=/d01/app/retail
export INSTALL_DIR
PATH中使用了INSTALL环境变量。而环境变量定义在path 之后, 根据上下文判断INSTALL环境变量定义应该在PATH变量之前定义