I have the server built (ant all). Server appears to be running (I
think... stack trace below).
When I connect via the command-line client, it works and I can see
logs output showing the connection.
When I try to connect via the web interface, I get a 404 and no logs
are output....
Here's the stack:
mala...@rplab1:/opt/wave-protocol$ ./run-server.sh
Jul 8, 2010 2:18:43 PM
org.waveprotocol.wave.examples.fedone.waveserver.WaveServerImpl <init>
INFO: Wave Server configured to host local domains: [rplab1]
Jul 8, 2010 2:18:43 PM
org.waveprotocol.wave.examples.fedone.waveserver.WaveServerImpl <init>
SEVERE: Failed to add our own signer info to the certificate store
org.waveprotocol.wave.crypto.SignatureException: Certificate
validation failure
at
org.waveprotocol.wave.crypto.CachedCertPathValidator.validateNoCache(CachedCertPathValidator.java:
103)
at
org.waveprotocol.wave.crypto.CachedCertPathValidator.validate(CachedCertPathValidator.java:
65)
at
org.waveprotocol.wave.crypto.WaveSignatureVerifier.verifySignerInfo(WaveSignatureVerifier.java:
129)
at
org.waveprotocol.wave.examples.fedone.waveserver.CertificateManagerImpl.storeSignerInfo(CertificateManagerImpl.java:
199)
at
org.waveprotocol.wave.examples.fedone.waveserver.WaveServerImpl.<init>(WaveServerImpl.java:
453)
at
org.waveprotocol.wave.examples.fedone.waveserver.WaveServerImpl$
$FastClassByGuice$$8086ed04.newInstance(<generated>)
at
com.google.inject.internal.cglib.reflect.FastConstructor.newInstance(FastConstructor.java:
40)
at com.google.inject.internal.DefaultConstructionProxyFactory
$1.newInstance(DefaultConstructionProxyFactory.java:59)
at
com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:
84)
at com.google.inject.internal.ConstructorBindingImpl
$Factory.get(ConstructorBindingImpl.java:200)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at
com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:53)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at
com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:53)
at
com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:
38)
at
com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:
62)
at
com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:
83)
at com.google.inject.internal.ConstructorBindingImpl
$Factory.get(ConstructorBindingImpl.java:200)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at
com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:
38)
at
com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:
62)
at
com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:
83)
at com.google.inject.internal.ConstructorBindingImpl
$Factory.get(ConstructorBindingImpl.java:200)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at
com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:53)
at
com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:
38)
at
com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:
62)
at
com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:
83)
at com.google.inject.internal.ConstructorBindingImpl
$Factory.get(ConstructorBindingImpl.java:200)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at com.google.inject.internal.InjectorImpl
$4$1.call(InjectorImpl.java:825)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
871)
at com.google.inject.internal.InjectorImpl
$4.get(InjectorImpl.java:821)
at
com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:
860)
at
org.waveprotocol.wave.examples.fedone.ServerMain.run(ServerMain.java:
57)
at
org.waveprotocol.wave.examples.fedone.ServerMain.main(ServerMain.java:
46)
Caused by: java.security.cert.CertPathValidatorException: subject/
issuer name chaining check failed
at
sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:
153)
at
sun.security.provider.certpath.PKIXCertPathValidator.doValidate(PKIXCertPathValidator.java:
325)
at
sun.security.provider.certpath.PKIXCertPathValidator.engineValidate(PKIXCertPathValidator.java:
187)
at
java.security.cert.CertPathValidator.validate(CertPathValidator.java:
267)
at
org.waveprotocol.wave.crypto.CachedCertPathValidator.validateNoCache(CachedCertPathValidator.java:
101)
... 55 more
couldn't connect to XMPP server:org.xmpp.component.ComponentException:
conflict
Jul 8, 2010 2:18:43 PM
org.waveprotocol.wave.examples.fedone.ServerMain run
INFO: Starting server
Jul 8, 2010 2:18:43 PM
org.waveprotocol.wave.examples.fedone.ServerMain main
SEVERE: IOException when running server: Address already in use
mala...@rplab1:/opt/wave-protocol$ ./run-server.sh
Jul 8, 2010 2:21:03 PM
org.waveprotocol.wave.examples.fedone.waveserver.WaveServerImpl <init>
INFO: Wave Server configured to host local domains: [rplab1]
Jul 8, 2010 2:21:03 PM
org.waveprotocol.wave.examples.fedone.waveserver.WaveServerImpl <init>
SEVERE: Failed to add our own signer info to the certificate store
org.waveprotocol.wave.crypto.SignatureException: Certificate
validation failure
at
org.waveprotocol.wave.crypto.CachedCertPathValidator.validateNoCache(CachedCertPathValidator.java:
103)
at
org.waveprotocol.wave.crypto.CachedCertPathValidator.validate(CachedCertPathValidator.java:
65)
at
org.waveprotocol.wave.crypto.WaveSignatureVerifier.verifySignerInfo(WaveSignatureVerifier.java:
129)
at
org.waveprotocol.wave.examples.fedone.waveserver.CertificateManagerImpl.storeSignerInfo(CertificateManagerImpl.java:
199)
at
org.waveprotocol.wave.examples.fedone.waveserver.WaveServerImpl.<init>(WaveServerImpl.java:
453)
at
org.waveprotocol.wave.examples.fedone.waveserver.WaveServerImpl$
$FastClassByGuice$$8086ed04.newInstance(<generated>)
at
com.google.inject.internal.cglib.reflect.FastConstructor.newInstance(FastConstructor.java:
40)
at com.google.inject.internal.DefaultConstructionProxyFactory
$1.newInstance(DefaultConstructionProxyFactory.java:59)
at
com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:
84)
at com.google.inject.internal.ConstructorBindingImpl
$Factory.get(ConstructorBindingImpl.java:200)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at
com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:53)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at
com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:53)
at
com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:
38)
at
com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:
62)
at
com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:
83)
at com.google.inject.internal.ConstructorBindingImpl
$Factory.get(ConstructorBindingImpl.java:200)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at
com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:
38)
at
com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:
62)
at
com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:
83)
at com.google.inject.internal.ConstructorBindingImpl
$Factory.get(ConstructorBindingImpl.java:200)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at
com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:53)
at
com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:
38)
at
com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:
62)
at
com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:
83)
at com.google.inject.internal.ConstructorBindingImpl
$Factory.get(ConstructorBindingImpl.java:200)
at com.google.inject.internal.ProviderToInternalFactoryAdapter
$1.call(ProviderToInternalFactoryAdapter.java:43)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
878)
at
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:
40)
at com.google.inject.Scopes$1$1.get(Scopes.java:64)
at
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:
40)
at com.google.inject.internal.InjectorImpl
$4$1.call(InjectorImpl.java:825)
at
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:
871)
at com.google.inject.internal.InjectorImpl
$4.get(InjectorImpl.java:821)
at
com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:
860)
at
org.waveprotocol.wave.examples.fedone.ServerMain.run(ServerMain.java:
57)
at
org.waveprotocol.wave.examples.fedone.ServerMain.main(ServerMain.java:
46)
Caused by: java.security.cert.CertPathValidatorException: subject/
issuer name chaining check failed
at
sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:
153)
at
sun.security.provider.certpath.PKIXCertPathValidator.doValidate(PKIXCertPathValidator.java:
325)
at
sun.security.provider.certpath.PKIXCertPathValidator.engineValidate(PKIXCertPathValidator.java:
187)
at
java.security.cert.CertPathValidator.validate(CertPathValidator.java:
267)
at
org.waveprotocol.wave.crypto.CachedCertPathValidator.validateNoCache(CachedCertPathValidator.java:
101)
... 55 more
Jul 8, 2010 2:21:03 PM
org.waveprotocol.wave.federation.xmpp.ComponentPacketTransport
initialize
INFO: Initializing with JID: wave.rplab1.rplab1.enet.sharplabs.com
Jul 8, 2010 2:21:03 PM
org.waveprotocol.wave.federation.xmpp.ComponentPacketTransport start
INFO: Connected to XMPP server with JID: wave.rplab1
Jul 8, 2010 2:21:03 PM
org.waveprotocol.wave.examples.fedone.ServerMain run
INFO: Starting server
2010-07-08 14:21:03.561:DBUG::Logging to StdErrLog::DEBUG=true via
org.eclipse.jetty.util.log.StdErrLog
2010-07-08 14:21:03.561:DBUG::Container
org.eclipse.jetty.server.ser...@13f136e +
selectchannelconnec...@rplab1:9898 as connector
2010-07-08 14:21:03.578:DBUG::Container
org.eclipse.jetty.server.ser...@13f136e +
servletcontexthand...@6b496d@6b496d/,file:/opt/wave-protocol/war/ as
handler
2010-07-08 14:21:03.592:DBUG::filterNameMap={}
2010-07-08 14:21:03.592:DBUG::pathFilters=null
2010-07-08 14:21:03.593:DBUG::servletFilterMap=null
2010-07-08 14:21:03.593:DBUG::servletPathMap={/
socket=org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658}
2010-07-08
14:21:03.593:DBUG::servletNameMap={org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658=org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658}
2010-07-08 14:21:03.598:DBUG::filterNameMap={}
2010-07-08 14:21:03.598:DBUG::pathFilters=null
2010-07-08 14:21:03.598:DBUG::servletFilterMap=null
2010-07-08 14:21:03.598:DBUG::servletPathMap={/
socket=org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658, /
*=org.eclipse.jetty.servlet.DefaultServlet-26670261}
2010-07-08
14:21:03.598:DBUG::servletNameMap={org.eclipse.jetty.servlet.DefaultServlet-26670261=org.eclipse.jetty.servlet.DefaultServlet-26670261,
org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658=org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658}
2010-07-08 14:21:03.599:DBUG::Starting
org.eclipse.jetty.server.ser...@13f136e
2010-07-08 14:21:03.599:INFO::jetty-0.3
2010-07-08 14:21:03.615:DBUG::Container
org.eclipse.jetty.server.ser...@13f136e + qtp30167145{8<=0<=0/254,-1}
as threadpool
2010-07-08 14:21:03.616:DBUG::Starting qtp30167145{8<=0<=0/254,-1}
2010-07-08 14:21:03.617:DBUG::STARTED qtp30167145{8<=7<=8/254,0}
2010-07-08 14:21:03.618:DBUG::Starting
servletcontexthand...@6b496d@6b496d/,file:/opt/wave-protocol/war/
2010-07-08 14:21:03.626:DBUG::Container
servletcontexthand...@6b496d@6b496d/,file:/opt/wave-protocol/war/ +
servlethand...@17b4703@ as handler
2010-07-08 14:21:03.626:DBUG::Container servlethand...@17b4703@ +
org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658 as servlet
2010-07-08 14:21:03.626:DBUG::Container servlethand...@17b4703@ +
org.eclipse.jetty.servlet.DefaultServlet-26670261 as servlet
2010-07-08 14:21:03.626:DBUG::Container servlethand...@17b4703@ + [/
socket]=>org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658 as servletMapping
2010-07-08 14:21:03.626:DBUG::Container servlethand...@17b4703@ + [/
*]=>org.eclipse.jetty.servlet.DefaultServlet-26670261 as
servletMapping
2010-07-08 14:21:03.626:DBUG::Starting servlethand...@17b4703@
2010-07-08 14:21:03.626:DBUG::filterNameMap={}
2010-07-08 14:21:03.626:DBUG::pathFilters=null
2010-07-08 14:21:03.626:DBUG::servletFilterMap=null
2010-07-08 14:21:03.626:DBUG::servletPathMap={/
socket=org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658, /
*=org.eclipse.jetty.servlet.DefaultServlet-26670261}
2010-07-08
14:21:03.626:DBUG::servletNameMap={org.eclipse.jetty.servlet.DefaultServlet-26670261=org.eclipse.jetty.servlet.DefaultServlet-26670261,
org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658=org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658}
2010-07-08 14:21:03.626:DBUG::starting servlethand...@17b4703@
2010-07-08 14:21:03.627:DBUG::STARTED servlethand...@17b4703@
2010-07-08 14:21:03.627:DBUG::starting
servletcontexthand...@6b496d@6b496d/,file:/opt/wave-protocol/war/
2010-07-08 14:21:03.627:DBUG::Starting
org.eclipse.jetty.servlet.DefaultServlet-26670261
2010-07-08 14:21:03.628:DBUG::Starting
org.eclipse.jetty.servlet.nioresourceca...@15db13f
2010-07-08 14:21:03.628:DBUG::STARTED
org.eclipse.jetty.servlet.nioresourceca...@15db13f
2010-07-08 14:21:03.628:DBUG::resource base = null
2010-07-08 14:21:03.629:DBUG::STARTED
org.eclipse.jetty.servlet.DefaultServlet-26670261
2010-07-08 14:21:03.629:DBUG::Starting
org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658
2010-07-08 14:21:03.630:DBUG::STARTED
org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658
2010-07-08 14:21:03.630:DBUG::STARTED
servletcontexthand...@6b496d@6b496d/,file:/opt/wave-protocol/war/
2010-07-08 14:21:03.630:DBUG::starting
org.eclipse.jetty.server.ser...@13f136e
2010-07-08 14:21:03.630:DBUG::Starting
selectchannelconnec...@rplab1:9898
2010-07-08 14:21:03.630:DBUG::Starting
org.eclipse.jetty.server.nio.selectchannelconnecto...@3afb99
2010-07-08 14:21:03.635:DBUG::STARTED
org.eclipse.jetty.server.nio.selectchannelconnecto...@3afb99
2010-07-08 14:21:03.636:INFO::Started
selectchannelconnec...@rplab1:9898
2010-07-08 14:21:03.636:DBUG::STARTED
selectchannelconnec...@rplab1:9898
org.eclipse.jetty.server.ser...@13f136e STOPPED
+-servletcontexthand...@6b496d@6b496d/,file:/opt/wave-protocol/war/
started
+-servlethand...@17b4703 started
+-null
+-[/
socket]=>org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider
$WaveWebSocketServlet-27660658
+-[/*]=>org.eclipse.jetty.servlet.DefaultServlet-26670261
2010-07-08 14:21:03.637:DBUG::STARTED
org.eclipse.jetty.server.ser...@13f136e
On May 26, 11:39 pm, "J.D. Zamfirescu" <[email protected]> wrote:
> Hi group!
>
> We've just pushed a first working version of our Simple Web Client,
> complete with our Rich Text Editor integrated and an updated FedOne
> that speaks the draft client-server protocol. This code lives in the
> branch "io2010", available
> here:http://code.google.com/p/wave-protocol/source/checkout?repo=io2010
>
> We wanted to get this code out to you as soon as possible, despite
> some (very) rough edges. The code we've pushed is functional and
> federates with wavesandbox.com, but there are a number of caveats.
>
> First, here is what we're releasing today:
>
> • The Wave Rich-Text Editor
> • A client-side concurrency control module (aka "CC stack"), which
> coordinates the communication of deltas between a Wave client and a
> Wave server.
> • A Simple Web Client that combines the Rich-Text Editor and CC stack
> together with a simplistic "login" system and wave selection panel.
> (If you're familiar with FedOne, think of this as the web version of
> the FedOne console client, albeit with real-time editing.)
> • An updated FedOne that serves the new client-server protocol and
> hosts the simple web client.
>
> All this code requires GWT on the client, so we've added GWT to the
> mercurial repository. Once you have run the new FedOne server, by
> default the new web client will be available on port 9898. The web
> client requires a browser that supports WebSocket - currently Chrome
> and Webkit nightly builds.
>
> Next, the caveats:
>
> • The Simple Web Client uses the new conversation model but only
> implements a very basic subset of its features: a single root thread
> and its component blips.
> • The client-server connection remains fragile - the CC stack supports
> handling reconnecting when the underlying connection drops, but we
> haven't yet hooked up this logic, and the FedOne server doesn't
> support it well yet.
> • The index wave (the equivalent of the "inbox" in FedOne) still uses
> an older version of the Wave model.
> • Tests are broken all over the place. This is unfortunate, but we're
> aware of it, and are committed to fixing them. We just wanted to
> release this code ASAP. Fixed tests to follow.
> • The client-server protocol has been changed, but still isn't in it's
> final form. We'll be making more changes to it in the near future.
>
> Once the above issues have been addressed, we'll be moving the code to
> the main repository - for now, development will be in the open on the
> io2010 branch. Stay tuned for fixes to these issues soon.
>
> Happy hacking!
>
> Anthony Baxter and J.D. Zamfirescu
> Google Wave
--
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.