For more infomation about this bug, visit <https://www.fmtc.be/bugzilla/orocos/show_bug.cgi?id=534>
Summary: [Project] deployer can not connect to CORBA components
Product: OCL
Version: 1.4.0
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: Deployment
AssignedTo: orocos-dev at lists [dot] mech [dot] kuleuven [dot] be
ReportedBy: peter.soetens at fmtc [dot] be
CC: orocos-dev at lists [dot] mech [dot] kuleuven [dot] be
Estimated Hours: 0.0
When loading an application from an XML file, one can not specify that a
component must connect to remote component. An easy fix would be to have a
'ControlTaskProxy' (or 'Remote') component type in the XML file which leads to
connection to a remote component from the current application. The name would
be resolved using the naming service. One could also specify IORs in an XML
file. You could define the 'IORFile' component type in which the component name
must be interpreted as a filename.
<struct name="Camera" type="Remote">
...
</struct>
<struct name="/tmp/Camera.ior" type="IORFile">
...
</struct>
Other suggestions ?

[Bug 534] [Project] deployer can not connect to CORBA components
For more infomation about this bug, visit <https://www.fmtc.be/bugzilla/orocos/show_bug.cgi?id=534>
--- Comment #1 from Tinne De Laet <tinne.delaet at mech [dot] kuleuven [dot] be> 2008-04-23 13:54:16 ---Created an attachment (id=267)
Example of component which can be deployed and connects to remote components
using corba
(In reply to comment #0)
> When loading an application from an XML file, one can not specify that a
> component must connect to remote component. An easy fix would be to have a
> 'ControlTaskProxy' (or 'Remote') component type in the XML file which leads to
> connection to a remote component from the current application. The name would
> be resolved using the naming service. One could also specify IORs in an XML
> file. You could define the 'IORFile' component type in which the component name
> must be interpreted as a filename.
>
> <struct name="Camera" type="Remote">
> ...
> </struct>
>
> <struct name="/tmp/Camera.ior" type="IORFile">
> ...
> </struct>
>
> Other suggestions ?
>
In our latest experiments, we used, just as you suggest, a seperate component
(we named it corbaclient), which connects to remote components. (I attached the
source )
This component had ports which were in fact just copies of the ports of the
remote component. The task of the corbaclient component was to put the value on
the ports of the remote component on the corbaclient ports, such that they can
be used by other local components.
We gave the corbaclient a poperty with the file name of the IOR of the remote
component:
file</description><value>Estimation.ior</value></simple>
The xml of our corbaclient looked like this;
347 <struct name="Activity" type="PeriodicActivity">
348 <simple name="Period" type="double"><value>0.01</value></simple>
349 <simple name="Priority" type="short"><value>0</value></simple>
350 <simple name="Scheduler"
type="string"><value>ORO_SCHED_RT</value></simple>
351 </struct>
352 <simple name="AutoConf" type="boolean"><value>0</value></simple>
353 <simple name="AutoStart" type="boolean"><value>0</value></simple>
354 <simple name="PropertyFile"
type="string"><value>cpf/corbaClient.cpf</value></simple>
355 <struct name="Ports" type="PropertyBag">
356 </struct>
357 <struct name="Peers" type="PropertyBag">
358 <simple type="string"><value>iTaSC</value></simple>
359 </struct>
360 </struct>
I have no idea if this was the best solution but is certainly worked :).
Tinne