0

I've been trying to work out how to retrieve data from a RESTful webservice in Red Hat JBoss Data Virtualization. Specifically I have to connect to a webservice that requires 2-way SSL/TLS. (2-way SSL is required since we are working with privacy-sensitive data) While trying this I've come across what I feel like are two separate problems.

I have already tried reinstalling to get rid of these errors. For the installation process I first installed EAP 6.4. Afterwards I installed JBoss Data Virtualization on this EAP installation. I'm using the standalone version on a laptop with macOS version 10.13.6 since I'm just trying to prove that it's possible to use JDV with the mentioned datasource. I'm not able to get the logging details on the side of the API since it is a third party service.

I'm really new to JDV so I feel like the problem lies within some simple detail I'm missing but I really don't know what it could be. I've been reading a lot of other posts with problems people are having but none of them seem to have the same problem as me. I would greatly appreciate it if someone were able to help me. I tried to provide as much information as possible, so let me know if you need something else, or if something is missing. The post was getting too long so instead of pasting the code here, links are provided to textfiles in my google drive. I've used three dots to show where I've hidden some information that I don't want to share, like the keystorepassword and the local file structure of my device.

My problems are the following:

  1. Whenever I make a connection profile to any webservice I'm able to see the correct API-call results when making a sourcemodel, but when trying to deploy these on a VDB or preview the selected data in a sourcemodel or viewmodel, I get an error. When trying to deploy the VDB the error JBAS010473: Failed to load module for RA [webservice] is thrown. I can find the following in the .log file in the .metadata repository of my workspace.

.log file

  1. secondly when trying to make a sourcemodel of the api which requires 2-way SSL I get an 403 - Forbidden return code from the API. According to the API documentation this means that the client is not authenticated to get the data from the API. In other words, something on my side of the handshake protocol isn't set up right. The client certificate probably isn't sent in the TLS handshake process. I'm providing the following jbossws-cxf.xml file to a connection profile in the webservice resource adapter.

jbossws-cxf.xml file

I've used the web console to configure the connection definition but I've provided the standalone.xml for this purpose: standalone.xml file

The server logging during startup of the server is provided in the following file: server start terminal log.txt

Jason Aller
  • 3,541
  • 28
  • 38
  • 38
JBlok
  • 1

1 Answers1

0

On 1, you are indicating this occurs when using designer or even when using a standalone instance with a deployed vdb? How are you getting the 403 error if this is always occurring? From the log all we see implies the webservice resource adapter has been deployed:

09:11:30,498 INFO [org.jboss.as.connector.deployers.RaXmlDeployer] (MSC service thread 1-2) IJ020002: Deployed: file:/Users/.../EAP-6.4.0/modules/system/layers/dv/org/jboss/teiid/resource-adapter/webservice/main/

On 2, in the standalone.xml you are hitting an http endpoint. Does the vdb override that with https? Do you have the full 403 exception message that indicates a handshake failure vs. basic auth failing?

Steven Hawkins
  • 538
  • 1
  • 4
  • 7
  • On point 2: I just tried to edit the DataSource endpoint (in developer studio) so it would be https but when saving I got the error: Data Source java:/... could not be created for type webservice. I did this after changing the standalone.xml and rebooting JDV – JBlok Dec 03 '19 at 15:46
  • About 1: I am using the designer for this. When trying to preview data JDV notifies me that the datasources aren't deployed yet. When I then click on deploy datasources it gives me the error. This is for any webservice datasource that I've tested, – JBlok Dec 03 '19 at 15:49
  • To continue on point 2: After the error the connection-definition and the webservice element were completely removed from the standalone.xml file. I've had this occur before when trying to fix my problems. that is probably why the endpoint was http instead of https, I've had to re-enter it a couple of times so that was a typo as far as I know. I've edited the log.txt file to include more logging. – JBlok Dec 03 '19 at 16:08