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

Hybris安装OCC addon失败接口跳转HAC及Swagger配置问题咨询

接口重定向到HAC的遗漏配置排查

请求重定向到HAC的核心原因是路径未匹配到ycommercewebservices的DispatcherServlet,被根上下文默认规则拦截,你可以按以下顺序检查遗漏配置:

  • 检查addon基础配置是否正确
    确认你的自定义occ addon的extensioninfo.xml中已添加<addon dependson="commercewebservicescommons" storefront="ycommercewebservices"/>声明,且localextensions.xml中同时启用了ycommercewebservices扩展。
  • 确认addoninstall命令执行生效
    你执行的命令中-Daddonnames="occaddon"需要和你实际的addon名称完全匹配,从你给出的控制器包名org.training.trainingoccaddon来看,你的addon名称大概率是trainingoccaddon,命令参数错误会导致安装失效。
    安装完成后可检查ycommercewebservices扩展的extensioninfo.xml是否已自动添加对你的addon的依赖,确认生效后再执行构建。
  • 检查Spring扫描配置
    在你的occ addon的resources/<your-addon-name>-web/spring/<your-addon-name>-web-spring.xml配置文件中,添加以下配置确保控制器被扫描加载:
    <context:component-scan base-package="org.training.trainingoccaddon.controllers" />
    <mvc:annotation-driven />
    
  • 确认访问路径正确
    访问时需要将路径中的{baseSiteId}替换为你实际已启用的站点ID(比如electronics、apparel-uk等),直接保留占位符会导致路径匹配失败。
OCC Addon场景下的Swagger配置

SAP Commerce高版本已内置swagger相关依赖,按以下步骤配置即可:

  1. 启用swagger全局开关
    在local.properties中添加以下配置:
    swagger.enabled=true
    swagger.allow.origin=*
    
  2. 添加自定义接口扫描配置
    在你的occ addon中新增Swagger配置类,示例如下:
    package org.training.trainingoccaddon.config;
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import springfox.documentation.builders.ApiInfoBuilder;
    import springfox.documentation.builders.PathSelectors;
    import springfox.documentation.builders.RequestHandlerSelectors;
    import springfox.documentation.service.ApiInfo;
    import springfox.documentation.spi.DocumentationType;
    import springfox.documentation.spring.web.plugins.Docket;
    import springfox.documentation.swagger2.annotations.EnableSwagger2;
    
    @Configuration
    @EnableSwagger2
    public class CustomOccSwaggerConfig {
    
        @Bean
        public Docket customOccApiDocket() {
            return new Docket(DocumentationType.SWAGGER_2)
                    .groupName("custom-occ-api")
                    .select()
                    .apis(RequestHandlerSelectors.basePackage("org.training.trainingoccaddon.controllers"))
                    .paths(PathSelectors.any())
                    .build()
                    .apiInfo(apiInfo());
        }
    
        private ApiInfo apiInfo() {
            return new ApiInfoBuilder()
                    .title("自定义OCC接口")
                    .description("自定义occ addon暴露的业务接口文档")
                    .version("1.0.0")
                    .build();
        }
    }
    
  3. 访问swagger文档
    服务启动后访问https://localhost:9002/rest/v2/swagger-ui.html,在页面顶部的分组下拉框选择custom-occ-api即可看到你自定义的接口文档。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 12:24:03