服务器上的class和DB上的class版本不一致

Symptoms:

打了一个Patch后,但查Diagnostics: Apps Check,发现相关的Java文件版本并没有提升


1.到App Server端检查文件系统中的文件版本
ident $JAVA_TOP/oracle/apps/inv/transaction/server/SerTrxManager.class

2.通过DB客户端执行下边语句来检查文件在数据库里的文件版本
set serverout on
begin
fnd_aolj_util.getClassVersionfromDB('oracle.apps.inv.transaction.server.SerTrxManager');
end;

然后发现第一步的AppServer中的文件版本已经升到了正确的版本,但是DB中的文件版本还是旧的。

Solution:

问题的原因是数据库中Java文件在打patch的过程中没有被Update,
解决方法1:re-loadjava
1. change dir to $JAVA_TOP/oracle/apps/inv/transaction/server/
2. loadjava -user userid/pwd@db -verbose -resolve *.class

解决方法2:Reload JAR files to database
please run adadmin, select 'Compile/Reload Applications Database Entities menu' then 'Reload JAR files to database'


你可能感兴趣的:(Class)