22)二次开发包导致新建数据中心重建引用关系失败
适用版本
EAS6.0.1、EAS7.0.1
问题描述
在包含二次开发包的EAS环境中新建数据中心,在执行到重建引用关系步骤时出错,admin.log中的详细日志如下所示:
[2011-07-19 18:44:08,219 WARN]Cannot load entity[0E808511] in index! [2011-07-19 18:44:08,220 WARN]java.lang.NullPointerException java.lang.NullPointerException at
com.kingdee.bos.dao.xml.impl.DBPKMappingLoader.getEntityPKMapping(DBPKMappingLoader.java:100) at
com.kingdee.bos.metadata.AbstractMetaDataCache.getEntityObjectPK(AbstractMetaDataCache.java:562) at
com.kingdee.bos.metadata.AbstractMetaDataCache.getEntity(AbstractMetaDataCache.java:228)
at com.kingdee.eas.util.EntityRefInfo.buildLine(EntityRefBuilder.java:594) at
com.kingdee.eas.util.EntityRefInfo.buildReference(EntityRefBuilder.java:644) at
com.kingdee.eas.util.EntityRefBuilder.buildReference(EntityRefBuilder.java:393) at
com.kingdee.eas.common.app.dao.ReferenceDAO.rebuildReference(ReferenceDAO.java:906) …
[2011-07-19 18:44:08,227 WARN]Cannot load entity[0E808511] in index! [2011-07-19 18:44:08,228
INFO]...................entity:com.kingdee.eas.util.EntityRefInfo$EntityRefKey@25df895a
[2011-07-19 18:44:08,229 INFO]...................refType:0E808511 [2011-07-19 18:44:08,229 ERROR]Cannot find entity by BOSType[0E808511]. Because cannot find BOSType[0E808511] in index!
com.kingdee.bos.metadata.MetaDataNotFoundException: Cannot find entity by BOSType[0E808511]. Because cannot find BOSType[0E808511] in index!
问题解答
因找不到BOSType=0E808511的元数据导致执行重建引用关系时失败。经分析,在标准产品中无此元数据类型定义。应为二次开发中的元数据定义不规范导致。解决办法:
方法一:临时将有二次开发包撤销后再新建数据中心,新建完成后重新部署二次开发包;
方法二:联系二次开发人员修正二次开发包中定义有问题的元数据定义,然后再新建数据中心。
关键字
管理控制台 数据中心 重建引用关系
23)EAS启动时报很多银企相关的文件找不到
适用版本
EAS6.0.1、EAS7.0.1
问题描述
EAS在启动时,日志中输出很多银企相关的文件找不到,请帮忙分析是否会对EAS使用有影响。日志信息如下所示:
2011-07-28 23:25:19 ERROR [con.err] log4j:ERROR setFile(null,true) call failed. 2011-07-28 23:25:19 ERROR [con.err] java.io.FileNotFoundException:
/opt/kingdee/eas/server/profiles/server1/logs/ebgateway/BOC (No such file or directory)
2011-07-28 23:25:19 ERROR [con.err] at
java.io.FileOutputStream.openAppend(Native Method) 2011-07-28 23:25:19 ERROR [con.err] at
java.io.FileOutputStream.
问题解答
标准EAS中已经没有银企相关的监听,但是由于创建实际时使用的log4j配置文件中没有注释掉相应的匹配项,导致每次启动时都会去根据log4j配置文件中配置项进行文件查找,一旦查找失败则抛出异常。如何客户现场没有使用到银企模块,可以使用下面的方法注释掉:
步骤 1 .修改实例下的log4j.properties文件
($EAS_HOME\\server\\profiles\\server*\\config\\log4j.properties),将有关EGBGateway的内容注释掉
步骤 2 修改实例下的listenerconfig.data文件
($EAS_HOME\\server\\profiles\\server*\\config\\listenerconfig.data),将有关EGBGateway的内容注释掉
关键字
EAS启动 银企
24)EAS升级后License如何申请
适用版本
通用
问题描述
EAS版本升级后后,License是否需要重新申请?
问题解答
EAS License:
大版本(第一位数字不同)的升级都需要重新申请,如从6.0升级到7.0.1,5.4升级到7.0.1;
小版本(第一位数字相同)的升级,不需要更换License,如从7.0.1升级到7.0.3。 Apusic license:
从EAS5.4开始,apusic的版本都是5.0。只要授权的服务器IP地址没有变化,不需要更换License。
关键字
EAS 升级 License
25)EAS集成了OA之后,新建数据中心出错,提示同步权限项失败
适用版本
EAS6.0、EAS7.0.x
问题描述
EAS集成了OA之后,新建数据中心出错,提示同步权限项出错(未集成OA之前新建数据中心正常),如下所示:
错误原因: 权限项设置错误!
com.kingdee.util.ConfigurationException: config file
/root/kingdee/eas/server/profiles/oa/config/bosconfig.xml not exists.
问题解答
权限项模块问题,未考虑与OA的集成,同步权限项时没有排除OA目录。 临时解决方案:
1. 将OA目录剪切到其它目录(非eas\\server\\profiles目录下); 2. 新建数据中心;
3. 新建完成后,重新将OA目录剪切到eas\\server\\profiles目录下。 最终解决方案:需要权限模块出补丁解决,自动屏蔽掉OA目录。
关键字
EAS OA数据中心 新建
26)EAS差旅费报销单提交时在提交节点工作流不往下走,日志提示StackOverflowError
适用版本
EAS7.0.x
问题描述
差旅费报销单提交时在提交节点工作流不往下走,对应的apusic日志如下所示:
Caused by: com.kingdee.bos.BOSException :
Server Component wrap a Throwable. Exception Type is [javax.transaction.TransactionRolledbackException] Caused exception message is: EJB Exception: :
java.lang.reflect.UndeclaredThrowableException: TxEJB wrap a Not_BaseException while Reflect Invoke ControllerBean. at
com.kingdee.bos.transaction.EJBTxFacade.TxInvokerBean.invoke(TxInvokerBean.java:152) at
com.kingdee.bos.transaction.EJBTxFacade.TxInvokerBean.INVOKE_SUPPORTS(TxInvokerBean.java:61) at
com.kingdee.bos.transaction.EJBTxFacade.Tx_Broker_EJB_za7tck_EOImpl.INVOKE_SUPPORTS(Tx_Broker_EJB_za7tck_EOImpl.java:66) ...
at com.kingdee.bos.util.ThreadPool$Worker.run(ThreadPool.java:164) Caused by: java.lang.StackOverflowError
问题解答
程序递归层级过多,默认ThreadStackSize过小导致,可以增加自定义JVM参数的方法进行处理。修改ThreadStackSize默认大小的方法如下:
步骤 1 .使用文件编辑工具打开/eas/server/profiles/server*/set-server-env.sh(bat),如果是
群集环境,每个实例都需要修改。
步骤 2 修改其中的JVM_CUSTOM_PARAMS=,增加参数:-XX:ThreadStackSize=4M,修
改后的结果如下(Windows环境下需要去掉前后的双引号):
JVM_CUSTOM_PARAMS=\
-XX:MaxTenuringThreshold=1 -XX:+UseParallelOldGC -XX:+DisableExplicitGC -XX:ThreadStackSize=4M\
步骤 3 重启EAS或群集即可。
关键字
EAS 工作流 StackOverflowError
此参数设臵仅适用SUN JDK,如果是其它类型的JDK,在原有基础上增加
-XX:ThreadStackSize=4M参数即可。如果此参数不生效,请检查是否程序本身有问题导致递归调用一直不能正常结束导致。
27)EAS从Windows迁移到Linux后合并行业元数据失败
适用版本
EAS7.0.1
问题描述
打了行业补丁后,在管理控制台手工执行行业元数据合并,合并出错,提示找不到类“org.eclipse.jdt.core.JDTCompilerAdapter”,但是在
eas\\admin\\config\\antClassPath.properties文件中有该类的定义。错误日志如下所示:
Buildfile: /app/kd/eas/admin/config/industrymetadataupdate.xml init: compile: [javac] Since compiler setting isn't classic or modern,ignoring fork setting. [javac] Compiling 743 source files to
/app/kd/eas/server/industry_wbs/workspace/classes BUILD FAILED
/app/kd/eas/admin/config/industrymetadataupdate.xml:48: Compiler Adapter 'org.eclipse.jdt.core.JDTCompilerAdapter' can't be found.