Hi everyone,

I'm trying to write an action for registering users. 
I'm including the simple dev version I'm starting
with.  I get null pointer exceptions with
accountExists() and addUser().  Get somebody clue me
in to what I'm doing wrong?

Thanks in advance,
Terry

code and log follows......

    public void doPerform(RunData data, Context
context)
        throws Exception
    {
            Log.info("Registering a new user");
                TurbineUser user = new TurbineUser();
                DBSecurityService dbum = new DBSecurityService();

                // get the parameters passed in
                String fName =
data.getParameters().get("FirstName");
                String lName = data.getParameters().get("LastName");
                String uName = data.getParameters().get("UserName");
                String email = data.getParameters().get("Email");
                String password =
data.getParameters().get("Password");

                Log.debug("parameterParser: " +
data.getParameters());
                Log.debug("local vars: " + uName + password + fName
+ lName + email);
                
                // set the properties
                user.setFirstName(fName);
                user.setLastName(lName);
                user.setUserName(uName);
                user.setEmail(email);

            Log.info("checking for user: " + uName);
                // check if username already exists
                try 
                {
                        if (dbum.accountExists(uName))
                        {
                                data.setMessage("A user with this user name
already exsits.  Please choosea nother name");
                                data.setScreenTemplate("RegistrationForm.vm");
                                return;
                        }
                }
                catch (Exception e)
                {
                        Log.error("Error checking in username pre-exists",
e);
                }
                
                // store the user info
            Log.info("Attempting to create user: " + uName);
                dbum.addUser(user, password);

                // assign role
                Group group = dbum.getGlobalGroup();
                Role role = dbum.getRole("curriculum_editor");
                dbum.grant(user, group, role);

                // authenticate
                dbum.getAuthenticatedUser(uName, password);
                Log.debug("created account: " + user);
        
    }






[Fri Feb 08 13:28:22 PST 2002] -- INFO -- Registering
a new user

[Fri Feb 08 13:28:22 PST 2002] -- DEBUG --
parameterParser: {action=RegisterUser}
{username=test}
{firstname=test}
{lastname=test}
{eventsubmit_doperform=Register}
{email=}
{template=Index.vm}
{password=test}


[Fri Feb 08 13:28:22 PST 2002] -- DEBUG -- local vars:
testtesttesttest

[Fri Feb 08 13:28:22 PST 2002] -- INFO -- checking for
user: test

[Fri Feb 08 13:28:22 PST 2002] -- ERROR -- Error
checking in username pre-exists

        Exception:  java.lang.NullPointerException

        Stack Trace follows:

        java.lang.NullPointerException

        at
org.apache.turbine.services.security.BaseSecurityService.accountExists(BaseSecurityService.java:292)

        at
edu.stanford.mlkpp.curriculum.modules.actions.RegisterUser.doPerform(RegisterUser.java:49)

        at java.lang.reflect.Method.invoke(Native Method)
.
.
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)

        at
org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:371)

        at
org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:424)

        at java.lang.Thread.run(Unknown Source)



[Fri Feb 08 13:28:22 PST 2002] -- INFO -- Attempting
to create user: test

[Fri Feb 08 13:28:22 PST 2002] -- ERROR --
Turbine.handleException: null

[Fri Feb 08 13:28:22 PST 2002] -- ERROR -- 

        Exception: 
java.lang.reflect.InvocationTargetException

        Stack Trace follows:

        java.lang.reflect.InvocationTargetException:
java.lang.NullPointerException

        at
org.apache.turbine.services.security.BaseSecurityService.addUser(BaseSecurityService.java:392)

        at
edu.stanford.mlkpp.curriculum.modules.actions.RegisterUser.doPerform(RegisterUser.java:63)

        at java.lang.reflect.Method.invoke(Native Method)

        at
org.apache.turbine.util.velocity.VelocityActionEvent.executeEvents(VelocityActionEvent.java:166)

.
.
        at
org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:424)

        at java.lang.Thread.run(Unknown Source)



Win2K
tdk 2.1

__________________________________________________
Do You Yahoo!?
Send FREE Valentine eCards with Yahoo! Greetings!
http://greetings.yahoo.com

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to