One more question regarding this topic:

What steps are necessary to add an index wave entry for a participant
who was added to a conversation but does not participate in the root
conversation? Or in other words what are the correct steps to add such
a participant?

Regards,

Andreas

On 5 Aug., 11:19, andreas <[email protected]> wrote:
> Hi Alex,
>
> sorry for the late post. I took a look at the server log and there are
> at least no errors. In short, here's what happens after I add the
> other participant:
>
> 1) message over websocket with "message operations_applied" and the
> "hashed_version_after_application"
> 2) submitDelta to the WaveServerImpl (hashed_version,
> operation(add_participant), post_hashed_version)
> 3) server sends websocket "message wavelet_name" including:
>   - wavelet name
>   - list of applied_delta to that wavelet before I added the other
> participant including:
>     - add myself as participant
>     - conversation creation
>     - blip insertion (blip creation, blip body/line components, blip
> to conversation manifest, blip characters)
>     - and finally last applied delta where other user is added as
> participant
>
> What I don't see is that empty snapshot. The first applied delta is
> adding of the creating participant. Is this causing the error since
> the other participant does not know about the wavelet yet and hence
> cannot locally apply the add_participant?
>
> Regards,
>
> Andreas
>
> On 4 Aug., 07:06, andreas <[email protected]> wrote:
>
>
>
> > Thanks for the quick reply...
>
> > I'll take a deeper look into the server output this afternoon. Maybe
> > we'll find something in there.
>
> > Just in case I'm doing something wrong, the client code snippet:
>
> >   @UiHandler("addWavelet")
> >   public void addWavelet(ClickEvent e) {
> >     ObservableConversation conversation =
> > conversationView.createConversation();
> >     conversation.addParticipant(participant);
>
> >     GWT.log("Created wavelet: " + conversation.getId());
> >   }
>
> > Regards,
>
> > Andreas
>
> > On 4 Aug., 04:02, Alex North <[email protected]> wrote:
>
> > > For client B, the first message received for the new wavelet should be an
> > > empty snapshot providing the wavelet metadata. Possibly there's a bug in 
> > > the
> > > server in no sending that.
>
> > > On 4 August 2010 08:53, andreas <[email protected]> wrote:
>
> > > > Hey group,
>
> > > > I'm currently trying to realize sharing of multiple conversations in a
> > > > wave. I've come to the point to add a participant to a conversation
> > > > which is not the root conversation. At the added participants client I
> > > > get the error attached below.
>
> > > > I'd like to ask what is the correct procedure to add a participant to
> > > > a conversation which is not the root conversation? (The next question
> > > > would be how to get an index wave entry for the conversation to the
> > > > added participant if he did not participate in the root
> > > > conversation...)
> > > > What also made me wonder is that upon reopening the wave, it correctly
> > > > contained all other conversations along the root conversation. So the
> > > > operations seem to be applied correctly but the updates can not be
> > > > initially applied at the other participant's side.
>
> > > > Regards,
>
> > > > Andreas
>
> > > > Scenario with user sites A and B and stack below:
>
> > > > 1) A creates a wave (with conv+root)
> > > > 2) A adds B to that wave (to conv+root)
> > > > 3) A creates a conversation
> > > > 4) A adds B to that new conversation
> > > > 5) B prints the following error
>
> > > > Wed Aug 04 00:30:39 CEST 2010[SEVERE] Unhandled exception
> > > > Received deltas with no stacklet present!
>
> > > > org.waveprotocol.wave.concurrencycontrol.channel.OperationChannelMultiplexe
> > > >  rImpl
> > > > $4.onUpdate (OperationChannelMultiplexerImpl.java:626)
>
> > > > org.waveprotocol.wave.concurrencycontrol.channel.ViewChannelImpl.onUpdate
> > > > (ViewChannelImpl.java:351)
>
> > > > org.waveprotocol.wave.examples.fedone.waveclient.common.WaveViewServiceImpl
> > > >  .publishDeltaList
> > > > (WaveViewServiceImpl.java:434)
>
> > > > org.waveprotocol.wave.examples.fedone.waveclient.common.ClientBackend.recei
> > > >  veWaveletUpdate
> > > > (ClientBackend.java:411)
>
> > > > org.waveprotocol.wave.examples.fedone.simplewebclient.client.SimpleWebClien
> > > >  t
> > > > $3.handleWaveletUpdate (SimpleWebClient.java:137)
>
> > > > org.waveprotocol.wave.examples.fedone.simplewebclient.client.WaveWebSocketC
> > > >  lient
> > > > $CallBackWrapper.onMessage (WaveWebSocketClient.java:139)
> > > >  com.google.gwt.websockets.client.WebSocket.onMessage (WebSocket.java:
> > > > 85)
> > > >  sun.reflect.GeneratedMethodAccessor148.invoke (null:-1)
> > > >  sun.reflect.DelegatingMethodAccessorImpl.invoke (null:-1)
> > > >  java.lang.reflect.Method.invoke (null:-1)
> > > >  com.google.gwt.dev.shell.MethodAdaptor.invoke (MethodAdaptor.java:
> > > > 103)
> > > >  com.google.gwt.dev.shell.MethodDispatch.invoke (MethodDispatch.java:
> > > > 71)
> > > >  com.google.gwt.dev.shell.OophmSessionHandler.invoke
> > > > (OophmSessionHandler.java:154)
>
> > > > com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingFo
> > > >  rReturn
> > > > (BrowserChannelServer.java:326)
> > > >  com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript
> > > > (BrowserChannelServer.java:207)
> > > >  com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke
> > > > (ModuleSpaceOOPHM.java:120)
> > > >  com.google.gwt.dev.shell.ModuleSpace.invokeNative (ModuleSpace.java:
> > > > 507)
> > > >  com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject
> > > > (ModuleSpace.java:264)
> > > >  com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject
> > > > (JavaScriptHost.java:91)
> > > >  com.google.gwt.core.client.impl.Impl.apply (Impl.java:-1)
> > > >  com.google.gwt.core.client.impl.Impl.entry0 (Impl.java:214)
> > > >  sun.reflect.GeneratedMethodAccessor125.invoke (null:-1)
> > > >  sun.reflect.DelegatingMethodAccessorImpl.invoke (null:-1)
> > > >  java.lang.reflect.Method.invoke (null:-1)
> > > >  com.google.gwt.dev.shell.MethodAdaptor.invoke (MethodAdaptor.java:
> > > > 103)
> > > >  com.google.gwt.dev.shell.MethodDispatch.invoke (MethodDispatch.java:
> > > > 71)
> > > >  com.google.gwt.dev.shell.OophmSessionHandler.invoke
> > > > (OophmSessionHandler.java:154)
> > > >  com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages
> > > > (BrowserChannelServer.java:281)
> > > >  com.google.gwt.dev.shell.BrowserChannelServer.processConnection
> > > > (BrowserChannelServer.java:531)
> > > >  com.google.gwt.dev.shell.BrowserChannelServer.run
> > > > (BrowserChannelServer.java:352)
> > > >  java.lang.Thread.run (null:-1)
>
> > > > --
> > > > You received this message because you are subscribed to the Google 
> > > > Groups
> > > > "Wave Protocol" group.
> > > > To post to this group, send email to [email protected].
> > > > To unsubscribe from this group, send email to
> > > > [email protected]<wave-protocol%2bunsubscr...@goog
> > > >  legroups.com>
> > > > .
> > > > For more options, visit this group at
> > > >http://groups.google.com/group/wave-protocol?hl=en.

-- 
You received this message because you are subscribed to the Google Groups "Wave 
Protocol" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/wave-protocol?hl=en.

Reply via email to