5 Replies Latest reply on Dec 14, 2015 8:48 AM by Brendan Lee

    WDC / Tableau Server Extract Refreshes Without Local Install

    Aaron Szymanski

      I am seeing errors like this when I publish our web data connector to tableau server using tableau desktop:


      2015-12-08 16:01:23.203 +0000 (,,,) pool-11-thread-1 : ERROR com.tableausoftware.backgrounder.runner.BackgroundJobRunner - Error executing backgroundjob: :increment_extracts

      java.util.concurrent.ExecutionException: com.tableausoftware.nativeapi.dll.TableauException: Connection to an untrusted web data connector https://www.example.com:443/API/tableauwdc/ui/?resourceId=123456 is not allowed.

      The table "[TableauTemp].[webdata.42346.370246030092]" does not exist.

      Unable to connect to the server "www.example.com". Check that the server is running and that you have access privileges to the requested database.

              at java.util.concurrent.FutureTask.report(FutureTask.java:122)

              at java.util.concurrent.FutureTask.get(FutureTask.java:206)

              at com.tableausoftware.backgrounder.runner.BackgroundJobRunner.executeNextJob(BackgroundJobRunner.java:315)

              at com.tableausoftware.backgrounder.runner.BackgroundJobRunner.executeJobs(BackgroundJobRunner.java:258)

              at com.tableausoftware.backgrounder.config.BackgroundJobRunnerSchedulingConfig$1.run(BackgroundJobRunnerSchedulingConfig.java:45)

              at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)

              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)

              at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)

              at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)

              at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)

              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)


      Is there a way to configure Tableau Server to fetch web data connectors over the open internet? This seems like a better solution than expecting our users to install it locally just to have extract refreshes happen on Tableau Server (as described here: Web Data Connectors in Tableau Server). Although, I am open to being convinced that this is the wrong approach.


      There are a couple of reasons why we want to do this:

      1) We don't want our users to have to reinstall just to get bug fixes / updates

      2) We will have to support a process that will inline all of the web resources into a single file


      Would this do it? I haven't been able to test on out own instance of tableau server it since it would require some scheduled downtime. I can't justify it if its not going to work.

      tabadmin set wgserver.trusted_hosts "www.example.com"

      tabadmin config


      Message was edited by: Aaron Szymanski