You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@syncope.apache.org by Bob Lannoy <bo...@gmail.com> on 2012/04/25 13:10:20 UTC

Workflow exception

Hi,

I managed to get the existing workflow going but now I get an
exception when doing the approval.
I created a user and the admin gets an approval task.
When I set it to approve and press save I get this in the core-rest.log

12:18:17.792 ERROR
org.apache.syncope.core.rest.controller.AbstractController - Exception
thrown by REST methods
java.lang.RuntimeException: javax.crypto.BadPaddingException: Given
final block not properly padded
	at org.identityconnectors.common.security.impl.EncryptorImpl.decrypt(EncryptorImpl.java:87)
~[framework-internal-1.3.1.jar:na]
	at org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.decrypt(ActivitiUserWorkflowAdapter.java:180)
~[ActivitiUserWorkflowAdapter.class:na]
	at org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.submitForm(ActivitiUserWorkflowAdapter.java:644)
~[ActivitiUserWorkflowAdapter.class:na]
...

Any ideas on what's happening?

Bob

Fwd: Workflow exception

Posted by Bob Lannoy <bo...@gmail.com>.
Hi,

I found the cause.
The datasource definition had no "?characterEncoding=UTF-8 "

(stupid stupid stupid)
Sorry guys

This could also be the cause for my DB export troubles, I'm going to check that

Bob


---------- Forwarded message ----------
From: Bob Lannoy <bo...@gmail.com>
Date: 26 April 2012 14:32
Subject: Re: Workflow exception
To: syncope-user@incubator.apache.org


Hi Francesco,

it's the standard workflow file so without customisations except for
other values for some conditions:
${!syncopeUser.getRoleIds().contains(10)} in first step and
activiti:candidateGroups="7" for the form.

I took a fresh snapshot archetype to start over.
In embedded mode it runs fine.

However when I deploy to my Tomcat (6.0.35)/ Mysql (5.5)
infrastructure , put in my persistence.properties & context.xml it
doesn't.
I looked into the MySQL DB and i found this in the table ACT_RU_VARIABLE:
'20', '1', 'string', 'encryptedPwd', '7', '7', NULL, NULL, NULL, NULL,
'????????', NULL

the ??????? should be the encrypted password I guess

Bob





2012/4/26 Francesco Chicchiriccò <il...@apache.org>:
> On 26/04/2012 12:28, Bob Lannoy wrote:
>>
>> I started from scratch with the default content.xml file.
>> I still get javax.crypto.BadPaddingException: Given final block not
>> properly padded
>
>
> Bob,
> approval is part of standard test case, which runs fine on MySQL,
> PostgreSQL, Oracle and H2.
>
> I think that your problem depends on your customizations, then: can you
> provide your userWorkflow.bpm20.xml?
>
> Thanks.
> Regards.
>
>
>> 2012/4/26 Francesco Chicchiriccò<il...@apache.org>:
>>>
>>> On 25/04/2012 13:10, Bob Lannoy wrote:
>>>>
>>>> Hi,
>>>>
>>>> I managed to get the existing workflow going but now I get an exception
>>>> when doing the approval.
>>>> I created a user and the admin gets an approval task.
>>>> When I set it to approve and press save I get this in the core-rest.log
>>>>
>>>> 12:18:17.792 ERROR
>>>> org.apache.syncope.core.rest.controller.AbstractController - Exception
>>>> thrown by REST methods
>>>> java.lang.RuntimeException: javax.crypto.BadPaddingException: Given
>>>> final block not properly padded
>>>>        at
>>>>
>>>> org.identityconnectors.common.security.impl.EncryptorImpl.decrypt(EncryptorImpl.java:87)
>>>> ~[framework-internal-1.3.1.jar:na]
>>>>        at
>>>>
>>>> org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.decrypt(ActivitiUserWorkflowAdapter.java:180)
>>>> ~[ActivitiUserWorkflowAdapter.class:na]
>>>>        at
>>>>
>>>> org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.submitForm(ActivitiUserWorkflowAdapter.java:644)
>>>> ~[ActivitiUserWorkflowAdapter.class:na]
>>>> ...
>>>>
>>>> Any ideas on what's happening?
>>>
>>>
>>> When an user is created and subject to approval, his password is stored,
>>> encrypted, as workflow property.
>>>
>>> When someone approves an user, this saved password is decrypted (in order
>>> to
>>> be propagated to external resources, for example).
>>> It seems that in your case such encrypted password is not valid: don't
>>> have
>>> idea about the reason, though: it seems like the content of your database
>>> is
>>> not valid anymore, for binary workflow properties.
>>> Since this might be related to SYNCOPE-65, could you try approval
>>> starting
>>> with an empty database and a content.xml that was not produced by an
>>> export?
>>>
>>> Regards.
>
> --
> Francesco Chicchiriccò
>
> Apache Cocoon PMC and Apache Syncope PPMC Member
> http://people.apache.org/~ilgrosso/
>

