My User definitely doesn't exist, I checked with MySQL Query Browser.
The exception occurs in UserDaoHibernate.saveOrUpdate().
Below is my output after turning up Hibernate logging to DEBUG, I can't see
anything wrong, can you?
Mike
UserDaoHibernate.saveUser(52) | About to call saveOrUpdate()...
AbstractSaveEventListener.getEntityState(489) | transient instance of:
org.appfuse.model.User
DefaultSaveOrUpdateEventListener.entityIsTransient(161) | saving transient
instance
AbstractSaveEventListener.performSave(152) | saving
[org.appfuse.model.User#<null>]
AbstractSaveEventListener.performSaveOrReplicate(240) | executing insertions
Cascade.cascade(115) | processing cascade ACTION_SAVE_UPDATE for:
org.appfuse.model.User
Cascade.cascade(150) | done processing cascade ACTION_SAVE_UPDATE for:
org.appfuse.model.User
Versioning.seed(42) | Seeding: 0
JDBCTransaction.rollback(152) | rollback
JDBCTransaction.toggleAutoCommit(193) | re-enabling autocommit
JDBCTransaction.rollback(163) | rolled back JDBC Connection
JDBCContext.afterTransactionCompletion(215) | after transaction completion
ConnectionManager.afterTransaction(296) | transaction completed on session
with on_close connection release mode; be sure to close the session to
release JDBC resources!
SessionImpl.afterTransactionCompletion(422) | after transaction completion
SessionImpl.setFlushMode(1289) | setting flush mode to: NEVER
SessionImpl.disconnect(374) | disconnecting session
ConnectionManager.cleanup(374) | performing cleanup
ConnectionManager.closeConnection(435) | releasing JDBC connection [ (open
PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
JDBCContext.afterTransactionCompletion(215) | after transaction completion
ConnectionManager.afterTransaction(296) | transaction completed on session
with on_close connection release mode; be sure to close the session to
release JDBC resources!
SessionImpl.afterTransactionCompletion(422) | after transaction completion
ApplyForm.errMsg(373) | User 'test6' already exists!
ApplyForm.cmApprove(202) | User exists so deleting its newly cre'd cons, Id=
132
mraible wrote:
>
> You might turn up Hibernate logging (in log4j.xml) - that way you can
> see if the error is happening at the database level. I suspect it is
> and your user really does already exist.
>
> Matt
>
> On 8/16/07, mikebgx <[EMAIL PROTECTED]> wrote:
>>
>> I'm having problems creating a User from within my app. It seems to think
>> the
>> User already exists.
>> Any ideas please?
>>
>> Mike
>>
>>
>> Here's my output:
>> (I'm logged in as test hence the msg: Verifying that 'test' can modify
>> 'test6')
>>
>> ApplyForm.cmApprove(133) | User test6 not found, OK, creating cons...
>> ApplyForm.cmApprove(150) | Saved cons, email= test6 - its Id= 126
>> ApplyForm.cmApprove(180) | About to save user: ...
>> UserSecurityAdvice.before(70) | Verifying that 'test' can modify 'test6'
>> UserDaoHibernate.saveUser(49) | user's id: null
>> ApplyForm.errMsg(373) | User 'test6' already exists!
>> ApplyForm.cmApprove(200) | User exists so deleting its newly cre'd cons,
>> Id=
>> 126
>>
>>
>> And here's the code:
>> try {
>> User u2= userManager.getUserByUsername(em);
>> userExists= true;
>> } catch (UsernameNotFoundException e) {
>> userExists= false;
>> }
>> if (userExists) {
>> errMsg("Username "+ em+ " already exists");
>> return null;
>> }
>>
>> log.debug("User "+ em+ " not found, OK, creating cons...");
>> //DBG
>> ....
>> log.debug("Saved cons, email= "+ em+ " - its Id= "+ consId);
>>
>> User usr = new User();
>> usr.setConsId(consId); // So this user only sees their own cons
>> rec.
>> usr.setUsername(em);
>> usr.setPassword(pwd);
>> usr.setConfirmPassword(pwd);
>> usr.setEmail(em);
>> usr.setFirstName(apply.getForename());
>> usr.setLastName(apply.getSurname());
>> usr.setPhoneNumber(apply.getPhoneMobile());
>> usr.setEnabled(true);
>>
>> // Encrypt pwd...
>> Boolean encrypt = (Boolean)
>> getConfiguration().get(Constants.ENCRYPT_PASSWORD);
>> if (encrypt != null && encrypt.booleanValue()) {
>> String algorithm = (String)
>> getConfiguration().get(Constants.ENC_ALGORITHM);
>> if (algorithm == null) { // should only happen for test case
>> if (log.isDebugEnabled()) {
>> log.debug("assuming testcase, setting algorithm to
>> 'SHA'");
>> }
>> algorithm = "SHA";
>> }
>> usr.setPassword(StringUtil.encodePassword(usr.getPassword(),
>> algorithm));
>> }
>>
>> // Set the default user role on this new user
>> usr.addRole(roleManager.getRole(Constants.USER_ROLE));
>>
>> try {
>> log.debug("About to save user: "+ usr); //DBG
>> 45: userManager.saveUser(usr);
>> ....
>>
>> } catch (UserExistsException e) {
>> errMsg(e.getMessage());
>> log.debug("User exists so deleting its newly
>> cre'd cons, Id= "+ consId);
>> consultantManager.removeConsultant(""+ consId);
>> // redisplay the unencrypted passwords
>> usr.setPassword(usr.getConfirmPassword());
>> }
>>
>>
>> Line 45 throws UserExistsException
>>
>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Signup-tf4279429s2369.html#a12180682
>> Sent from the AppFuse - User mailing list archive at Nabble.com.
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
>
> --
> http://raibledesigns.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
--
View this message in context:
http://www.nabble.com/Signup-tf4279429s2369.html#a12184718
Sent from the AppFuse - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]