On 15/05/2012 14:12, Sarris Overbosch | Everett wrote:
> Hi,
>
> I'm currently busy migrating to 0.7.1 version and the web application we 
> build to register user, which works against the previous version of Syncope, 
> is not working anymore. The cause is that in the SyncopeUser
> object the username cannot be null, we don't provide a username as we don't 
> want the user to be able to log in to the console. (We use the rest interface)
>
> What bothers me the most is the exception which is thrown, this is it:
>
> SEVERE: Servlet.service() for servlet [syncope-core-rest] in context with 
> path [/syncope] threw exception [Request processing failed; nested exception 
> is
> org.syncope.core.persistence.validation.entity.InvalidEntityException:
> SyncopeUser [username: may not be null]] with root cause
> org.syncope.core.persistence.validation.entity.InvalidEntityException:
> SyncopeUser [username: may not be null]
>         at
> org.syncope.core.persistence.validation.entity.EntityValidationInterceptor.save(EntityValidationInterceptor.java:59)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
> I would have expected this problem to be noticed before the actual persist 
> action (but that's just me)

Hi Sarris,
since its very early days, Syncope validates each JPA entity (using one
of available Bean Validation Spec JST 303 implementations - currently
Apache BVal) during merge on the EntityManager context: an invalid
entity against the specified constraint will cause the underlying
transaction to rollback.
AFAIK this is in line with the above mentioned specification.

> The actual question I have is, why can't the username be empty?  (I can work 
> around this problem by using some other unique information from the user, but 
> I'm just curious to the why question)

Probably the main reason is that username is required for users to
authenticate to RESTful services, (including admin console): in the
past, as you know, user id was used for such purpose, but we changed
that in 0.7.X.

Regards.

-- 
Francesco Chicchiriccò

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

Reply via email to