Re: Workflow exception

Posted by Bob Lannoy <bo...@gmail.com>.
Hi Francesco,

it's the standard workflow file so without customisations except for
other values for some conditions:
${!syncopeUser.getRoleIds().contains(10)} in first step and
activiti:candidateGroups="7" for the form.

I took a fresh snapshot archetype to start over.
In embedded mode it runs fine.

However when I deploy to my Tomcat (6.0.35)/ Mysql (5.5)
infrastructure , put in my persistence.properties & context.xml it
doesn't.
I looked into the MySQL DB and i found this in the table ACT_RU_VARIABLE:
'20', '1', 'string', 'encryptedPwd', '7', '7', NULL, NULL, NULL, NULL,
'????????', NULL

the ??????? should be the encrypted password I guess

Bob





2012/4/26 Francesco Chicchiriccò <il...@apache.org>:
> On 26/04/2012 12:28, Bob Lannoy wrote:
>>
>> I started from scratch with the default content.xml file.
>> I still get javax.crypto.BadPaddingException: Given final block not
>> properly padded
>
>
> Bob,
> approval is part of standard test case, which runs fine on MySQL,
> PostgreSQL, Oracle and H2.
>
> I think that your problem depends on your customizations, then: can you
> provide your userWorkflow.bpm20.xml?
>
> Thanks.
> Regards.
>
>
>> 2012/4/26 Francesco Chicchiriccò<il...@apache.org>:
>>>
>>> On 25/04/2012 13:10, Bob Lannoy wrote:
>>>>
>>>> Hi,
>>>>
>>>> I managed to get the existing workflow going but now I get an exception
>>>> when doing the approval.
>>>> I created a user and the admin gets an approval task.
>>>> When I set it to approve and press save I get this in the core-rest.log
>>>>
>>>> 12:18:17.792 ERROR
>>>> org.apache.syncope.core.rest.controller.AbstractController - Exception
>>>> thrown by REST methods
>>>> java.lang.RuntimeException: javax.crypto.BadPaddingException: Given
>>>> final block not properly padded
>>>>        at
>>>>
>>>> org.identityconnectors.common.security.impl.EncryptorImpl.decrypt(EncryptorImpl.java:87)
>>>> ~[framework-internal-1.3.1.jar:na]
>>>>        at
>>>>
>>>> org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.decrypt(ActivitiUserWorkflowAdapter.java:180)
>>>> ~[ActivitiUserWorkflowAdapter.class:na]
>>>>        at
>>>>
>>>> org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.submitForm(ActivitiUserWorkflowAdapter.java:644)
>>>> ~[ActivitiUserWorkflowAdapter.class:na]
>>>> ...
>>>>
>>>> Any ideas on what's happening?
>>>
>>>
>>> When an user is created and subject to approval, his password is stored,
>>> encrypted, as workflow property.
>>>
>>> When someone approves an user, this saved password is decrypted (in order
>>> to
>>> be propagated to external resources, for example).
>>> It seems that in your case such encrypted password is not valid: don't
>>> have
>>> idea about the reason, though: it seems like the content of your database
>>> is
>>> not valid anymore, for binary workflow properties.
>>> Since this might be related to SYNCOPE-65, could you try approval
>>> starting
>>> with an empty database and a content.xml that was not produced by an
>>> export?
>>>
>>> Regards.
>
> --
> Francesco Chicchiriccò
>
> Apache Cocoon PMC and Apache Syncope PPMC Member
> http://people.apache.org/~ilgrosso/
>

Re: Workflow exception

Posted by Francesco Chicchiriccò <il...@apache.org>.
On 26/04/2012 12:28, Bob Lannoy wrote:
> I started from scratch with the default content.xml file.
> I still get javax.crypto.BadPaddingException: Given final block not
> properly padded

Bob,
approval is part of standard test case, which runs fine on MySQL, 
PostgreSQL, Oracle and H2.

I think that your problem depends on your customizations, then: can you 
provide your userWorkflow.bpm20.xml?

Thanks.
Regards.

