aws-apigateway-importer icon indicating copy to clipboard operation
aws-apigateway-importer copied to clipboard

Polymorphism not supported?

Open uebelack opened this issue 8 years ago • 1 comments

Hi trying to import my swagger file with a lot of "discriminator" definitions, i get following error:

com.amazonaws.services.apigateway.model.BadRequestException: Invalid model specified: Validation Result: warnings : [], errors : [Invalid model schema specified. Unsupported keyword: ["discriminator"]] (Service: null; Status Code: 400; Error Code: null; Request ID: fe90664e-c8e9-11e6-bacd-87e3f1e94917) at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1389) at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:902) at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:607) at com.amazonaws.http.AmazonHttpClient.doExecute(AmazonHttpClient.java:376) at com.amazonaws.http.AmazonHttpClient.executeWithTimer(AmazonHttpClient.java:338) at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:287) at com.amazonaws.hal.client.HalClient.invoke(HalClient.java:235) at com.amazonaws.hal.client.HalClient.postResource(HalClient.java:98) at com.amazonaws.hal.client.HalResourceInvocationHandler.invoke(HalResourceInvocationHandler.java:117) at com.sun.proxy.$Proxy29.createModel(Unknown Source) at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkApiImporter.createModel(ApiGatewaySdkApiImporter.java:152) at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkSwaggerApiImporter.createModel(ApiGatewaySdkSwaggerApiImporter.java:117) at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkSwaggerApiImporter.createModels(ApiGatewaySdkSwaggerApiImporter.java:110) at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkSwaggerApiImporter.createApi(ApiGatewaySdkSwaggerApiImporter.java:69) at com.amazonaws.service.apigateway.importer.impl.ApiGatewaySwaggerFileImporter.importApi(ApiGatewaySwaggerFileImporter.java:48) at com.amazonaws.service.apigateway.importer.ApiImporterMain.importSwagger(ApiImporterMain.java:155) at com.amazonaws.service.apigateway.importer.ApiImporterMain.execute(ApiImporterMain.java:145) at com.amazonaws.service.apigateway.importer.ApiImporterMain.main(ApiImporterMain.java:83) 2016-12-23 09:30:02,386 INFO - Deleting API tg9aq7uir4 2016-12-23 09:30:02,785 ERROR - Error importing API definition com.amazonaws.services.apigateway.model.BadRequestException: Invalid model specified: Validation Result: warnings : [], errors : [Invalid model schema specified. Unsupported keyword: ["discriminator"]] (Service: null; Status Code: 400; Error Code: null; Request ID: fe90664e-c8e9-11e6-bacd-87e3f1e94917) at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1389) at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:902) at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:607) at com.amazonaws.http.AmazonHttpClient.doExecute(AmazonHttpClient.java:376) at com.amazonaws.http.AmazonHttpClient.executeWithTimer(AmazonHttpClient.java:338) at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:287) at com.amazonaws.hal.client.HalClient.invoke(HalClient.java:235) at com.amazonaws.hal.client.HalClient.postResource(HalClient.java:98) at com.amazonaws.hal.client.HalResourceInvocationHandler.invoke(HalResourceInvocationHandler.java:117) at com.sun.proxy.$Proxy29.createModel(Unknown Source) at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkApiImporter.createModel(ApiGatewaySdkApiImporter.java:152) at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkSwaggerApiImporter.createModel(ApiGatewaySdkSwaggerApiImporter.java:117) at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkSwaggerApiImporter.createModels(ApiGatewaySdkSwaggerApiImporter.java:110) at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkSwaggerApiImporter.createApi(ApiGatewaySdkSwaggerApiImporter.java:69) at com.amazonaws.service.apigateway.importer.impl.ApiGatewaySwaggerFileImporter.importApi(ApiGatewaySwaggerFileImporter.java:48) at com.amazonaws.service.apigateway.importer.ApiImporterMain.importSwagger(ApiImporterMain.java:155) at com.amazonaws.service.apigateway.importer.ApiImporterMain.execute(ApiImporterMain.java:145) at com.amazonaws.service.apigateway.importer.ApiImporterMain.main(ApiImporterMain.java:83)

Regards,

David

uebelack avatar Dec 23 '16 08:12 uebelack

Unfortunately, discriminator is not supported by api gateway currently. Also, you should be using the import/export api (http://docs.aws.amazon.com/apigateway/latest/developerguide/create-api-using-import-export-api.html) which has new features(like importing documentation)/fixes. I have added this as a feature request in our backlog.

abhigna avatar Dec 26 '16 01:12 abhigna