RPM 13.1 Demo 安装日志

===============================================================================

九、RSL 安装

9.1 RSL Appserver 安装

9.1.1 确认ReIM 所在数据库已经启动

若未启动,设置环境变量启动之

su – root

Xhost+

su – oracle

ORACLE_BASE=/d01/app/oracle

ORACLE_HOME=/d01/app/oracle/product/11.1.0/db_1

ORACLE_SID=retl

PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH:

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

RMS_STAGEDIR=/d01/stage/retail/rms/rms

export RMS_STAGEDIR

NLS_LANG=AMERICAN_AMERICA.UTF8

export NLS_LANG

sqlplus ‘/as sysdba’

Sql> startup

8.1.2 启动OAS 10.1.3.4

ORACLE_HOME=/d01/app/oracle/product/10.1.3.1/OracleAS_2

PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH:

export export ORACLE_HOME PATH

$ORACLE_HOME/opmn/bin/opmnctl startall

进入oas控制台,http://retek13.hand-china.com:2000/em

As Instance name : retekas2

Oc4jadmin 密码: ********1

创建instance和group

$ORACLE_HOME/bin/createinstance -instanceName rsl-oc4j -groupName rsl_group

密码:********1

启动oc4j

$ORACLE_HOME/opmn/bin/opmnctl @cluster startproc ias-component=rsl_group

设置JAVA_HOME环境变量:

JAVA_HOME=$ORACLE_HOME/jdk

export JAVA_HOME

cd /d01/stage/retail/rpm/RSL1310forRMS

./rsl-installer.sh

RMS 13 JDBC URL: jdbc:oracle:oci:@retl

RMS 13 schema: RMS13DEV

oc4jAdmin密码设置为:********1

clip_image001

配置logging:

cd $ORACLE_HOME/j2ee/rsl-oc4j/config

cp j2ee-logging.xml j2ee-logging.xml.bak_bf_rsl

vi j2ee-logging.xml

在 <logging_configuration> tag后 输入::

<logging_properties>

<property name=’java.util.logging.FileHandler.formatter’ value=’java.util.logging.SimpleFormatter’/>

<property name=’java.util.logging.FileHandler.pattern’ value=’%ORACLE_HOME%/j2ee/<oc4j-instance-name>/log/rsl.log’/>

</logging_properties>

在 <log_handlers> tag 后输入:

<log_handler name=’rsl-log-handler’ class=’java.util.logging.FileHandler’>

<property name=’path’ value=’%ORACLE_HOME%/j2ee/%OPMN_PROC_TYPE%/log/%OPMN_PROC_TYPE%_%OPMN_PROC_SET%_%OPMN_PROC_INDEX%/oc4j’/>

<property name=’maxFileSize’ value=’10485760’/>

<property name=’maxLogSize’ value=’104857600’/>

<property name=’encoding’ value=’UTF-8’/>

<property name=’supplementalAttributes’ value=’J2EE_APP.name,J2EE_MODULE.name,WEBSERVICE.name,WEBSERVICE_PORT.name’/>

</log_handler>

在 <logger> tag 后输入:

<logger name=’oracle.retail’ level=’INFO’ useParentHandlers=’false’>

<handler name=’rsl-log-handler’/>

</logger>

<logger name=’com.retek’ level=’INFO’ useParentHandlers=’false’>

<handler name=’rsl-log-handler’/>

</logger>

重启动oc4j

$ORACLE_HOME/opmn/bin/opmnctl @cluster stopproc ias-component=rsl_group

$ORACLE_HOME/opmn/bin/opmnctl @cluster startproc ias-component=rsl_group

改变log层次:

登录,按照ig上的操作

http://retek13.hand-china.com:2000/em

===============================================================================

十、RPM 安装

10.1 RPM DB 安装

在安装rms的时候已经完成RPM的db object的安装

10.2 RPM Appserver 安装

10.2.1 确认RPM 所在数据库已经启动

若未启动,设置环境变量启动之

su – root

Xhost+

su – oracle

ORACLE_BASE=/d01/app/oracle

ORACLE_HOME=/d01/app/oracle/product/11.1.0/db_1

ORACLE_SID=retl

PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH:

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

RMS_STAGEDIR=/d01/stage/retail/rms/rms

export RMS_STAGEDIR

NLS_LANG=AMERICAN_AMERICA.UTF8

export NLS_LANG

sqlplus ‘/as sysdba’

