Malte,
Also, how would you implement the "getProject" glueing in OpenACS if I have a TCL procedure that returns the project_id when called.
I tried to sketch a ready-to-take sample for you below ... did I get it right when assuming that you want to expose an existing tcl proc through a soap channel?
# / / / / / / / / / / / / / / / / / / / / / / / / / /
# $Id$# -) prerequisites
namespace eval :some_name_space {
proc getProject {input} {
# retrieve project_id based on input ...
set project_id 1
return $project_id
}
}
namespace eval ::cognovis {
::xo::db::require package xotcl-request-broker
namespace import ::xorb::*
# 1-) provide an interface description aka 'service contract'
ServiceContract EchoProject -defines {
Abstract getProject \
-arguments {
input:xsString
} -returns returnValue:xsInteger \
-description {
A sample echo operation that returns
an arbitrary integer value.
}
} -ad_doc {
This is the sample interface description as requested
by Malte ...
}
# 1a-) deploy your interface description
EchoProject deploy
# 2-) Provide 'servant' code and register it with the invoker:
# 'service implementation'
ServiceImplementation EchoProjectImpl \
-implements EchoProject \
-using {
Delegate getProject \
-for ::some_name_space::getProject \
{Delegates calls to the servant proc indicated ...}
}
# 3a-) deploy your service implementation
EchoProjectImpl deploy
}
As for the second issue, i.e. document/literal support for the consumer side:
... how far did you manage to get with document/literal and is there a way to help speed up the process?
I am closing down and started rewriting xosoap allover, I have a somewhat firm deadline for the Jan 24, so, hopefully, till Sunday, there will be something operative (though not completed). Currently I can't think of anything that I can easily delegate to you, but I will think a bit and come back to you ... thanks for the kind offer!