[
https://issues.jboss.org/browse/TEIID-5183?page=com.atlassian.jira.plugin...
]
dalex dalex edited comment on TEIID-5183 at 12/20/17 10:58 AM:
---------------------------------------------------------------
Hi [~shawkins] thx a lot for the quick fix but it works for
http://api.apis.guru/v2/specs/azure.com/redis/2017-10-01/ endpoint but doesn't work
for the following ones (I applied all changes from the issue):
http://api.apis.guru/v2/specs/deutschebahn.com/fahrplan/v1/
http://api.apis.guru/v2/specs/googleapis.com/doubleclicksearch/v2/
http://api.apis.guru/v2/specs/magento.com/2.1/
let me demonstrate you stacktraces here for every endpoint:
1.
http://api.apis.guru/v2/specs/deutschebahn.com/fahrplan/v1/ teiid throws out again NPE
{code:noformat}
2017-12-20 16:29:10,238 WARN [org.teiid.RUNTIME] (Worker1_async-teiid-threads1)
TEIID50036 VDB test.1 model "mswagger" metadata failed to load.
Reason:java.lang.NullPointerExceptio
n: java.lang.NullPointerException
at org.teiid.metadata.MetadataFactory.setUUID(MetadataFactory.java:155)
at org.teiid.metadata.MetadataFactory.addProcedure(MetadataFactory.java:403)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedure(SwaggerMetadataProcessor.java:240)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:199)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:67)
at org.teiid.translator.ExecutionFactory.getMetadata(ExecutionFactory.java:961)
at
org.teiid.query.metadata.NativeMetadataRepository.getMetadata(NativeMetadataRepository.java:96)
at
org.teiid.query.metadata.NativeMetadataRepository.loadMetadata(NativeMetadataRepository.java:62)
at
org.teiid.query.metadata.ChainingMetadataRepository.loadMetadata(ChainingMetadataRepository.java:55)
at org.teiid.jboss.VDBService$6.run(VDBService.java:341)
at org.teiid.jboss.VDBService$7.run(VDBService.java:392)
at
org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{code}
2.
http://api.apis.guru/v2/specs/googleapis.com/doubleclicksearch/v2/ teiid throws out NPE
but because of another circumstances:
{code:noformat}
2017-12-20 16:47:38,151 WARN [org.teiid.RUNTIME] (Worker1_async-teiid-threads1)
TEIID50036 VDB test.1 model "mswagger" metadata failed to load.
Reason:java.lang.NullPointerExceptio
n: java.lang.NullPointerException
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$3.execute(SwaggerMetadataProcessor.java:463)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:389)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:395)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedureParameters(SwaggerMetadataProcessor.java:482)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedure(SwaggerMetadataProcessor.java:254)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:199)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:67)
at org.teiid.translator.ExecutionFactory.getMetadata(ExecutionFactory.java:961)
at
org.teiid.query.metadata.NativeMetadataRepository.getMetadata(NativeMetadataRepository.java:96)
at
org.teiid.query.metadata.NativeMetadataRepository.loadMetadata(NativeMetadataRepository.java:62)
at
org.teiid.query.metadata.ChainingMetadataRepository.loadMetadata(ChainingMetadataRepository.java:55)
at org.teiid.jboss.VDBService$6.run(VDBService.java:341)
at org.teiid.jboss.VDBService$7.run(VDBService.java:392)
at
org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{code}
3.
http://api.apis.guru/v2/specs/magento.com/2.1/ teiid throws out StackOverflowError,
there is a cycle:
{code:noformat}
2017-12-20 16:51:03,475 ERROR [org.teiid.RUNTIME] (Worker1) TEIID30021 Uncaught exception
processing work: java.lang.StackOverflowError
at org.teiid.metadata.ColumnSet.getColumnByName(ColumnSet.java:59)
at org.teiid.metadata.MetadataFactory.addColumn(MetadataFactory.java:197)
at
org.teiid.metadata.MetadataFactory.addProcedureResultSetColumn(MetadataFactory.java:453)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$1.execute(SwaggerMetadataProcessor.java:286)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:383)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:58)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
{code}
Another thing, teiid at the moment uses the following swagger versions according to the
root pom.xml:
<version.swagger-parser>1.0.10</version.swagger-parser>
<version.io.swagger>1.5.8</version.io.swagger>
but these libraries are being actively changed. The latest stable versions for io.swagger
is 1.5.17 and for swagger-parser is 1.0.33. Can these versions be updated as well?
was (Author: dalex005):
Hi [~shawkins] thx a lot for the quick fix but it works for
http://api.apis.guru/v2/specs/azure.com/redis/2017-10-01/ endpoint but doesn't work
for the following ones (I applied all changes from the issue):
http://api.apis.guru/v2/specs/deutschebahn.com/fahrplan/v1/
http://api.apis.guru/v2/specs/googleapis.com/doubleclicksearch/v2/
http://api.apis.guru/v2/specs/magento.com/2.1/
let me demonstrate you stacktraces here for every endpoint:
1.
http://api.apis.guru/v2/specs/deutschebahn.com/fahrplan/v1/ teiid throws out again NPE
{code:noformat}
2017-12-20 16:29:10,238 WARN [org.teiid.RUNTIME] (Worker1_async-teiid-threads1)
TEIID50036 VDB test.1 model "mswagger" metadata failed to load.
Reason:java.lang.NullPointerExceptio
n: java.lang.NullPointerException
at org.teiid.metadata.MetadataFactory.setUUID(MetadataFactory.java:155)
at org.teiid.metadata.MetadataFactory.addProcedure(MetadataFactory.java:403)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedure(SwaggerMetadataProcessor.java:240)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:199)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:67)
at org.teiid.translator.ExecutionFactory.getMetadata(ExecutionFactory.java:961)
at
org.teiid.query.metadata.NativeMetadataRepository.getMetadata(NativeMetadataRepository.java:96)
at
org.teiid.query.metadata.NativeMetadataRepository.loadMetadata(NativeMetadataRepository.java:62)
at
org.teiid.query.metadata.ChainingMetadataRepository.loadMetadata(ChainingMetadataRepository.java:55)
at org.teiid.jboss.VDBService$6.run(VDBService.java:341)
at org.teiid.jboss.VDBService$7.run(VDBService.java:392)
at
org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{code}
2.
http://api.apis.guru/v2/specs/googleapis.com/doubleclicksearch/v2/ teiid throws out NPE
but because of another circumstances:
{code:noformat}
2017-12-20 16:47:38,151 WARN [org.teiid.RUNTIME] (Worker1_async-teiid-threads1)
TEIID50036 VDB test.1 model "mswagger" metadata failed to load.
Reason:java.lang.NullPointerExceptio
n: java.lang.NullPointerException
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$3.execute(SwaggerMetadataProcessor.java:463)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:389)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:395)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedureParameters(SwaggerMetadataProcessor.java:482)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedure(SwaggerMetadataProcessor.java:254)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:199)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:67)
at org.teiid.translator.ExecutionFactory.getMetadata(ExecutionFactory.java:961)
at
org.teiid.query.metadata.NativeMetadataRepository.getMetadata(NativeMetadataRepository.java:96)
at
org.teiid.query.metadata.NativeMetadataRepository.loadMetadata(NativeMetadataRepository.java:62)
at
org.teiid.query.metadata.ChainingMetadataRepository.loadMetadata(ChainingMetadataRepository.java:55)
at org.teiid.jboss.VDBService$6.run(VDBService.java:341)
at org.teiid.jboss.VDBService$7.run(VDBService.java:392)
at
org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{code}
3.
http://api.apis.guru/v2/specs/magento.com/2.1/ teiid throws out StackOverflowError,
there is a cycle:
{code:noformat}
2017-12-20 16:51:03,475 ERROR [org.teiid.RUNTIME] (Worker1) TEIID30021 Uncaught exception
processing work: java.lang.StackOverflowError
at org.teiid.metadata.ColumnSet.getColumnByName(ColumnSet.java:59)
at org.teiid.metadata.MetadataFactory.addColumn(MetadataFactory.java:197)
at
org.teiid.metadata.MetadataFactory.addProcedureResultSetColumn(MetadataFactory.java:453)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$1.execute(SwaggerMetadataProcessor.java:286)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:383)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:58)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.walkProperties(SwaggerMetadataProcessor.java:438)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.access$300(SwaggerMetadataProcessor.java:67)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor$2.visit(SwaggerMetadataProcessor.java:403)
at org.teiid.translator.swagger.PropertyVisitor.accept(PropertyVisitor.java:48)
{code}
Another thing, teiid at the moment uses the following swagger versions according to the
root pom.xml:
<version.swagger-parser>1.0.10</version.swagger-parser>
<version.io.swagger>1.5.8</version.io.swagger>
but these libraries are being actively changed. The latest stable versions for io.swagger
is 1.5.17 and for swagger-parser is 1.0.33. Can be these versions updated as well?
NPE in Swagger translator
-------------------------
Key: TEIID-5183
URL:
https://issues.jboss.org/browse/TEIID-5183
Project: Teiid
Issue Type: Bug
Components: Misc. Connectors
Affects Versions: 9.3.4
Environment: teiid-9.3.4 on WildFly Full 10.0.0.Final (WildFly Core
2.0.10.Final)
Reporter: dalex dalex
Assignee: Steven Hawkins
Fix For: 10.1, 9.3.6, 10.0.2
When using the
http://api.apis.guru/v2/specs/azure.com/redis/2017-10-01/ link as an
endpoint for swagger resource adapter Teiid throws up the following error message (in
bootstrapping phase), though with
http://petstore.swagger.io/v2 endpoint according to the
https://teiid.gitbooks.io/documents/reference/Swagger_Translator.html documentation the
translator works:
{code:noformat}
2017-12-18 16:14:43,975 WARN [org.teiid.RUNTIME] (Worker1_async-teiid-threads1)
TEIID50036 VDB test.1 model "mswagger" metadata failed to load.
Reason:java.lang.NullPointerExceptio
n: java.lang.NullPointerException
at org.teiid.metadata.MetadataFactory.setUUID(MetadataFactory.java:155)
at
org.teiid.metadata.MetadataFactory.addProcedureParameter(MetadataFactory.java:421)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedureParameters(SwaggerMetadataProcessor.java:560)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedure(SwaggerMetadataProcessor.java:261)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:206)
at
org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:74)
at org.teiid.translator.ExecutionFactory.getMetadata(ExecutionFactory.java:961)
at
org.teiid.query.metadata.NativeMetadataRepository.getMetadata(NativeMetadataRepository.java:96)
at
org.teiid.query.metadata.NativeMetadataRepository.loadMetadata(NativeMetadataRepository.java:62)
at
org.teiid.query.metadata.ChainingMetadataRepository.loadMetadata(ChainingMetadataRepository.java:55)
at org.teiid.jboss.VDBService$6.run(VDBService.java:341)
at org.teiid.jboss.VDBService$7.run(VDBService.java:392)
at
org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{code}
The
http://api.apis.guru/v2/specs/azure.com/redis/2017-10-01/ endpoint supports swagger
API according to the
https://apis.guru/browse-apis/ link and I can see json output when
requesting the
http://api.apis.guru/v2/specs/azure.com/redis/2017-10-01/swagger.json link.
Probably the NPE appears because of RefParameter type which is not handled in
SwaggerMetadataProcessor.addProcedureParameters method which leads to name = null.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)