点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
将IDM系统升级到8.0后,在进行调度程序测试时,我们将遇到以下错误,并且调度程序无法启动。 请就这个问题提出建议。
读取Db信息-准备的语句:从MC_DBINFO中选择INFOVALUE,其中INFONAME ='TYPENUM'完整的调度程序标识符:idmdispatcher_2018_8_1 @ <服务器名称>:1518111633478:673641调度程序标识符前缀:idmdispatcher_2018_8_1 @ <服务器名称>无法调用主类-异常: " java.lang.VerifyError:操作数堆栈上的错误类型异常详细信息:位置:com/sap/idm/ic/services/dispatcher/MxDispatcher_DBCommonFacade.flushLinkRecord(Ljava/sql/Connection; Lcom/sap/idm/db/obj/view/IdMVLink;)V @ 47:原因:类型'com/sap/idm/db/obj/view/IdMVLink'(当前帧,堆栈[1])无法分配给'com/sap/idm/db/obj/MxTableObject的当前帧:bci:@ 47
在更新SP5中的最新补丁后,该问题已解决。
Hello Vinay,
请不要忘记接受对您问题的正确答案。 这可以帮助其他人看到问题已解决,并且遇到相同问题的成员可以更快地找到解决方案。
这次我为您做了,所以现在您的答案用橙色标记,并在列表顶部,以提高可视性。 要了解有关"接受"按钮功能的更多信息,请阅读此博客" 如何处理我的回答 问题?"。
。
此致
Steffi。
如果在升级脚本过程中出错,请重新运行(必要时在DBA的帮助下)以解决错误。 重新生成调度程序后,这应该可以解决该问题。
嗨,马特,
感谢您的答复。
在重新运行更新脚本时,mxmc_db已更新,并且更新idstore.PFB时出错。 另外,当我签入mxmc_update.log时,能够看到在执行调度程序测试时遇到的相同错误。 它与idstore有关。 请确认。
我在下面提供了调度程序的.sh和.prop的内容。
*************************************************** ******
在本地主机上完成mxmc_db的更新
*************************************************** ******
*************************************************** *************
更新idstore模式失败。 看到mxmc_update.log
*************************************************** *************
mxmc_update,log启用7.2批准机制视图更新MC_LOGS更新IdStore模式检查jdbc连接[11.02.2018 23:08:51-606]-读取Db信息-准备的语句:从MC_DBINFO中选择INFOVALUE,其中INFONAME ='TYPENUM'jdbcconnection 确定更新IdStore模式[11.02.2018 23:08:53-421]-读取Db信息-准备的语句:从MC_DBINFO选择INFOVALUE,其中INFONAME ='TYPENUM'更新身份存储上的模式3线程" main" java.lang中的异常。 NullPointerException:尝试在com上调用从com.sap.idm.utils.JDBCUtil.fill(JDBCUtil.java:149)的局部变量'v'加载的空对象的方法java.lang.Object.toString()时。 com.sap.idm.db.objutil.table.LanguageTranslationUtil.addNew(LanguageTranslationUtil.java:50)上的sap.idm.utils.JDBCUtil.bindVars(JDBCUtil.java:39)com.sap.idm.schematransport.ic。 com.s处的com.sap.idm.schematransport.impl.ImXportSchema.executeImport(ImXportSchema.java:480)处的LanguageUtil.toDatabase(LanguageUtil.java:48) com.sap.idm.schematransport.impl上的com.sap.idm.schematransport.impl.ImXportSchema.updateIDStores(ImXportSchema.java:222)上的ap.idm.schematransport.impl.ImXportSchema.importSchema(ImXportSchema.java:330) com.sap.idm.schematransport.impl.ImXportSchema.main(ImXportSchema.java:141)上的ImXportSchema.updateIDSSchema(ImXportSchema.java:203)
dispactcherutil.sh
#!/bin/bash#:: ---------------- MC_COMMAND =" $ 1" DISPATCHER_NAME =" $ 2" OPTIONS =" $ 3"#:: ---- ------------#:: ================================== ================================================== ==#:: ---调度程序安装程序需要JDBC驱动程序才能连接到Identity Management DB#:: ========================== ================================================== ============如果[-f" dispatcherutil.config"],则#从配置文件中获取驱动程序路径| 在第一个equal(=)号之前切掉部分| 删除开头和结尾的制表符或空格MXDRIVERJAR =" $(grep -i" JDBC_DRIVER_JARFILE"" dispatcherutil.config" | cut -d'='-f2- | sed's/^ [\ t] *//; s/[ \ t] * $//')" fi如果[[$ MC_COMMAND ==""]]然后echo"" echo"用法:sh dispatcherutil.sh <命令> <选项>"回声"" echo"命令 其中之一:test/add/delete/start/suspend/resume/stop/softstop/list/gui/set_jdbc_url/set_default" echo" dispatcherName命令\" list \",\" gui \"和\" set_jdbc_url \不需要 ",但对其他用户是必需的" echo"选项checkconfig/runonce之一与命令\" test \"结合使用" echo"与 _rt用户结合使用的JDBC URL与命令\" set_jdbc_url \"结合使用" echo""退出 0 fi如果[[$ MC_COMMAND ==" gui"]]则#:: =============================== ================================================== =====#::--启动Dispatcher Installer GUI#:: =============================== ================================================== ====== $ {JAVA_HOME}/bin/java -cp。:./Java/Dispatcher Installer.jar:./Java/idmcommon.jar:" $ {MXDRIVERJAR}" com.sap.idm.dispatcherutil.ui.FrmMain出口0 fi,如果[[$ MC_COMMAND ==" test"]]然后#:: == ================================================== ==================================#::-在测试模式下启动分派器#:: ================================================== ==================================== sh ./Service-Scripts/Dispatcher_Service_${DISPATCHER_NAME}。 sh $ {MC_COMMAND} $ {OPTIONS}退出0 fi#:: ================================== ================================================== ==#::--启动分派器安装程序#:: =================================== ================================================== == $ {JAVA_HOME}/bin/java -cp。:./Java/DispatcherInstaller.jar:./Java/idmcommon.jar:" $ {MXDRIVERJAR}" com.sap.idm.dispatcherutil.cmd.CmdInstaller $ {MC_COMMAND } $ {DISPATCHER_NAME} $ {OPTIONS}
dispatcher_template.prop
#********************************************** *************#
---每个RELOAD_FREQUENCY ...都会重新加载此文件。#
*************************************************** ************#==================================== ===============================--调度员参数#============ ================================================== ========#----------------------------------------- ----------------------------#---调度员的姓名#------------ -------------------------------------------------- ------- DISPATCHER_NAME = $ DISPATCHERNAME $#------------------------------------- --------------------------------#---达到MC所需的驱动程序和URL#------ -------------------------------------------------- ------------- MC_JDBCDRIVER = $ JDBCDRIVER $ MC_JDBCURL = $ JDBCURL $#-------------------------- -------------------------------------------#---传递给 DSE运行时引擎。 #---#---此模板中使用的分隔符为';'。 #---调度程序将创建平台正确的字符串(在Windows--上使用';';在Unix上使用':')#---#-%DSE_HOME%将由调度程序扩展(替换为 值#---传递给调度程序本身)#---#---此模板中使用的目录分隔符为'/'。 #---可以使用'\\'或'/'-调度程序将创建#---平台正确的字符串(在Windows上为'\\',在Unix上为'/')#---# --- TODO#---需要JCO驱动程序才能连接到ABAP。 如果在Unix上运行#---调度程序,则必须将路径设置为指向实际的#--- JCO安装目录。 #------------------------------------------------- -------------------- DSECLASSPATH =%DSE_HOME%/Java/*; $ DSEClassPath $#---------------- -------------------------------------------------- ---#--- DSE可能需要的驱动程序,因此它可以执行#---此模板中使用的驱动程序之间的分隔符为';'。 #---可以使用';' 或':'-调度员将创建#---平台正确的字符串(在Windows上为';',在Unix上为':')#------------------- -------------------------------------------------- JDBCDRIVERS = $ JDBCDRIVERS $ DISP_CONN_STR_CHARSET = UTF-8
您好Vinay,
尝试重新运行数据库升级脚本,然后重新生成调度程序。 我在较早的版本中也遇到过类似的问题。
如果这不起作用,请发布调度程序.sh和.prop文件的内容。
马特
一周热门 更多>