03 Mar 2003

Mon, 03 Mar 2003

RSS - bearer of bad fruit

Dave Winer's quoting Jeremy Allaire talking about some of the bad stuff that could happen with RSS. Connecting the dots... Philip Fibiger is talking about some really bad stuff that he's prototyped in RSS. Yikes.

Posted at: 23:44 | permalink

XMLRPC on Mono - NYet

That's short for Not Yet. I've been working on building Charles Cook's XMLRPC.net library on Mono 0.21 on Redhat 8. I've got the DLL built, but running a client application against a perl XML-RPC server using XMLRPC::Lite and the following C# client code:

using CookComputing.XmlRpc;
using System.Net;
using System;

public class dave
{
[XmlRpcUrl("http://localhost:8080/")]
interface Demo
{
[XmlRpcMethod("hi")]
string hi();
}

static void Main(string [] args)
{
Demo proxy = (Demo)XmlRpcProxyGen.Create(typeof(Demo));
Console.WriteLine(proxy.hi());
}
}

I get the following call stack:

# mono StateName.exe

Unhandled Exception: System.ObjectDisposedException: The object was used after being disposed
in <0x000af> 00 System.Net.Sockets.NetworkStream:CheckDisposed ()
in <0x0001d> 00 System.Net.Sockets.NetworkStream:Read (byte[],int,int)
in <0x00142> 00 System.Net.HttpWebResponse:ReadHttpLine (System.IO.Stream)
in <0x0021c> 00 System.Net.HttpWebResponse:.ctor (System.Uri,string,System.IO.Stream)
in <0x001eb> 00 System.Net.HttpWebRequest:GetResponseInternal ()
in <0x00060> 01 System.MulticastDelegate:invoke_WebResponse ()

Exception Rethrown at:
in (unmanaged) 03 System.MulticastDelegate:end_invoke_WebResponse_IAsyncResult (System.IAsyncResult)
in <0x00004> 03 System.MulticastDelegate:end_invoke_WebResponse_IAsyncResult (System.IAsyncResult)
in <0x0011c> 00 System.Net.HttpWebRequest:EndGetResponse (System.IAsyncResult)
in <0x000e4> 00 System.Net.HttpWebRequest:GetResponse ()
in <0x00087> 00 System.Web.Services.Protocols.WebClientProtocol:GetWebResponse (System.Net.WebRequest)
in <0x0031e> 00 CookComputing.XmlRpc.XmlRpcClientProtocol:Invoke (object,string,object[])
in <0x0001e> 00 CookComputing.XmlRpc.XmlRpcClientProtocol:Invoke (string,object[])
in <0x00048> 00 .XmlRpcProxyd13f5f04-0d7c-4d7f-b39d-4d57dd98bf00:hi ()
in <0x00066> 00 .dave:Main (string[])

This is consistent with the results that Charles reported to me by email. I'm assuming for now that there are some bits and pieces of the FCL missing that XMLRPC.net requires. I'm hopeful that they'll be there soon. Now that I have the library building cleanly on Mono, I'll keep it lying around and retest with new builds of Mono and report my results here.

Posted at: 19:39 | permalink