Hi Ali, With your hint and after digging a bit more into the talks I finally managed to get started. I am finally staring to understand the complex architecture of WiaB and am developing by running the server and debugging the full client with hosted-get.
Thank you for your support, Eduardo A 10/10/2013, às 14:11, Ali Lown <a...@lown.me.uk> escreveu: > Hi Eduardo, > > It looks like the doodad tutorial is quite broken. (This is not a huge > surprise, since nobody I know is making use of any doodads). > > Regarding the wave harness, are you testing trunk or rc4? (Though it > shouldn't have become broken in either) > > My workflow is normally: > 1) code > 2) run ant gwt-dev && ant dist-server > 3) run a script I have which prepares a directory with a test server in > (copy all but source, copy pre-written config files, cd, run > ./run-server.sh) > 4) observe > >> Thus my question is, what are your suggestions on how to get started in > WiaB? > > What do you mean by 'get started'? Writing gadgets? Fixing bugs in core > code? Adding features? > (There is always a list of things to do on Jira). > > Ultimately, the code-base is quite complex [an understatement], there is a > high-level diagram of how some parts connect on the wiki and the original > Wave summit talks also contain useful conceptual information - which tends > to map fairly well to some collection of files in the codebase. > > Ali > Hi all, > > For the past couple of weeks I have been trying to get into WiaB, watching > the talks and browsing through the wiki and the code. > I am now trying to implement the first feature, but I found a few issues: > > - I could not go through the Writing a Doodad tutorial ( > https://cwiki.apache.org/confluence/display/WAVE/Writing+a+Doodad). I > always get the error: > "That content does not conform to the schema: [more details...." when > setting the content "<mydoodad/>", even when trying with the complete > project given as reference > (org.waveprotocol.wave.client.editor.examples.img) > > - Running the waveharness-hosted results in the following error: > 00:00:35.766 [ERROR] Errors in > 'file:/Users/zenuz/Documents/workspace/waveops/src/org/waveprotocol/wave/client/doodad/attachment/AttachmentManagerImpl.java' > 00:00:35.766 [ERROR] Line 31: The import > org.waveprotocol.box.attachment.jso cannot be resolved > 00:00:35.766 [ERROR] Line 32: The import > org.waveprotocol.box.attachment.jso cannot be resolved > 00:00:35.766 [ERROR] Line 38: The import > org.waveprotocol.wave.communication.gwt.JsonMessage cannot be resolved > 00:00:35.766 [ERROR] Line 39: The import > org.waveprotocol.wave.communication.json.JsonException cannot be resolved > 00:00:35.766 [ERROR] Line 159: AttachmentsResponseJsoImpl cannot be > resolved to a type > 00:00:35.766 [ERROR] Line 161: JsonMessage cannot be resolved > 00:00:35.766 [ERROR] Line 162: JsonException cannot be resolved to a type > 00:00:35.766 [ERROR] Line 185: AttachmentsResponseJsoImpl cannot be > resolved to a type > 00:00:35.766 [ERROR] Line 187: AttachmentMetadataJsoImpl cannot be resolved > to a type > 00:00:35.778 [ERROR] Uncaught exception escaped > java.lang.Error: Unresolved compilation problem: at > org.waveprotocol.wave.client.doodad.attachment.AttachmentManagerImpl.getInstance(AttachmentManagerImpl.java:67) > at > org.waveprotocol.wave.client.StageTwo$DefaultProvider$10.install(StageTwo.java:690) > at > org.waveprotocol.wave.client.wavepanel.render.DocumentRegistries$Builder.build(DocumentRegistries.java:75) > at > org.waveprotocol.wave.client.StageTwo$DefaultProvider.createBlipQueueRenderer(StageTwo.java:614) > at > org.waveprotocol.wave.client.StageTwo$DefaultProvider.getBlipQueue(StageTwo.java:328) > at > org.waveprotocol.wave.client.StageTwo$DefaultProvider.createRenderer(StageTwo.java:641) > at > org.waveprotocol.wave.client.StageTwo$DefaultProvider.getRenderer(StageTwo.java:318) > at > org.waveprotocol.wave.client.StageTwo$DefaultProvider.install(StageTwo.java:730) > at > org.waveprotocol.wave.client.StageTwo$DefaultProvider$1.execute(StageTwo.java:267) > at > org.waveprotocol.wave.client.common.util.CountdownLatch.tick(CountdownLatch.java:67) > at > org.waveprotocol.wave.client.StageTwo$DefaultProvider$3.execute(StageTwo.java:286) > at > org.waveprotocol.wave.client.scheduler.BrowserBackedScheduler.workUnit(BrowserBackedScheduler.java:298) > at > org.waveprotocol.wave.client.scheduler.BrowserBackedScheduler.workAll(BrowserBackedScheduler.java:323) > at > org.waveprotocol.wave.client.scheduler.BrowserBackedScheduler.workSlice(BrowserBackedScheduler.java:371) > at > org.waveprotocol.wave.client.scheduler.BrowserBackedScheduler.access$2(BrowserBackedScheduler.java:350) > at > org.waveprotocol.wave.client.scheduler.BrowserBackedScheduler$1.run(BrowserBackedScheduler.java:44) > at > org.waveprotocol.wave.client.scheduler.GwtSimpleTimer$2.run(GwtSimpleTimer.java:49) > at com.google.gwt.user.client.Timer.fire(Timer.java:149) at > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) at > com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103) > at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71) > at > com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172) > at > com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338) > at > com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219) > at > com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136) > at > com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:571) > at > com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:279) > at > com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91) > at com.google.gwt.core.client.impl.Impl.apply(Impl.java) at > com.google.gwt.core.client.impl.Impl.entry0(Impl.java:242) at > sun.reflect.GeneratedMethodAccessor45.invoke(Unknown Source) at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) at > com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103) > at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71) > at > com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172) > at > com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:293) > at > com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:547) > at > com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:364) > at java.lang.Thread.run(Thread.java:680) > > - I can run and debug in the full client, but I find it overhelming to > attempt to create a new feature in this mode, as the steps required to > connect all the pieces together seem to complicated for someone starting > with in this project. > > Thus my question is, what are your suggestions on how to get started in > WiaB? > > Thanks, > Eduardo