Providers Error - (event provider with Java Class can not be triggered automatically)

19 views
Skip to first unread message

Deesh Banneheka

unread,
Aug 21, 2017, 8:14:40 AM8/21/17
to Information Workbench Discussions
Hi everyone

on triggering event provider with java query class getting a error as bellow.
but it can be run manually. (manuel click on run button)

thanks for your feedback.

cheers
Jagath & Joy

Unauthorized access to Java stored procedure: current user does not have required permissions to execute xxx.xxxx.xxxx.query.NetworkSettingsChecker#query
com.fluidops.iwb.api.query.FromStringQueryBuilder$FromStringJavaQueryBuilder.doBuild(FromStringQueryBuilder.java:307)
com.fluidops.iwb.api.query.QueryBuilder.build(QueryBuilder.java:400)
com.fluidops.iwb.provider.AbstractSPARQLSelectProvider.gather(AbstractSPARQLSelectProvider.java:34)
com.fluidops.iwb.api.ProviderServiceImpl.load(ProviderServiceImpl.java:933)
com.fluidops.iwb.api.ProviderServiceImpl.runProvider(ProviderServiceImpl.java:447)
com.fluidops.iwb.api.ProviderServiceImpl$ProviderSchedulable.call(ProviderServiceImpl.java:802)
com.fluidops.iwb.api.ProviderServiceImpl$ProviderSchedulable.call(ProviderServiceImpl.java:757)
com.fluidops.util.concurrent.AbstractScheduler$ReschedulableCallable$2.call(AbstractScheduler.java:274)
java.util.concurrent.FutureTask.run(Unknown Source)
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source)
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Andreas Schwarte

unread,
Aug 21, 2017, 9:02:37 AM8/21/17
to iwb-dis...@googlegroups.com

Hello,

 

The issue you are seeing is a security feature: we are checking whether the current user is authorized to execute the java stored procedure (or generally a code execution method). For this we use the “authorizationId” which can be specified in the @CallableFromWidget annotation.

 

Currently provider runs are not executed in a controllable user-context (i.e. it is not possible to allow access to a specific authorization ID.

 

For you the workaround is to allow general execution of the java stored procedure for everybody:

 

@CallableFromWidget(authorization = CodeExecution.EVERYBODY_AUTHORIZATION)

 

We are working on improving the user context in provider runs.

 

Hope this helps.

 

Best,

Andreas

--
You received this message because you are subscribed to the Google Groups "Information Workbench Discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to iwb-discussio...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Deesh Banneheka

unread,
Aug 24, 2017, 7:32:46 AM8/24/17
to Information Workbench Discussions
Thanks a lot!

Cheers
Jagath
Reply all
Reply to author
Forward
0 new messages