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:
- 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.
- 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 followingjbossws-cxf.xml
file to a connection profile in the webservice resource adapter.
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