AnsweredAssumed Answered

URL Addressability - Wizard inviteSpaceUsers

Question asked by lgilles on Jul 2, 2008
Latest reply on Aug 6, 2008 by jharrop
Hi everyone,

I'm using Alfresco 2.2 Entreprise edition and cannot make the "inviteSpaceUsers" wizard work correctly by URL Addressability.

I'm currently trying to create a link pointing to the Space's "inviteSpaceUsers" wizard. After some research, it's comes out to me that the right way of passing the NodeID is to remove "workspace://SpacesStore/" part of the nodeRef, so an URL with the following format :


The Wizard page then shows up, but if I click on next after inviting some users, it gaves me a NullPointerException.
The nullpointer is the concequences of the

org.alfresco.web.bean.wizard.InviteSpaceUsersWizard.getNode() ==> return this.browseBean.getActionSpace(); where ActionSpace is NULL.

I looked in, where I founded out that :

257 else if (OUTCOME_DIALOG.equals(outcome) || OUTCOME_WIZARD.equals(outcome))
258      {
259         if (args.length != 0)
260         {
261            if (args.length > 1)
262            {
263               // if a GUID was passed, use it to init the NavigationBean current context
264               NavigationBean navigator = (NavigationBean)FacesHelper.getManagedBean(fc, NavigationBean.BEAN_NAME);
265               navigator.setCurrentNodeId(args[1]);
266            }
268            // set the external container session flag so that a plain container gets used
269            fc.getExternalContext().getSessionMap().put(
270                     AlfrescoNavigationHandler.EXTERNAL_CONTAINER_SESSION, Boolean.TRUE);
272            NavigationHandler navigationHandler = fc.getApplication().getNavigationHandler();
273            navigationHandler.handleNavigation(fc, null, outcome + ':' + args[0]);
274         }
275      }

Now, in debug mode @ line 265, I've evaluated the current code, in order to setup the SpaceAction.

browseBean.setupSpaceAction(args[1], true);

And then the wizard worked OK !

Now, is it a bug and this is a fix, or I am doing something wrong here ? because I really cannot made the wizard worked until doing this trick and I thinking redefining in order to fix the problem in this way.

Has any of you already been faced with this issue ? Is there any other solution ? Thanks in advance !!!

Here is the server stack trace

   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at org.apache.myfaces.el.MethodBindingImpl.invoke(
   at org.apache.myfaces.application.ActionListenerImpl.processAction(
   at javax.faces.component.UICommand.broadcast(
   at javax.faces.component.UIViewRoot._broadcastForPhase(
   at javax.faces.component.UIViewRoot.processApplication(
   at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(
   at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(
   at org.apache.myfaces.lifecycle.LifecycleImpl.execute(
   at javax.faces.webapp.FacesServlet.service(
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(
   at org.apache.catalina.core.StandardWrapperValve.invoke(
   at org.apache.catalina.core.StandardContextValve.invoke(
   at org.apache.catalina.core.StandardHostValve.invoke(
   at org.apache.catalina.valves.ErrorReportValve.invoke(
   at org.apache.catalina.core.StandardEngineValve.invoke(
   at org.apache.catalina.connector.CoyoteAdapter.service(
   at org.apache.coyote.http11.Http11Processor.process(
   at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(
   at org.apache.tomcat.util.threads.ThreadPool$
   at Source)