[ic] SOAP access to Interchange

Chris Sendall cjs2 at admin.cam.ac.uk
Mon Apr 18 10:24:12 EDT 2005


interchange-users-bounces at icdevgroup.org wrote:
> Quoting Chris Sendall (cjs2 at admin.cam.ac.uk):
>> Hi
>> 
>> my $cat = 'foundcscp';
>> my $Tag = SOAP::Lite
>>             ->
>> uri('http://milton.internal.admin.cam.ac.uk/Vend/SOAP') 
>>             ->
>> proxy("http://milton.internal.admin.cam.ac.uk:7780/$cat") 
>> 
>> When I have interchange.cfg containing
>> 
>> Catalog       foundcscp /var/lib/interchange/foundcscp
>> /cgi-bin/foundcscp /foundcscp Catalog       tutcscp 
>> /var/lib/interchange/tutcscp /cgi-bin/tutcscp 
>> 
>> My debug line ::logDebug("variable
>> FILE_NAME=$::Variable->{FILE_NAME}"); gives Vend::UserDB:debug:
>> variable FILE_NAME=tutcscp/catalog.cfg 
>> which is wrong
>> 
>> BUT
>> Catalog       foundcscp /var/lib/interchange/foundcscp
>> /cgi-bin/foundcscp /foundcscp #Catalog       tutcscp 
>> /var/lib/interchange/tutcscp /cgi-bin/tutcscp 
>> 
>> My debug line ::logDebug("variable
>> FILE_NAME=$::Variable->{FILE_NAME}"); gives  Vend::UserDB:debug:
>> variable FILE_NAME=foundcscp/catalog.cfg which is right 
>> 
>> Any ideas please?
> 
> I am afraid I don't understand the proxy call. But what you need to do
> is know what call is coming in to the Vend::Server::http_soap()
> routine. 
> Uncomment some of the debug statements in that routine and you should
> be 
> able to figure out what is going on.

Looking at output from Vend::Server, it finds the correct catalo

Vend::Server:debug: catname is /foundcscp
Vend::Server:debug: found catalog /foundcscp

calls Vend::SOAP:debug: SOAP autoload called, routine=Vend::SOAP::userdb, args=[
  'Vend::SOAP',
  {
    'password' => 'cjs2',
    'function' => 'login',
    'username' => 'cjs2'
  }
]

but on entry to Vend::SOAP::userdb has set the $::Variable hash from the wrong
file, which suggests to me that the hash for alias's built up during the reading
Catalog lines in interchange.cfg is not cleared between Catalog lines

Vend::Parse:debug: Parse-do_tag: tag=userdb caller=Vend::SOAP
args=["login",{'password' => "cjs2",'function' => "login",'username' =>
"cjs2",},]
Vend::UserDB:debug: variable FILE_NAME=tutorial/catalog.cfg

Chris
-- 

Chris Sendall
MISD, First Floor, Greenwich House, Madingley Rise, Madingley Road,
Cambridge, CB3 0TX. Telephone: +44 1223 339653    Fax: +44 1223 339003 
e-mail:cjs2 at admin.cam.ac.uk 




More information about the interchange-users mailing list