no... check the error message: "This Collection 'db' cannot store Documents"
you asked that a new document be stored in /db.  you need to create a
collection under /db to store your docs.  look at
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/xindice-xmlrpc/xindice-xmlrpc
/src/java/org/xmldatabases/xmlrpc/RPCOperations.java?rev=1.2&content-type=te
xt/vnd.viewcvs-markup for all the methods available.  just like the example
below, simply prepend 'db.' to the java method name, and follow the
parameters.

dave

-----Original Message-----
From: Pietro Michelucci [mailto:[EMAIL PROTECTED]
Sent: Wednesday, March 05, 2003 11:55 AM
To: [EMAIL PROTECTED]
Subject: RE: Delphi


Dave,

Sorry.  I must have left my brain home today.  Yes, once I added the server
name and port number AND started Xindice everything, of course, worked fine:

---- request ----
<?xml version="1.0"?>
<methodCall>
<methodName>db.insertDocument</methodName>
<params>
<param><value><string>/db</string></value></param>
<param><value><string>tmpfile</string></value></param>
<param><value><string>&lt;foo&gt;bar&lt;/foo&gt;</string></value></param>
</params>
</methodCall>
---- response ----
Fault returned from XML RPC Server, fault code 0: java.lang.Exception:
org.apach
e.xindice.core.DBException: This Collection 'db' cannot store Documents
<?xml version="1.0"
encoding="ISO-8859-1"?><methodResponse><fault><value><struct
><member><name>faultString</name><value>java.lang.Exception:
org.apache.xindice.
core.DBException: This Collection 'db' cannot store
Documents</value></member><m
ember><name>faultCode</name><value><int>0</int></value></member></struct></v
alue
></fault></methodResponse>

Is the reason for the fault that I was trying to insert a document that
doesn't exist?

Next, I will try again with Delphi.

Thanks for your patience.
Pietro

> -----Original Message-----
> From: Dave Viner [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, March 05, 2003 2:38 PM
> To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> Subject: RE: Delphi
>
>
> um... make sure you define a $server value (should be
> http://your_machine_name) and a $port value (use 4080).
> $xmlRpcClient = Frontier::Client->new('url' => "$server:$port/Xindice",
> 'debug' => '1');
>
> if that's set... try removing the /Xindice from the url value.  i
> think it's
> supposed to be there, but ya never know.
>
> dave
>
> -----Original Message-----
> From: Pietro Michelucci [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, March 05, 2003 11:23 AM
> To: [EMAIL PROTECTED]
> Subject: RE: Delphi
>
>
> Dave:
>
> I couldn't switch the default path from my Oracle Apache version
> of perl to
> the new version that includes the Frontier module, but I was able to just
> run the new perl.exe right out of its own directory.  And as you
> suggested,
> it already knew how to find the Frontier module.
>
> Here is my result:
>
> ---- request ----
> <?xml version="1.0"?>
> <methodCall>
> <methodName>db.insertDocument</methodName>
> <params>
> <param><value><string>/db</string></value></param>
> <param><value><string>tmpfile</string></value></param>
> <param><value><string>&lt;foo&gt;bar&lt;/foo&gt;</string></value></param>
> </params>
> </methodCall>
> 400 URL must be absolute
>
>
> This will certainly help me form my XML requests.  But do you
> have any ideas
> why it is returning the error message: 400 URL must be absolute  ?
>
> Thanks,
> Pietro
>
>
> > -----Original Message-----
> > From: Dave Viner [mailto:[EMAIL PROTECTED]
> > Sent: Tuesday, March 04, 2003 9:41 PM
> > To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> > Subject: RE: Delphi
> >
> >
> > should keep it on the list for future folks who run into the
> same problem.
> >
> > if you have perl available, try using the Frontier::Client
> > package with this
> > script:
> >
> > use Frontier::Client;
> > $contents = "<foo>bar</foo>";
> > $xmlRpcClient = Frontier::Client->new('url' => "$server:$port/Xindice",
> > 'debug' => '1');
> > $xmlRpcClient->call('db.insertDocument', '/db', 'tmpfile', $contents);
> >
> >
> > this will try to insert a document named "tmpfile" with the
> > $contents in the
> > collection at /db/foobar.  Make sure that /db exists.
> >
> > it should print out (on stderr) a bunch of stuff about the message its
> > sending.
> >
> > dave
> >
> > -----Original Message-----
> > From: Pietro Michelucci [mailto:[EMAIL PROTECTED]
> > Sent: Tuesday, March 04, 2003 6:29 PM
> > To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> > Subject: RE: Delphi
> >
> >
> > Dave:
> >
> > Thanks for your quick reply.  It seems that regardless of how I
> compose my
> > message, I receive the same response as the one given below.  However, I
> > haven't tried too many permutations in my request.
> >
> > I'm using Xindice 1.0 (and it prints birthday parenthetically
> next to the
> > version number in the console window).
> >
> > Shall I continue replying to the group or to you directly?
> >
> > Pietro
> >
> > > -----Original Message-----
> > > From: Dave Viner [mailto:[EMAIL PROTECTED]
> > > Sent: Tuesday, March 04, 2003 9:19 PM
> > > To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> > > Subject: RE: Delphi
> > >
> > >
> > > are you able to receive any xmlrpc responses that are valid?
> > > are you using 1.0 or the cvs version?
> > >
> > > dave
> > >
> > >
> > > -----Original Message-----
> > > From: Pietro Michelucci [mailto:[EMAIL PROTECTED]
> > > Sent: Tuesday, March 04, 2003 6:09 PM
> > > To: [EMAIL PROTECTED]
> > > Subject: Delphi
> > >
> > >
> > > Hello.  I am interested in creating an open source Delphi
> > (object pascal)
> > > API for Xindice using the XML-RPC protocol.  I have already
> > begun work on
> > > this, but I need some guidance.
> > >
> > > Right now I am simply trying to use Delphi to communicate with
> > > Xindice using
> > > an existing Delphi API for XML-RPC.  I have had some success in
> > that I am
> > > able to connect to port 4080.  The message I am sending is intended to
> > > return the document count for a collection.
> > >
> > > Here is the message I send:
> > >
> > > <methodCall><params><param><value><array><data><value><string>/db/
> > > root</stri
> > > ng></value>
> > > </data>
> > > </array></value>
> > > </param>
> > > </params>
> > > <RPCmethodName>db.getDocumentCount</RPCmethodName>
> > > </methodCall>
> > >
> > > And this is the reply that I receive:
> > >
> > > <methodResponse><fault></fault>
> > > <params><param></param>
> > > </params>
> > > </methodResponse>
> > >
> > > Somehow, I don't think my message was properly constructed.
> I'm not sure
> > > how to interpret the response, but it is not what I was
> > expecting. I would
> > > be grateful for any suggestions on this.
> > >
> > > Thanks,
> > > Pietro Michelucci
> > >
> > >
> > >
> >
> >
> >
>
>
>


Reply via email to