Whats the problem with this code??
This code is actually written for getting the worksets assigned to the roles...
It shows some errors with the imports.....
import java.util.Hashtable;
import java.util.Iterator;
import javax.naming.Context;
import com.sap.security.api.IRole;
import com.sap.security.api.IUser;
import com.sap.security.api.UMFactory;
import com.sapportals.htmlb.Form;
import com.sapportals.htmlb.page.DynPage;
import com.sapportals.htmlb.page.PageException;
import com.sapportals.portal.htmlb.page.PageProcessorComponent;
import com.sapportals.portal.prt.component.IPortalComponentRequest;
import com.sapportals.portal.prt.component.IPortalComponentResponse;
import com.sapportals.portal.prt.runtime.PortalRuntime;
//import com.sapportals.portal.prt.component;
import com.sap.portal.htmlb;
import com.sap.portal.pcd.glservice;
import com.sap.portal.pcmbuilderservice;
public class DynPage1 extends PageProcessorComponent {
public DynPage getPage() {
return new DynPage1DynPage();
}
public static class DynPage1DynPage extends DynPage {
/**
Initialization code executed once per user.
*/
public void doInitialization() {
}
/**
Input handling code. In general called the first time with the second page request from the user.
*/
public void doProcessAfterInput() throws PageException {
}
/**
Create output. Called once per request.
*/
public void doProcessBeforeOutput() throws PageException {
Form myForm = this.getForm(); // get the form from DynPage
IPortalComponentResponse response =
(IPortalComponentResponse) this.getResponse();
IPortalComponentRequest request =
(IPortalComponentRequest) this.getRequest();
IPcmObjectService pcdFactory =(IPcmObjectService) PortalRuntime.getRuntimeResources()
.getService(IPcmObjectService.KEY);
Hashtable env = new Hashtable();
env.put(
Context.INITIAL_CONTEXT_FACTORY,
IPcdContext.PCD_INITIAL_CONTEXT_FACTORY);
env.put(
Context.SECURITY_PRINCIPAL,
this.getServiceUser("pcd_service"));
IUser user = request.getUser();
Iterator role = user.getRoles(true);
String root;
while (role.hasNext()) {
try {
String rolestr = (String) role.next();
IRole r = UMFactory.getRoleFactory().getRole(rolestr);
root = r.getUniqueName();
response.write(
"<b>" + r.getDisplayName() + "</b>" + "<br>");
recursive_role_content(root, pcdFactory, env);
} catch (Exception e) {
response.write(e.getMessage());
}
}
}
}
}