You need to sign in to do that
Don't have an account?
Siva Sakthi
Null pointer exception
Hi,
This is my code while creating a portal user i have to checking that user information its showing the error null pointer exception . i highlighted that line. how can i fix this .
public with sharing class SiteRegisterController {
// private static Id PORTAL_ACCOUNT_ID = '001x000xxx35tPN';
private static Id PORTAL_ACCOUNT_ID;
public SiteRegisterController () {
}
public String username {get; set;}
public String email {get; set;}
public String password {get; set {password = value == null ? value : value.trim(); } }
public String confirmPassword {get; set { confirmPassword = value == null ? value : value.trim(); } }
public String communityNickname {get; set { communityNickname = value == null ? value : value.trim(); } }
private boolean isValidPassword() {
return password == confirmPassword;
}
public PageReference registerUser() {
// it's okay if password is null - we'll send the user a random password in that case
if (!isValidPassword()) {
ApexPages.Message msg = new ApexPages.Message(ApexPages.Severity.ERROR, Label.site.passwords_dont_match);
ApexPages.addMessage(msg);
return null;
}
User u = new User();
u.Username = username;
u.Email = email;
u.CommunityNickname = communityNickname;
String accountId = PORTAL_ACCOUNT_ID;
// lastName is a required field on user, but if it isn't specified, we'll default it to the username
String userId = Site.createPortalUser(u, accountId, password); //******* This line showing error null pointer exception.
if (userId != null) {
if (password != null && password.length() > 1) {
return Site.login(username, password, null);
}
else {
PageReference page = System.Page.SiteRegisterConfirm;
page.setRedirect(true);
return page;
}
}
return null;
}
}
Advance Thanks
Maheshwar
This is my code while creating a portal user i have to checking that user information its showing the error null pointer exception . i highlighted that line. how can i fix this .
public with sharing class SiteRegisterController {
// private static Id PORTAL_ACCOUNT_ID = '001x000xxx35tPN';
private static Id PORTAL_ACCOUNT_ID;
public SiteRegisterController () {
}
public String username {get; set;}
public String email {get; set;}
public String password {get; set {password = value == null ? value : value.trim(); } }
public String confirmPassword {get; set { confirmPassword = value == null ? value : value.trim(); } }
public String communityNickname {get; set { communityNickname = value == null ? value : value.trim(); } }
private boolean isValidPassword() {
return password == confirmPassword;
}
public PageReference registerUser() {
// it's okay if password is null - we'll send the user a random password in that case
if (!isValidPassword()) {
ApexPages.Message msg = new ApexPages.Message(ApexPages.Severity.ERROR, Label.site.passwords_dont_match);
ApexPages.addMessage(msg);
return null;
}
User u = new User();
u.Username = username;
u.Email = email;
u.CommunityNickname = communityNickname;
String accountId = PORTAL_ACCOUNT_ID;
// lastName is a required field on user, but if it isn't specified, we'll default it to the username
String userId = Site.createPortalUser(u, accountId, password); //******* This line showing error null pointer exception.
if (userId != null) {
if (password != null && password.length() > 1) {
return Site.login(username, password, null);
}
else {
PageReference page = System.Page.SiteRegisterConfirm;
page.setRedirect(true);
return page;
}
}
return null;
}
}
Advance Thanks
Maheshwar
In String accountId = PORTAL_ACCOUNT_ID;
you are assigning PORTAL_ACCOUNT_ID, but there is no value in PORTAL_ACCOUNT_ID. You can also check the same with debug statements.