You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MediaWiki中Parsoid类型错误求助:pushList参数类型不匹配

MediaWiki Parsoid类型错误排查思路

错误详情

{"message":"Error: exception of type TypeError: Argument 2 passed to Wikimedia\\Parsoid\\Wt2Html\\TT\\ListHandler::pushList() must be an instance of stdClass, instance of Wikimedia\\Parsoid\\NodeData\\DataParsoid given, called in vendor/wikimedia/parsoid/src/Wt2Html/TT/ListHandler.php on line 518","exception":
{"id":"8be3b0fb2f42e48816771d33","type":"TypeError","file":"vendor/wikimedia/parsoid/src/Wt2Html/TT/ListHandler.php","line":304,"message":"Argument 2 passed to Wikimedia\\Parsoid\\Wt2Html\\TT\\ListHandler::pushList() must be an instance of stdClass, instance of Wikimedia\\Parsoid\\NodeData\\DataParsoid given, called in vendor/wikimedia/parsoid/src/Wt2Html/TT/ListHandler.php on line 518","code":0,"url":"/rest.php/www.tematichedigenere.com/v3/page/html/Cosa_c%27%C3%A8_da_fare%3F/27246?redirect=false&stash=true","caught_by":"other","backtrace":[
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/TT/ListHandler.php","line":518,"function":"pushList","class":"Wikimedia\\Parsoid\\Wt2Html\\TT\\ListHandler","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/TT/ListHandler.php","line":269,"function":"doListItem","class":"Wikimedia\\Parsoid\\Wt2Html\\TT\\ListHandler","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/TT/ListHandler.php","line":85,"function":"onListItem","class":"Wikimedia\\Parsoid\\Wt2Html\\TT\\ListHandler","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/TT/TokenHandler.php","line":150,"function":"onTag","class":"Wikimedia\\Parsoid\\Wt2Html\\TT\\ListHandler","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/TokenTransformManager.php","line":132,"function":"process","class":"Wikimedia\\Parsoid\\Wt2Html\\TT\\TokenHandler","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/TokenTransformManager.php","line":195,"function":"processChunk","class":"Wikimedia\\Parsoid\\Wt2Html\\TokenTransformManager","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/TreeBuilder/TreeBuilderStage.php","line":487,"function":"processChunkily","class":"Wikimedia\\Parsoid\\Wt2Html\\TokenTransformManager","type":"->"},
{"function":"processChunkily","class":"Wikimedia\\Parsoid\\Wt2Html\\TreeBuilder\\TreeBuilderStage","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php","line":903,"function":"current","class":"Generator","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/ParserPipeline.php","line":180,"function":"processChunkily","class":"Wikimedia\\Parsoid\\Wt2Html\\DOMPostProcessor","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wt2Html/ParserPipelineFactory.php","line":308,"function":"parseChunkily","class":"Wikimedia\\Parsoid\\Wt2Html\\ParserPipeline","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Wikitext/ContentModelHandler.php","line":123,"function":"parse","class":"Wikimedia\\Parsoid\\Wt2Html\\ParserPipelineFactory","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Parsoid.php","line":172,"function":"toDOM","class":"Wikimedia\\Parsoid\\Wikitext\\ContentModelHandler","type":"->"},
{"file":"vendor/wikimedia/parsoid/src/Parsoid.php","line":210,"function":"parseWikitext","class":"Wikimedia\\Parsoid\\Parsoid","type":"->"},
{"file":"vendor/wikimedia/parsoid/extension/src/Rest/Handler/ParsoidHandler.php","line":587,"function":"wikitext2html","class":"Wikimedia\\Parsoid\\Parsoid","type":"->"},
{"file":"vendor/wikimedia/parsoid/extension/src/Rest/Handler/PageHandler.php","line":88,"function":"wt2html","class":"MWParsoid\\Rest\\Handler\\ParsoidHandler","type":"->"},
{"file":"includes/Rest/Router.php","line":414,"function":"execute","class":"MWParsoid\\Rest\\Handler\\PageHandler","type":"->"},
{"file":"includes/Rest/Router.php","line":338,"function":"executeHandler","class":"MediaWiki\\Rest\\Router","type":"->"},
{"file":"includes/Rest/EntryPoint.php","line":168,"function":"execute","class":"MediaWiki\\Rest\\Router","type":"->"},
{"file":"includes/Rest/EntryPoint.php","line":133,"function":"execute","class":"MediaWiki\\Rest\\EntryPoint","type":"->"},
{"file":"rest.php","line":31,"function":"main","class":"MediaWiki\\Rest\\EntryPoint","type":"::"}]},"httpCode":500,"httpReason":"Internal Server Error"}

排查步骤

  • 验证版本兼容性:这个类型不匹配错误大概率是Parsoid扩展与MediaWiki核心版本不兼容导致的。核对两者版本是否符合官方适配矩阵,确保版本匹配。
  • 清理缓存:执行php maintenance/clearCache.php清理MediaWiki全局缓存,或者直接删除Parsoid缓存目录(通常在cache/parsoid),避免旧缓存数据引发解析异常。
  • 检查目标页面列表格式:错误触发在列表处理环节,目标页面Cosa_c'è_da_fare?可能存在列表格式问题,比如嵌套错误、混合有序/无序列表、特殊字符干扰。尝试简化页面列表内容,逐步定位问题代码块。
  • 排查第三方扩展冲突:暂时禁用所有非必要的第三方扩展,尤其是影响页面解析或列表渲染的扩展,逐一恢复排查是否是扩展导致的类型错误。
  • 重装Parsoid依赖:如果通过Composer安装Parsoid,执行composer update wikimedia/parsoid更新依赖,或composer install重新安装所有依赖,修复可能损坏的依赖文件。
  • 查阅官方问题库:去Parsoid的代码仓库搜索同类TypeError,查看是否有已解决的issue或临时修复方案。

内容的提问来源于stack exchange,提问作者Revious

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 12:54:18