Hi, did you try to transform dictionaries to another more basic structure? 
I think it would work with an array or a list.


El viernes, 28 de septiembre de 2018, 6:03:54 (UTC-4), Alessandro 
Petrozzelli escribió:
>
> Hi all, I'm looking for a little bit (I hope) of help about swagger2 API 
> client generation through swagger-codegen.
> Following is a snippet of the input parameter for my API:
>
> "DeviceAuthrorizationRequestVM": {
> "type": "object",
> "required": ["client_id",
> "user_code"],
> "properties": {
> "client_id": {
> "type": "string"
> },
> "device_info": {
> "type": "object",
> "additionalProperties": {
> "type": "string"
> }
> },
> "user_code": {
> "type": "string"
> }
> },
> "title": "DeviceAuthrorizationRequestVM"
> },
>
> The Java client code generated by swagger-codegen works perfectly fine 
> whereas the qt5cpp (c++) client have troubles.
> It looks like the reason is the different way of handling the 
> "device_info" part, here is an actual example of how the Java and C++ code 
> invoke the service:
>
> Java: 
> {"client_id":"clientId","device_info":{"JVMVersion":"25.171-b11"},"user_code":"705364"}
> C++: {"client_id":"clientId","device_info":[{"key": "value"}]        
>  ,"user_code":"727693"}
>
> Looking at the specs (
> https://swagger.io/docs/specification/data-models/dictionaries/) I 
> understand the Java way is the correct one as it is a JSON representation 
> for a dictionary while 
> the C++ one is an array of objects.
> Am I correct? Did anyone have to deal with such problem?
>
> Assuming this is in fact a bug, I think the better way of dealing with 
> this problem would be to contribute to the project providing a fix for it.
> Anyone willing to guide me through the process?
> Investigating a bit I found out that swagger-codegen 3 changed the 
> template engine from mustache to handlebar: does it means that 
> swagger-codegen 2.x will be phased-out soon?
> Is it worth investing into it then? (I would say yes in this specific case)
> Another option I have is to provide my own template for it to handle my 
> specific case.
>
> What's your thought on this?
>
> Thanks in advance,
> Alessandro Petrozzelli
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Swagger" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to