[ 
https://issues.apache.org/jira/browse/CAMEL-26221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Claus Ibsen resolved CAMEL-26221.
---------------------------------
    Resolution: Fixed

Fixed via https://github.com/apache/camel/pull/28975 (merged as 065646714889 on 
main).

_Claude Code on behalf of davsclaus_

> camel-ibm-watsonx-data - getAllColumns always fails with NoClassDefFoundError 
> for Gson $Gson$Types, and updateTable accepts only a Map body
> -------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-26221
>                 URL: https://issues.apache.org/jira/browse/CAMEL-26221
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-ai
>            Reporter: Claus Ibsen
>            Assignee: Andrea Cosentino
>            Priority: Major
>             Fix For: 4.24.0
>
>
> Found while adding the catalog body types of ibm-watsonx-data (CAMEL-24961, 
> PR #28402).
> h4. 1. getAllColumns fails with NoClassDefFoundError 
> com/google/gson/internal/$Gson$Types
> Same dependency alignment issue as camel-ibm-watson-discovery: camel-parent 
> manages {{gson}} at 2.14.0 ({{parent/pom.xml}}, main 2a465aa4814c, line 224) 
> while {{watson-x-data}} 0.9.0 brings {{com.ibm.cloud:sdk-core}} 9.18.4, whose 
> {{DynamicModelTypeAdapterFactory}} still uses the removed {{$Gson$Types}}. 
> {{WatsonxDataProducer.handleGetAllColumns}} (line 322) fails to parse the 
> response; other operations whose models use dynamic properties may fail too. 
> Checked on 4.24.0-SNAPSHOT with a JDK HttpServer stub as the service.
> Proposed: manage {{com.ibm.cloud:sdk-core}} at 9.24.3 or later (or upgrade 
> the watsonx.data SDK), and add a test that parses a getAllColumns response.
> h4. 2. updateTable accepts only a java.util.Map body
> {{handleUpdateTable}} (line 275) reads the body with {{getBody(Map.class)}}; 
> a JSON String body (from HTTP or a file) gives null and fails with "Request 
> body with table patch data is required for updateTable operation". Checked on 
> 4.24.0-SNAPSHOT with a JDK HttpServer stub.
> Proposed: parse a JSON String / bytes body into a Map, and mention the 
> accepted types in the error.
> _Claude Code on behalf of davsclaus_



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to