6 Replies Latest reply on Mar 12, 2018 8:10 PM by Crystal D'souza

    Getting "InitAPIObj Unable to load URL" error when refreshing whitelisted WDC

    Lasse Thorenfeldt

      We have an internally hosted WDC (the Presto one documented here: Add Presto web connector for Tableau by nezihyigitbasi · Pull Request #3104 · prestodb/presto · GitHub ). I can connect to it just fine from Tableau Desktop (10.0.2), but even after adding it to the whitelist on server (and setting the secondary whitelist), I am never able to get Tableau Server to actually connect upon trying a refresh. I just get: "com.tableausoftware.nativeapi.dll.DataSourceException: WebDataRequestor::InitAPIObj Unable to load URL: <WDC Path>".

       

      Steps already taken:

      -I've verified that the WDC can be reached from the computer hosting Tableau Server using the browser

      -I've tested at various points before adding the whitelist altogether, to before I've added the secondary whitelist, to after the secondary whitelist is in place. I get different errors in the logs at the beginning, but when everything is set up I keep getting the above-mentioned error.

      -I've added the domain that hosts the WDC using regex to the secondary whitelist to allow anything on the domain (it's internal), and still Tableau Server cannot access it.

      -When inspecting the logs (specifically tabprotosrv_bk.txt), I see "Secondary whitelist check passed for the request" after the request is initiated, so the whitelists appear to be configured correctly.

       

      I've seen and commented on a similar question here, but was advised by Tableau support to ask specifically in this sub-group.


      Thanks for any pointers you might be able to provide.


      Cheers,

       

       

      Lasse

        • 1. Re: Getting "InitAPIObj Unable to load URL" error when refreshing whitelisted WDC
          Brendan Lee

          Hmm, I haven't seen this specific error before and it seems like you have configured the environment correctly - thanks for confirming the whitelists are in place and working.  Let me see if I am able to reproduce this issue on my end.


          One thing you could try in the meantime is running one of the developer samples on your server.  This could help narrow down if it's a product issue or an issue with the specific connector you are using. 

          • 2. Re: Getting "InitAPIObj Unable to load URL" error when refreshing whitelisted WDC
            Lasse Thorenfeldt

            Hi Brendan,


            Thanks for the quick reply. I will take a look at running one of the sample connectors and report back, but it will take a bit as our server sits on a box with very restricted network, and allowing new domains takes a back and forth with our network security team, so I will need to either modify them to not call external domains or get those external domains whitelisted.

             

            Cheers,


            Lasse

            • 3. Re: Getting "InitAPIObj Unable to load URL" error when refreshing whitelisted WDC
              Lasse Thorenfeldt

              Hi again Brendan,

               

              I've been able to test the IncrementalRefreshConnector from the WDC sample kit and gotten it to work fine when I run an incremental refresh from server. This was hosted on a separate server on our internal network (similar to the problematic Presto WDC from the original post).

               

              In the process, discovered a faulty egress proxy setting on our Dev server where this testing is being done that prevented the server from contacting the WDC correctly. However, even with this fixed, while I no longer see the "unable to load URL" error I am seeing strange behavior, as outlined below.

              1. Connect to the internally hosted Presto WDC from Tableau Desktop (installed on same machine as Dev version of Tableau Server to verify network connectivity).
              2. Use a small query to create a sample workbook and publish to Dev Tableau Server.
              3. Run an extract refresh on Tableau Server. It times out after 2 hours, and on the Presto side we see no attempted connections from Tableau (the Presto coordinator shows all attempted queries)
              4. Open the published workbook again in Tableau Desktop sitting on the server box, run a manual refresh. It works (verifying that connection details for WDC were correctly embedded after publishing).

               

              Can't quite wrap my head around what's going on here. The same machine is able to execute a refresh from Tableau Desktop but not from Tableau Server against the same WDC.

               

              Any thoughts on best ways to try to debug?


              Cheers,

               

               

              Lasse

              • 4. Re: Getting "InitAPIObj Unable to load URL" error when refreshing whitelisted WDC
                Crystal D'souza

                Lasse Thorenfeldt We are facing the same issue as you described. We too are using an internally hosted Web Connector.

                 

                we have already tested the web connector path on the browser of the server hosting machine, and it works.

                 

                The data refreshes just fine when refreshed using the Tableau Desktop(10.2.1) installed on the Tableau Server(10.2.1) hosting Machine. Which leads to me believe that connectivity is not an issue. However, a manual/scheduled refresh on the server itself throws up an error : "com.tableausoftware.nativeapi.dll.DataSourceException: WebDataRequestor::InitAPIObj Unable to load URL: <WDC Path>"

                 

                Have you been able to figure this out and solve the issue?

                 

                Any pointers would be of great help.

                • 5. Re: Getting "InitAPIObj Unable to load URL" error when refreshing whitelisted WDC
                  Lasse Thorenfeldt

                  Hi Crystal,

                   

                  Unfortunately we were never able to get this fixed. In our case, we were able to get the native Presto connector to work with the open-source version of Presto, so that eliminated our need for the problematic WDC. After that, we didn't pursue it further.


                  Sorry I can't be of more help.

                   

                   

                  Lasse

                  • 6. Re: Getting "InitAPIObj Unable to load URL" error when refreshing whitelisted WDC
                    Crystal D'souza

                    Hi Lasse Thorenfeldt,

                     

                    Thanks for your input. :-) However, we were able to figure it out and the WDC refresh on the server now seems to be working fine.

                     

                    Since our WDC was an internal one, We just needed to add the WDC domain address (without https) to the Exception list under LAN Connections on the Tableau Server machine and it worked perfectly.

                     

                    We had some help from the tableau support team and in the end, It turned out to be a pretty simple solution.

                    Hope this helps!

                     

                    Regards,

                    Crystal