我建议您在 WCS 开发环境中研究/调查站点地图生成计划命令是如何实现的 (SitemapGenerateCmd) 以及它是如何调用 JSP 模板文件 (sitemap.jsp)
您需要在命令中进行一些修改,以便为您的提要创建一个 jsp 模板,并从您创建的调度程序命令中调用该模板。调用消息系统的模板命令,请确保在 ActionForward 标记中使用以下属性来注册 JSP 以从后端进行消息传递:示例:
<forward className="com.ibm.commerce.struts.ECActionForward"
name="SitemapIndexView" path="/SitemapIndex.jsp">
<set-property property="direct" value="true"/>
<set-property property="resourceClassName" value="com.ibm.commerce.messaging.viewcommands.MessagingViewCommandImpl"/>
<set-property property="interfaceName" value="com.ibm.commerce.messaging.viewcommands.MessagingViewCommand"/>
<set-property property="properties" value="storeDir=no"/>
<set-property property="implClassName" value="com.ibm.commerce.messaging.viewcommands.MessagingViewCommandImpl"/>
</forward>
那么从您的产品/目录 bean 中提取数据的逻辑将在 JSP 内部处理,您可以轻松地根据需要形成输出数据(XML、CSV、JSON 等)
使用这种方式的优点和好处是您可以利用 Commerce Server OOTB JSTL 标签、WCF 标签来检索所有信息并使用 wcf:url 进行 SEO URLS OOTB,即使您可以使用<wcf:getData
标签调用 BOD/SOA 命令,最后您将变得更有条理易于维护和将来重用的设计。
sitemap.jsp 是一个很好的资源,可以帮助您遍历目录和子目录以提取产品信息。
希望这些可以帮助您找到解决方案。需要一些搜索和了解现有的站点地图生成实用程序。
谢谢。
床