Sql> startup

10.2.2 启动OAS 10.1.3.4

ORACLE_HOME=/d01/app/oracle/product/10.1.3.1/OracleAS_2

PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH:

export export ORACLE_HOME PATH

$ORACLE_HOME/opmn/bin/opmnctl startall

进入oas控制台,http://retek13.hand-china.com:2000/em

As Instance name : retekas2

Oc4jadmin 密码: ********1

创建instance和group

$ORACLE_HOME/bin/createinstance -instanceName rpm_oc4j -groupName rpm_group

密码设置为:********1

启动oc4j:

$ORACLE_HOME/opmn/bin/opmnctl @cluster startproc ias-component=rpm_group

配置Apache 支持JNLP:

cp $ORACLE_HOME/Apache/Apache/conf/mime.types $ORACLE_HOME/Apache/Apache/conf/mime.types.bak_bf_rpm

vi $ORACLE_HOME/Apache/Apache/conf/mime.types

添加:

application/x-java-jnlp-file jnlp

重启 httpServer:

$ORACLE_HOME/opmn/bin/opmnctl restartproc process-type=HTTP_Server

下载 hibernate2.jar version 2.1.8,存放于:$INSTALL_DIR/rpm/application/hibernate(/d01/stage/retail/rpm/rpm/application/hibernate)

http://www.hibernate.org

设置JAVA_HOME环境变量:

JAVA_HOME=$ORACLE_HOME/jdk

export JAVA_HOME

cd /d01/stage/retail/rpm/rpm/application

./install.sh

RPM/RMS 13 JDBC URL: jdbc:oracle:oci:@retl

RPM/RMS 13 schema: RMS13DEV

RMS 13 schema owner: RMS13DEV

Loging Module 选择 xml , 在rpm的部署目录下编辑user_rpm.xml来添加用户。

clip_image002

给客户端配置jar签名:

$JAVA_HOME/bin/keytool -genkey -alias foo

[oracle@retek13 application]$ $JAVA_HOME/bin/keytool -genkey -alias foo

Enter keystore password: ********

What is your first and last name?

[Unknown]: jack

What is the name of your organizational unit?

[Unknown]: hand

What is the name of your organization?

[Unknown]: hand

What is the name of your City or Locality?

[Unknown]: shanghai

What is the name of your State or Province?

[Unknown]: shanghai

What is the two-letter country code for this unit?

[Unknown]: cn

Is CN=jack, OU=hand, O=hand, L=shanghai, ST=shanghai, C=cn correct?

[no]: yes

Enter key password for <foo>

(RETURN if same as keystore password):

[oracle@retek13 application]$

cd $ORACLE_HOME/j2ee/rpm_oc4j/applications/rpm13/JnlpLaunchServlet/lib

$JAVA_HOME/bin/jarsigner rpm_client_config.jar foo

安装测试:

http://retek13.hand-china.com:2000/rpm-client/launch?template=rpm_jnlp_template.vm

clip_image003

用户参见:/d01/app/oracle/product/10.1.3.1/OracleAS_2/j2ee/rpm_oc4j/applications/rpm13/conf/retek/user_rsm.xml

登录后任务是空的,select * from rpm_task 也是空的,难道rpm初始化数据未执行?

查:file:///d01/stage/retail/rms/rms/dbschema/build.xml 中有一章是insert rpm data的:经检查这些脚本insert的数据都存在,证明这些脚本是被正确执行的。

select * from rsm_user_role

select * from rsm_role

显示只有 Alain.Frecon 被赋予管理员角色,无其他用户被分配角色。

所以用:Alain.Frecon登录

clip_image004

有内容,正常:

clip_image005

Retail系统验证&问题&解决

 Retail R12系统安装后验证

NOTE:427812.1 用于安装成功与否的验证

请按照Testcase 验证系统的可用性, TestCase下载:
oracle_retail_merchandising_installation_test_cases_

 如果大家在流程测试过程中遇到问题可直接回复本贴,大家一起来解决.

 

已知问题: 

测试流程:Test Name: f) RMS to RPM – Store Add 遇到如下问题:

问题1 运行batch storeadd ,在log中报错: Terminated – no threads available ; storeadd 没成功 

解决方法:
     
 Update restart_program_status
 Set program_status = ‘ready for start’
 Where program_name = ‘storeadd’

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

      解决:选择 系统选项-> 系统默认值编辑->保存

      测试:问题已解决。