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.
