[prev in list] [next in list] [prev in thread] [next in thread]
List: jboss-user
Subject: [jboss-user] [jBPM] - Re: PermissionDeniedException on task Claim
From: José_Luis_Granda <do-not-reply () jboss ! com>
Date: 2011-04-29 15:29:36
Message-ID: 2-592991-3-82770-1300099605685-2-602743-3-77589-1304090965945.jivesbs.jivemailuser () http://community ! jboss ! org
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
José Luis Granda [http://community.jboss.org/people/jlgranda81] created the \
discussion
"Re: PermissionDeniedException on task Claim"
To view the discussion, visit: http://community.jboss.org/message/602743#602743
--------------------------------------------------------------
Sure, it is my claim method
public static void claimTask(TaskClient client, long taskId, String userId) throws \
InterruptedException {
BlockingTaskOperationResponseHandler responseHandler = new \
BlockingTaskOperationResponseHandler();
responseHandler.waitTillDone(5000);
// Thread.sleep(10000);
responseHandler = new BlockingTaskOperationResponseHandler();
client.claim(taskId, userId, responseHandler);
responseHandler.waitTillDone(5000);
}
I have a procces with two human tasks, each one assing to Group \
ridrensur.financiero.secretaria (see bpmn fragment after). When I start process the \
first task is created with createby_id and actualowner_id to \
ridrensur.financiero.secretaria, it is a group in organizationalentity
<potentialOwner>
<resourceAssignmentExpression>
<formalExpression>ridrensur.financiero.secretaria</formalExpression>
</resourceAssignmentExpression>
</potentialOwner>
I have code for list Group Task
public static List<TaskSummary> getUnassignedTasks(TaskClient client, String idRef,
List<String> roles, String participationType) {
List<TaskSummary> result = new ArrayList<TaskSummary>();
try {
BlockingTaskSummaryResponseHandler responseHandler = new \
BlockingTaskSummaryResponseHandler(); if (roles == null) {
client.getTasksAssignedAsPotentialOwner(idRef, \
"en-UK", responseHandler);
} else {
client.getTasksAssignedAsPotentialOwner(idRef, roles, \
"en-UK", responseHandler);
}
result = responseHandler.getResults();
} catch (Throwable t) {
t.printStackTrace();
}
return result;
}
It not works by ridrensur.financiero.secretaria is a Group, for run it I have to \
change createby_id to "Administrator" and actualowner_id to null in task, then \
getUnassignedTasks method works correctly. In the group list view I have claim for an \
user the first task from my user view button labeling as "claim", get current user \
from session. This button call for claimTask method.
I trace claim method on org.jbpm.task.service.TaskClient ( \
https://github.com/krisv/jbpm/blob/master/jbpm-human-task/src/main/java/org/jbpm/task/service/TaskClient.java \
https://github.com/krisv/jbpm/blob/master/jbpm-human-task/src/main/java/org/jbpm/task/service/TaskClient.java) \
and org.jbpm.task.service.TaskServiceSession.java
I get trace exception
10:13:43,780 ERROR [STDERR] org.jbpm.task.service.PermissionDeniedException: User \
'[User:'joseluis']' does not have permissions to execution operation 'Claim' on task \
id 258 10:13:43,780 ERROR [STDERR] at \
org.jbpm.task.service.TaskServiceSession.evalCommand(TaskServiceSession.java:206) \
10:13:43,780 ERROR [STDERR] at \
org.jbpm.task.service.TaskServiceSession.taskOperation(TaskServiceSession.java:344) \
10:13:43,780 ERROR [STDERR] at \
org.jbpm.task.service.TaskServerHandler.messageReceived(TaskServerHandler.java:84) \
10:13:43,780 ERROR [STDERR] at \
org.jbpm.task.service.mina.MinaTaskServerHandler.messageReceived(MinaTaskServerHandler.java:41)
10:13:43,780 ERROR [STDERR] at \
org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:752)
...
Message receieved on client : OperationResponse
10:13:43,793 INFO [STDOUT] [2011-04-29 10:13:43,792:debug] Arguments : \
[org.jbpm.task.service.PermissionDeniedException: User '[User:'joseluis']' does not \
have permissions to execution operation 'Claim' on task id 258] 10:13:43,793 ERROR \
[STDERR] org.jbpm.task.service.PermissionDeniedException: Server-side Exception: User \
'[User:'joseluis']' does not have permissions to execution operation 'Claim' on task \
id 258 10:13:43,794 ERROR [STDERR] at \
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 10:13:43,794 \
ERROR [STDERR] at \
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
10:13:43,794 ERROR [STDERR] at \
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
10:13:43,794 ERROR [STDERR] at \
java.lang.reflect.Constructor.newInstance(Constructor.java:513) 10:13:43,794 ERROR \
[STDERR] at org.jbpm.task.service.responsehandlers.AbstractBaseResponseHandler.createSideException(AbstractBaseResponseHandler.java:74)
10:13:43,794 ERROR [STDERR] at \
org.jbpm.task.service.responsehandlers.AbstractBlockingResponseHandler.waitTillDone(AbstractBlockingResponseHandler.java:48)
10:13:43,794 ERROR [STDERR] at \
org.loxageek.jbpm.server.TaskServerUtilities.claimTask(TaskServerUtilities.java:197) \
10:13:43,794 ERROR [STDERR] at \
org.loxageek.ppless.client.action.TaskAction.claimTask(TaskAction.java:162)
*I trace isAllowed method in org.jbpm.task.service.TaskServiceSession.java. The \
question is: How I can register claim operation for user member of group or anyone? \
and how will define group assingment in XML? Thanks.*
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/602743#602743]
Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
[Attachment #5 (text/html)]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; \
margin: 0; padding: 20px;">
<div>
<table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: \
1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; \
-webkit-border-radius: 6px;"> <tbody>
<tr>
<td>
<table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" \
style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: \
6px; -webkit-border-radius: 6px;"> <tbody>
<tr>
<td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px \
solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; \
-moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; \
-webkit-border-top-left-radius: 5px;">
<h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; \
margin: 0; display: block !important;">
<!-- To have a header image/logo replace the name below with your img tag \
-->
<!-- Email clients will render the images when the message is read so any \
image -->
<!-- must be made available on a public server, so that all recipients can \
load the image. -->
<a href="http://community.jboss.org/index.jspa" style="text-decoration: \
none; color: #E1E1E1">JBoss Community</a></h1> </td>
</tr>
<tr>
<td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; \
color:#333333; padding: 20px; -moz-border-radius-bottomleft: 4px; \
-moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; \
-webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: \
17px; font-weight: normal;"> Re: PermissionDeniedException on task Claim
</h3>
<span style="margin-bottom: 10px;">
created by <a href="http://community.jboss.org/people/jlgranda81">José Luis \
Granda</a> in <i>jBPM</i> - <a \
href="http://community.jboss.org/message/602743#602743">View the full discussion</a> \
</span> <hr style="margin: 20px 0; border: none; background-color: #dadada; height: \
1px;">
<div class="jive-rendered-content"><p>Sure, it is my claim method</p><p \
style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>public static void \
claimTask(TaskClient client, long taskId, String userId) throws InterruptedException \
{</p><p style="min-height: 8pt; height: 8pt; padding: \
0px;"> </p><p>        \
BlockingTaskOperationResponseHandler responseHandler = new \
BlockingTaskOperationResponseHandler();</p><p style="min-height: 8pt; height: 8pt; \
padding: 0px;"> </p><p>        \
responseHandler.waitTillDone(5000);</p><p style="min-height: 8pt; height: 8pt; \
padding: 0px;"> </p><p>        // \
Thread.sleep(10000);</p><p style="min-height: 8pt; height: 8pt; padding: \
0px;"> </p><p>        responseHandler = new \
BlockingTaskOperationResponseHandler();</p><p style="min-height: 8pt; height: 8pt; \
padding: 0px;"> </p><p>        </p><p \
style="min-height: 8pt; height: 8pt; padding: \
0px;"> </p><p>        client.claim(taskId, \
userId, responseHandler);</p><p style="min-height: 8pt; height: 8pt; padding: \
0px;"> </p><p>        \
responseHandler.waitTillDone(5000);</p><p style="min-height: 8pt; height: 8pt; \
padding: 0px;"> </p><p>    }</p><p style="min-height: 8pt; \
height: 8pt; padding: 0px;"> </p><p>I have a procces with two human tasks, each \
one assing to Group ridrensur.financiero.secretaria (see bpmn fragment after). When I \
start process the first task is created with createby_id and actualowner_id to \
ridrensur.financiero.secretaria, it is a group in organizationalentity</p><p \
style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p> \
<potentialOwner></p><p>        \
<resourceAssignmentExpression></p><p>          \
<formalExpression>ridrensur.financiero.secretaria</formalExpression></p><p>        \
</resourceAssignmentExpression></p><p>      \
</potentialOwner></p><p style="min-height: 8pt; height: 8pt; padding: \
0px;"> </p><p>I have code for list Group Task</p><p style="min-height: 8pt; \
height: 8pt; padding: 0px;"> </p><p>public static List<TaskSummary> \
getUnassignedTasks(TaskClient client, String idRef, \
</p><p>            \
List<String> roles, String participationType) \
{</p><p>        List<TaskSummary> result = \
new ArrayList<TaskSummary>();</p><p>        \
try {</p><p>            \
BlockingTaskSummaryResponseHandler responseHandler = new \
BlockingTaskSummaryResponseHandler();</p><p>            \
if (roles == null) {</p><p>                \
client.getTasksAssignedAsPotentialOwner(idRef, \
"en-UK",</p><p>                        \
responseHandler);</p><p>            \
} else {</p><p>                \
client.getTasksAssignedAsPotentialOwner(idRef, roles, \
"en-UK",</p><p>                        \
responseHandler);</p><p>            \
}</p><p>            result = \
responseHandler.getResults();</p><p>        } \
catch (Throwable t) {</p><p>            \
t.printStackTrace();</p><p>        \
}</p><p>        return \
result;</p><p>    }</p><p>It not works by \
ridrensur.financiero.secretaria is a Group, for run it I have to change createby_id \
to "Administrator" and actualowner_id to null in task, then getUnassignedTasks method \
works correctly. In the group list view I have claim for an user the first task from \
my user view button labeling as "claim", get current user from session. This button \
call for claimTask method. </p><p style="min-height: 8pt; height: 8pt; padding: \
0px;"> </p><p><span>I trace claim method on org.jbpm.task.service.TaskClient \
(</span><a class="jive-link-external-small" \
href="https://github.com/krisv/jbpm/blob/master/jbpm-human-task/src/main/java/org/jbpm/task/service/TaskClient.java" \
target="_blank">https://github.com/krisv/jbpm/blob/master/jbpm-human-task/src/main/java/org/jbpm/task/service/TaskClient.java</a><span>) \
and org.jbpm.task.service.TaskServiceSession.java</span></p><p style="min-height: \
8pt; height: 8pt; padding: 0px;"> </p><p>I get trace exception</p><p \
style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>10:13:43,780 ERROR \
[STDERR] org.jbpm.task.service.PermissionDeniedException: User '[User:'joseluis']' \
does not have permissions to execution operation 'Claim' on task id \
258</p><p>10:13:43,780 ERROR [STDERR]     at \
org.jbpm.task.service.TaskServiceSession.evalCommand(TaskServiceSession.java:206)</p><p>10:13:43,780 \
ERROR [STDERR]     at \
org.jbpm.task.service.TaskServiceSession.taskOperation(TaskServiceSession.java:344)</p><p>10:13:43,780 \
ERROR [STDERR]     at \
org.jbpm.task.service.TaskServerHandler.messageReceived(TaskServerHandler.java:84)</p><p>10:13:43,780 \
ERROR [STDERR]     at \
org.jbpm.task.service.mina.MinaTaskServerHandler.messageReceived(MinaTaskServerHandler.java:41)</p><p>10:13:43,780 \
ERROR [STDERR]     at \
org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:752)</p><p \
style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>... </p><p \
style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>Message receieved on \
client : OperationResponse</p><p>10:13:43,793 INFO  [STDOUT] [2011-04-29 \
10:13:43,792:debug] Arguments : [org.jbpm.task.service.PermissionDeniedException: \
User '[User:'joseluis']' does not have permissions to execution operation 'Claim' on \
task id 258]</p><p>10:13:43,793 ERROR [STDERR] \
org.jbpm.task.service.PermissionDeniedException: Server-side Exception: User \
'[User:'joseluis']' does not have permissions to execution operation 'Claim' on task \
id 258</p><p>10:13:43,794 ERROR [STDERR]     at \
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native \
Method)</p><p>10:13:43,794 ERROR [STDERR]     at \
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)</p><p>10:13:43,794 \
ERROR [STDERR]     at \
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)</p><p>10:13:43,794 \
ERROR [STDERR]     at \
java.lang.reflect.Constructor.newInstance(Constructor.java:513)</p><p>10:13:43,794 \
ERROR [STDERR]     at \
org.jbpm.task.service.responsehandlers.AbstractBaseResponseHandler.createSideException(AbstractBaseResponseHandler.java:74)</p><p>10:13:43,794 \
ERROR [STDERR]     at \
org.jbpm.task.service.responsehandlers.AbstractBlockingResponseHandler.waitTillDone(AbstractBlockingResponseHandler.java:48)</p><p>10:13:43,794 \
ERROR [STDERR]     at \
org.loxageek.jbpm.server.TaskServerUtilities.claimTask(TaskServerUtilities.java:197)</p><p>10:13:43,794 \
ERROR [STDERR]     at \
org.loxageek.ppless.client.action.TaskAction.claimTask(TaskAction.java:162)</p><p \
style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><strong>I trace \
isAllowed method in org.jbpm.task.service.TaskServiceSession.java. The question is: \
How I can register claim operation for user member of group or anyone? and how will \
define group assingment in XML? Thanks.</strong></p></div>
<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
<p style="margin: 0;">Reply to this message by <a \
href="http://community.jboss.org/message/602743#602743">going to Community</a></p> \
<p style="margin: 0;">Start a new discussion in jBPM at <a \
href="http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034">Community</a></p>
</div></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic