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

向WSO2 DSS传递limit和offset参数时遇INCOMPATIBLE_PARAMETERS_ERROR

排查INCOMPATIBLE_PARAMETERS_ERROR错误的解决方案

1. 修正DSS资源路径配置

DSS的Resource路径无需包含查询参数(?offset={offset}&limit={limit}),只需定义基础路径,查询参数通过with-param绑定即可。错误的路径写法会导致参数解析异常,修改后的Resource配置如下:

<resource method="GET" path="permission-categories">
    <call-query href="getPermissionCategories">
        <with-param name="offset" query-param="offset" />
        <with-param name="limit" query-param="limit" />
    </call-query>
</resource>

2. 确保参数类型匹配与非空

DSS的查询参数要求为INTEGER类型,需保证Micro Integrator传递的参数符合类型要求:

  • 在MI调用前添加参数类型转换与默认值处理,避免空值或字符串类型传入:
<property expression="get-property('query.param.offset') ?: 0" name="uri.var.offset" type="INTEGER"/>
<property expression="get-property('query.param.limit') ?: 10" name="uri.var.limit" type="INTEGER"/>
  • 更新MI的Endpoint配置,使用转换后的参数:
<call>
    <endpoint>
        <http method="GET" uri-template="https://{uri.var.integratorHost}:{uri.var.integratorServicePort}/services/test-dataservice-v2/permission-categories?offset={uri.var.offset}&amp;limit={uri.var.limit}"/>
    </endpoint>
</call>

3. 调整DSS查询参数的可选性(可选)

若业务允许参数可选,可修改DSS的Query配置,设置参数可选并添加默认值,避免因参数缺失触发错误:

<query id="getPermissionCategories" useConfig="usage-profile-datasource">
    <sql>SELECT * FROM permission_category limit COALESCE(:limit, 10) offset COALESCE(:offset, 0)</sql>
    <param name="limit" optional="true" sqlType="INTEGER" defaultValue="10"/>
    <param name="offset" optional="true" sqlType="INTEGER" defaultValue="0"/>
    <result outputType="json">
        {"outpust-result":{"Resources":[{"id": "$id","permissionCategory":"$permission_category"}]}}
    </result>
</query>

4. 验证服务端点可达性

确认Micro Integrator能正常访问DSS服务的端点URL,检查主机、端口、服务名称是否配置正确,避免因网络或地址错误导致参数传递失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 05:55:10