Thanks for the answer
I did as you suggested and created the following code in order to create a new instance:
| PersistentInstanceDefinition instanceToCopy=(PersistentInstanceDefinition)
instanceContainerContext.getInstanceDefinition(intanceName);
|
| Date current = new Date();
| String newInstanceId = instanceToCopy.getId() + "_" + current.getTime();
|
| PortletContext portletContext =
PortletContext.createPortletContext("PortletName");
|
| Portlet portletDefinition = portletInvoker.getPortlet(portletContext);
| PersistentInstanceDefinition newInstance=(PersistentInstanceDefinition)
|
instanceContainer.createDefinition(newInstanceId,portletDefinition.getContext().getId());
|
| Set constraints = Collections.singleton(new RoleSecurityBinding("view",
SecurityConstants.UNCHECKED_ROLE_NAME));
| securityService.setSecurityBindings(newInstanceId,constraints);
|
| PropertyChange[] properties =
duplicateInstanceProperties(instanceToCopy.getProperties());
| newInstance.setProperties(properties);
|
|
As you can see from the code, I'm actually trying to create a new instance that will
be identical to an existing instance(based on the same portlet and have the same property
values). Unfortunately this code works without giving an exception or returning any null
values. but the instance created is never shown in the instance list of the portal
administrative panel and therefore cannot be used.
Basically I followed the code in the CreateInstanceAction class file.
Any suggestions?
Many Thanks,
Yaniv
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4203134#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...