> 2012/4/26 Francesco Chicchiriccò<il...@apache.org>:
>> On 25/04/2012 13:10, Bob Lannoy wrote:
>>> Hi,
>>>
>>> I managed to get the existing workflow going but now I get an exception
>>> when doing the approval.
>>> I created a user and the admin gets an approval task.
>>> When I set it to approve and press save I get this in the core-rest.log
>>>
>>> 12:18:17.792 ERROR
>>> org.apache.syncope.core.rest.controller.AbstractController - Exception
>>> thrown by REST methods
>>> java.lang.RuntimeException: javax.crypto.BadPaddingException: Given
>>> final block not properly padded
>>>         at
>>> org.identityconnectors.common.security.impl.EncryptorImpl.decrypt(EncryptorImpl.java:87)
>>> ~[framework-internal-1.3.1.jar:na]
>>>         at
>>> org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.decrypt(ActivitiUserWorkflowAdapter.java:180)
>>> ~[ActivitiUserWorkflowAdapter.class:na]
>>>         at
>>> org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.submitForm(ActivitiUserWorkflowAdapter.java:644)
>>> ~[ActivitiUserWorkflowAdapter.class:na]
>>> ...
>>>
>>> Any ideas on what's happening?
>>
>> When an user is created and subject to approval, his password is stored,
>> encrypted, as workflow property.
>>
>> When someone approves an user, this saved password is decrypted (in order to
>> be propagated to external resources, for example).
>> It seems that in your case such encrypted password is not valid: don't have
>> idea about the reason, though: it seems like the content of your database is
>> not valid anymore, for binary workflow properties.
>> Since this might be related to SYNCOPE-65, could you try approval starting
>> with an empty database and a content.xml that was not produced by an export?
>>
>> Regards.
-- 
Francesco Chicchiriccò

Apache Cocoon PMC and Apache Syncope PPMC Member
http://people.apache.org/~ilgrosso/


Re: Workflow exception

Posted by Bob Lannoy <bo...@gmail.com>.
I started from scratch with the default content.xml file.
I still get javax.crypto.BadPaddingException: Given final block not
properly padded

Bob

2012/4/26 Francesco Chicchiriccò <il...@apache.org>:
> On 25/04/2012 13:10, Bob Lannoy wrote:
>>
>> Hi,
>>
>> I managed to get the existing workflow going but now I get an exception
>> when doing the approval.
>> I created a user and the admin gets an approval task.
>> When I set it to approve and press save I get this in the core-rest.log
>>
>> 12:18:17.792 ERROR
>> org.apache.syncope.core.rest.controller.AbstractController - Exception
>> thrown by REST methods
>> java.lang.RuntimeException: javax.crypto.BadPaddingException: Given
>> final block not properly padded
>>        at
>> org.identityconnectors.common.security.impl.EncryptorImpl.decrypt(EncryptorImpl.java:87)
>> ~[framework-internal-1.3.1.jar:na]
>>        at
>> org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.decrypt(ActivitiUserWorkflowAdapter.java:180)
>> ~[ActivitiUserWorkflowAdapter.class:na]
>>        at
>> org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.submitForm(ActivitiUserWorkflowAdapter.java:644)
>> ~[ActivitiUserWorkflowAdapter.class:na]
>> ...
>>
>> Any ideas on what's happening?
>
>
> When an user is created and subject to approval, his password is stored,
> encrypted, as workflow property.
>
> When someone approves an user, this saved password is decrypted (in order to
> be propagated to external resources, for example).
> It seems that in your case such encrypted password is not valid: don't have
> idea about the reason, though: it seems like the content of your database is
> not valid anymore, for binary workflow properties.
> Since this might be related to SYNCOPE-65, could you try approval starting
> with an empty database and a content.xml that was not produced by an export?
>
> Regards.
>
> --
> Francesco Chicchiriccò
>
> Apache Cocoon PMC and Apache Syncope PPMC Member
> http://people.apache.org/~ilgrosso/
>

Re: Workflow exception

Posted by Francesco Chicchiriccò <il...@apache.org>.
On 25/04/2012 13:10, Bob Lannoy wrote:
> Hi,
>
> I managed to get the existing workflow going but now I get an exception when doing the approval.
> I created a user and the admin gets an approval task.
> When I set it to approve and press save I get this in the core-rest.log
>
> 12:18:17.792 ERROR
> org.apache.syncope.core.rest.controller.AbstractController - Exception thrown by REST methods
> java.lang.RuntimeException: javax.crypto.BadPaddingException: Given
> final block not properly padded
> 	at org.identityconnectors.common.security.impl.EncryptorImpl.decrypt(EncryptorImpl.java:87)
> ~[framework-internal-1.3.1.jar:na]
> 	at org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.decrypt(ActivitiUserWorkflowAdapter.java:180)
> ~[ActivitiUserWorkflowAdapter.class:na]
> 	at org.apache.syncope.core.workflow.ActivitiUserWorkflowAdapter.submitForm(ActivitiUserWorkflowAdapter.java:644)
> ~[ActivitiUserWorkflowAdapter.class:na]
> ...
>
> Any ideas on what's happening?

When an user is created and subject to approval, his password is stored, 
encrypted, as workflow property.

When someone approves an user, this saved password is decrypted (in 
order to be propagated to external resources, for example).
It seems that in your case such encrypted password is not valid: don't 
have idea about the reason, though: it seems like the content of your 
database is not valid anymore, for binary workflow properties.
Since this might be related to SYNCOPE-65, could you try approval 
starting with an empty database and a content.xml that was not produced 
by an export?

Regards.

-- 
Francesco Chicchiriccò

Apache Cocoon PMC and Apache Syncope PPMC Member
http://people.apache.org/~ilgrosso/