public List<DestroyCloneFailure> destroyClones(List<PortletContext> portletContexts) throws IllegalArgumentException, PortletInvokerException, UnsupportedOperationException { if (portletContexts == null) { throw new IllegalArgumentException("No null list accepted"); } if (portletContexts.size() == 0) { return Collections.emptyList(); } // Get the invoker and check that we address only one invoker (for now) PortletInvoker invoker = null; for (PortletContext compoundPortletContext : portletContexts) { PortletInvoker federated = getFederatedPortletInvokerFor(compoundPortletContext); if (invoker == null) { invoker = federated; } else if (!invoker.equals(federated)) { throw new PortletInvokerException("Cannot destroy portlet lists that requires more than one federated invoker"); } } // return invoker.destroyClones(portletContexts); }
private void render(PortalPrepareResponse prepareResponse) { for (String windowId : prepareResponse.getWindowIds()) { WindowDef windowDef = prepareResponse.getWindowDef(windowId); // try { Portlet portlet = portletControllerContext.getPortlet(windowId); // if (portlet != null) { PortletInvocationResponse portletResponse = render(null, windowId); // WindowResult result = new WindowResult(windowDef, portletResponse); // windowResults.put(windowId, result); } else { // log } } catch (PortletInvokerException e) { e.printStackTrace(); } } }
private <S extends Serializable> PortletContext marshall(PortletStateType<S> stateType, String portletId, PropertyMap props) throws PortletInvokerException { try { PortletState sstate = new PortletState(portletId, props); S marshalledState = stateConverter.marshall(stateType, sstate); return StatefulPortletContext.create(PortletContext.CONSUMER_CLONE_ID, stateType, marshalledState); } catch (StateConversionException e) { throw new PortletInvokerException(e); } }
throw new PortletInvokerException(e);
e.printStackTrace(); context.interrupt();
throw new PortletInvokerException("Couldn't unmarshall event from payload!", e);
throw new PortletInvokerException(e);
throw new PortletInvokerException(e); throw new PortletInvokerException(e);
throw new PortletInvokerException("The portlet " + refPortletContext + " referenced by this clone " + portletId + " is not available");
throw new PortletInvokerException(e);
throw new PortletInvokerException(e);
throw new PortletInvokerException("The portlet " + context.getPortletContext() + " referenced by this clone " + portletId + " is not available");
throw new PortletInvokerException("Unexpected exception", e); throw new PortletInvokerException("Unexpected exception", e); throw new PortletInvokerException("Unexpected exception", e); throw new PortletInvokerException("Unexpected exception", e);