Uploaded image for project: 'Teiid'
  1. Teiid
  2. TEIID-5202

SSLHandshakeException when loading metadata for swagger datasource

    XMLWordPrintable

Details

    • Bug
    • Resolution: Obsolete
    • Major
    • None
    • 9.3.4
    • Misc. Connectors
    • None
    • Hide

      1. add in standalone-teiid.xml the following resource adapter:

                      <resource-adapter id="swagger">
                          <module slot="main" id="org.jboss.teiid.resource-adapter.webservice"/>
                          <transaction-support>NoTransaction</transaction-support>
                          <connection-definitions>
                              <connection-definition class-name="org.teiid.resource.adapter.ws.WSManagedConnectionFactory" jndi-name="java:/swagger" enabled="true" use-java-context="true" pool-name="teiid-swagger-ds">
                                  <config-property name="EndPoint">
                                      https://api.apis.guru/v2/specs/deutschebahn.com/fahrplan/v1/
                                  </config-property>
                              </connection-definition>
                          </connection-definitions>
                      </resource-adapter>
      

      2. in test-vdb.xml add the following model:

          <model visible="true" name="mswagger">
              <source name="swagger" translator-name="swagger" connection-jndi-name="java:/swagger"/>
          </model>
      

      3. run teiid server

      Show
      1. add in standalone-teiid.xml the following resource adapter: <resource-adapter id= "swagger" > <module slot= "main" id= "org.jboss.teiid.resource-adapter.webservice" /> <transaction-support> NoTransaction </transaction-support> <connection-definitions> <connection-definition class-name= "org.teiid.resource.adapter.ws.WSManagedConnectionFactory" jndi-name= "java:/swagger" enabled= "true" use-java-context= "true" pool-name= "teiid-swagger-ds" > <config-property name= "EndPoint" > https://api.apis.guru/v2/specs/deutschebahn.com/fahrplan/v1/ </config-property> </connection-definition> </connection-definitions> </resource-adapter> 2. in test-vdb.xml add the following model: <model visible= "true" name= "mswagger" > <source name= "swagger" translator-name= "swagger" connection-jndi-name= "java:/swagger" /> </model> 3. run teiid server

    Description

      A follow-up ticket to the TEIID-5183 issue.

      When using the https://api.apis.guru/v2/specs/deutschebahn.com/fahrplan/v1/ endpoint Teiid on bootstrap stage throws out the following stacktrace:

      Unable to find source-code formatter for language: noformat. Available languages are: actionscript, ada, applescript, bash, c, c#, c++, cpp, css, erlang, go, groovy, haskell, html, java, javascript, js, json, lua, none, nyan, objc, perl, php, python, r, rainbow, ruby, scala, sh, sql, swift, visualbasic, xml, yaml
      2018-01-05 12:19:24,102 WARNING [org.apache.cxf.phase.PhaseInterceptorChain] (Worker1_async-teiid-threads0)  Interceptor for {https://api.apis.guru/v2/specs/deutschebahn.com/fahrplan
      /v1/swagger.json}WebClient has thrown exception, unwinding now: org.apache.cxf.interceptor.Fault: Could not send Message.
              at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64)
              at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
              at org.apache.cxf.jaxrs.client.AbstractClient.doRunInterceptorChain(AbstractClient.java:649)
              at org.apache.cxf.jaxrs.client.WebClient.doChainedInvocation(WebClient.java:1093)
              at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:894)
              at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:865)
              at org.apache.cxf.jaxrs.client.WebClient.invoke(WebClient.java:331)
              at org.teiid.resource.adapter.ws.WSConnectionImpl$HttpDispatch.invoke(WSConnectionImpl.java:204)
              at org.teiid.resource.adapter.ws.WSConnectionImpl$HttpDispatch.invoke(WSConnectionImpl.java:123)
              at org.teiid.translator.ws.BinaryWSProcedureExecution.execute(BinaryWSProcedureExecution.java:156)
              at org.teiid.translator.swagger.SwaggerMetadataProcessor.getSchema(SwaggerMetadataProcessor.java:682)
              at org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:177)
              at org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:70)
              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)
      Caused by: javax.net.ssl.SSLHandshakeException: SSLHandshakeException invoking https://api.apis.guru/v2/specs/deutschebahn.com/fahrplan/v1/swagger.json: Received fatal alert: handsha
      ke_failure
              at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
              at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
              at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
              at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
              at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1376)
              at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1360)
              at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
              at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:651)
              at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
              ... 24 more
      Caused by: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
      

      Attachments

        Activity

          People

            rhn-engineering-shawkins Steven Hawkins
            dalex005 Dmitrii Pogorelov
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: