Ok, I figured it out and got it to work. Just not with axis. As it says somewhere in this thread, I believed that the problem with Axis speaking with the Office 2003 Research Pane was the fact that axis didn't seem to want to allow a default namespace for the service. .net makes it easy to do that and Office expects it. In fact, it says in the docs that if the "urn:Microsoft.Search" namespace is not the default one, Office will ignore your results. And no, it doesn't matter a single bit that Axis aliases the thing the "right" way. It still won't work.
So here's what I did. Since I'd been playing with a .net web service that _would_ talk to Office, or rather that Office would listen to, I ran tcpmon, sniffed the return soap stuff that did work, and copied it out to a file. It's nothing more than the <ResponsePacket> stuff that you write back for the Research pane plus a couple of soap tags. Since I was using xerces DOM to search a template anyway to insert my results, it was trivial to just change the template to the new one. I wrote a small servlet that gets the post data from Office, reads the contents of the request's input stream into a xerces xml dom document, and went from there. I also use that to read and create my response, which I then write back to the response's output stream. Just remember to set the content type in the response to "text/xml". And lastly, for your dining and dancing pleasure, I've included the text of my template here for those of you that don't have the luxury of having the .net tools there too to figure out why this "interoperability," isn't. Just remember to change the guids. These are mine... <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <QueryResponse xmlns="urn:Microsoft.Search"> <QueryResult> <ResponsePacket revision="1" xmlns="urn:Microsoft.Search.Response"> <Response domain="{0BD4DEBD-36F5-4084-B710-C5EE915D1F18}"> <!-- <QueryId>{8E823A74-053D-4434-A67B-D1CD050B3349}</QueryId> --> <Range></Range> <Status>SUCCESS</Status> </Response> </ResponsePacket> </QueryResult> </QueryResponse> </soap:Body> </soap:Envelope> -----Original Message----- From: Roman Rytov [mailto:[EMAIL PROTECTED] Sent: Thursday, July 31, 2003 9:27 AM To: [EMAIL PROTECTED] Subject: RE: Office 2003 Research Pane services in Axis... I played a bit with Office2003Betta and met the same problem as you described. I didn't have a chance to experiment with WSDD yet but what you said is a bit confusing:-) I hoped that would help. I have no idea what Office expects to get but .net example they mention in the article works fine. But! I did another experiment. I took a WSDL that that example generates. Stored it separately as a XML file and pass to Office. It didn't work! I have no idea why. From my testing client it works w/o a problem. I'm gonna play with this on the weekend and update you in case if any news. Roman Rytov > -----Original Message----- > From: Carey Nation [mailto:[EMAIL PROTECTED] > Sent: Thursday, July 31, 2003 06:00 AM > To: [EMAIL PROTECTED] > Subject: Office 2003 Research Pane services in Axis... > > Hi, > I'm trying to write a service in axis that can service the > new research pane in office 2003. The api for the pane is > very simple. There are two methods, Registration and Query, > both of which take a string with xml and return a string with xml. > > No matter what I try, office doesn't like what I'm sending > back. I think that my xml response is correct, so here's my question. > > In the sample .net services, they have an attribute on the > web service that looks like: > > <WebService(Namespace="urn:Microsoft.Search"> > > Now I know that this somehow associates that namespace with > the service. > I'm trying to figure out how to do this with axis. I've added: > > <namespace>urn:Microsoft.Search</namespace> > > to the services part of my wsdd file and reapplied it, but > that didn't change a thing. I know that .net in general can > talk to my service because my simple test client gets the xml > text back. > > I think it's a config thing that I've missed in axis, but I > can't find anything else beyond the namespace thing in the wsdd. > > Any ideas? > > thanks! > Carey > > > >
