[cosmic-users] PICML: idl_to_picml yields incorrect scope on
create...ComponentHome_Servant
Thomas Silveria
Thomas_Silveria at raytheon.com
Wed Apr 26 10:18:01 CDT 2006
CoSMIC VERSION: 0.4.8
HOST MACHINE and OPERATING SYSTEM:
Intel(R) Pentium(R) M 1.86GHz
Microsoft Windows XP Version 2002 Service Pack 1
TOOL/AREA/CLASS/EXAMPLE AFFECTED:
idl_to_picml produces servant entryPoints as follows:
createProxyComponentHome_Servant
instead of using module scope like this:
create_MyProxyComponent_ProxyComponentHome_Servant
THE PROBLEM AFFECTS EXECUTION
SYNOPSIS:
The Plan Launcher Dies trying to find the nonexistent
createProxyComponentHome_Servant entry point.
DESCRIPTION:
REPEAT BY:
SAMPLE FIX/WORKAROUND:
RELATED FILES:
I am re-posting this. Original PRF/email trail follows:
Sorry, I got excited that I knew how to solve your problem and didn't read
all
the way to the end, where you say that you know how to manually fix it :-)
I don't know if it's a known bug; I've been able to avoid using the GME
tool
for quite some time since I mostly mess around with existing deployment
plans.
I'm sure the Vandy guys will reply as soon as they can take a look.
Matt
Nicholas Grimes wrote:
> Thanks Matt,
>
> I did change it in the model and moved on. Just reporting the steps I
did
> to duplicate the bug. Is this a known bug that will be fixed in a later
> release ?
>
>
> Nick
>
>
>
> Matthew Gillen
> <mgillen at bbn.com>
> To
> 04/25/2006 11:27 Nicholas Grimes
> AM <Nicholas_Grimes at raytheon.com>
> cc
> cosmic-users at list.isis.vanderbilt.e
> du,
> cosmic-dev at list.isis.vanderbilt.edu
> , Paul R Legault
> <Paul_R_Legault at raytheon.com>,
John
> M Slaby
<john_m_slaby at raytheon.com>
> Subject
> Re: [cosmic-users] Incorrect
method
> signature
>
>
>
>
>
>
>
>
>
>
> Hi Nicholas,
> In your .cdp file you have this:
> <location>ProxyComponent_svnt</location>
> <execParameter>
> <name>entryPoint</name>
> <value>
> <type>
> <kind>tk_string</kind>
> </type>
> <value>
>
> <string>create_MyProxyComponent_ProxyComponentHome_Servant</string>
> </value>
> </value>
> </execParameter>
> </artifact>
>
> The "create_MyProxyComponent_ProxyComponentHome_Servant" string tells
CIAO
> what
> function to look for. It looks like you have the create function named:
> "createProxyComponentHome_Impl"
>
> Those two strings need to match, so either change the .cdp file or
rename
> your
> function to match what's in the .cdp file.
>
> Matt
>
> Try moving the
>
> Nicholas Grimes wrote:
>> CoSMIC VERSION: 0.4.5
>>
>> HOST MACHINE and OPERATING SYSTEM:
>> i.e., which version of Windows are you using. Windows XP, CentOS
> 4.2
>> TOOL/AREA/CLASS/EXAMPLE AFFECTED:
>> [Particularly, which tool in CoSMIC is affected? PICML or
>> generate_component_mpc.pl
>>
>> DOES THE PROBLEM AFFECT:
>> COMPILATION?
>> LINKING?
>> EXECUTION? Incorrect method signature
>> OTHER
>>
>> SYNOPSIS:
>>
>> Note: I used â??Building a Stock Quooter with CoSMIC and Dance
Tutorial
> for
>> guidance.
>>
>> Modelling Side (Windows XP)
>>
>> 1. Create ProxyComponent.idl
>>
>> //ProxyComponent.idl,v 1.1 2006
>> #include <Components.idl>
>> module MyProxyComponent
>> {
>>
>> interface Dummy {
>> void DoNothing();
>> };
>> /**
>> * @class ProxyCOmponent
>> *
>> * @brief component
>> */
>> component ProxyComponent supports Dummy
>> {
>> attribute string theExecutable;
>> attribute string theArg0;
>> attribute string theArg1;
>> attribute string theArg2;
>> attribute string theArg3;
>> attribute string theArg4;
>> attribute string theArg5;
>> attribute string theArg6;
>> attribute string theArg7;
>> attribute string theArg8;
>> attribute string theArg9;
>> attribute string theEnvironmentFile;
>> };
>>
>> /**
>> * @class ProxyComponentHome
>> *
>> * @brief home for ProxyComponent component
>> */
>> home ProxyComponentHome manages ProxyComponent
>> {
>> };
>> };
>>
>> 2. Create ProxyComponnent.cidl
>>
>> #ifndef PROXYCOMPONENT_CIDL
>> #define PROXYCOMPONENT_CIDL
>> #include "ProxyComponent.idl"
>> module MyProxyComponent
>> {
>> composition session ProxyComponent_Impl
>> {
>> home executor ProxyComponentHome_Exec
>> {
>> implements ProxyComponentHome;
>> manages ProxyComponent_Exec;
>> };
>> };
>> };
>> #endif // !defined PROXYCOMPONENT_CIDL
>>
>> 3. Run C:\Program Files\Microsoft Visual Studio .NET
>> 2003\Vc7\bin\VCVARS32.bat
>>
>> 4 Run idl_to_picml -x ProxyComponent ProxyComponent.idl
>>
>> 5. In GME, Create Project, PICML, D:\njg\env\ProxyComponent
>>
>> 6 In GME Run File->Import XML d:\njg\env\ProxyComponent.xme
>>
>> 7 In GME ComponentImplementations, Expand ProxyComponentImplementation,
>> ProxyComponent_svnt,
>> entrypoin and note the value: createProxyComponentHome_Servant
>>
>> 8. Finish up the model details and Generate FlattendDeploymentPlan
with
>> name PC_Plan.
>>
>> Code Side (LINUX CENTOS)
>>
>> 1. Put PC_Plan into descriptors folder, characterization file
>> ProxyComponent.wlgChar into characterization folder. (Attached)
>>
>> 2. Write the code for ProxyComponent_exec.(cpp h) (Attached)
>>
>> 3. Source the shell script to setup ACE/TAO/CIAO environment.
>>
>> 4. Create folder and put in ProxyComponent_exec.(cpp h),
> ProxyComponent.idl
>> and ProxyComponent.cidl.
>>
>> 5. Run $CIAO_ROOT/bin/cidlc ProxyComponent.cidl.
>>
>> 6. Run $CIAO_ROOT/bin/generate_component_mpc.pl ProxyComponent.
>>
>> 7. Run $ACE_ROOT/bin/mwc.pl.
>>
>> 8. Run gmake and fix bugs until a closure is formed.
>>
>> 3. Run Node Manager and Execution Manager and Plan Launcher.
>>
>> 4. Dies trying to find createProxyComponentHome_Servant.
>>
>> (output):
>>
>> Node Manager
>>
>> Node Daemon Profile
>> ------------------------------------
>> Current Directory :
>>
>
/proj/CHSIRAD/BUILD_0/DRM/AIF/ComponentizedWLG/ComponentWLG/characterization
>
>> NodeDaemon Name : localhost
>> NodeDaemon Port : 10000
>> -ORBEndpoint iiop://localhost:10000 -s
>>
>
/proj/CHSIRAD/BUILD_0/DRM/Middleware/ACE_wrappers/TAO/CIAO/DAnCE/NodeApplicat
ion/NodeApplicationCIAO_NodeManager
>
>> IOR:
>>
>
IOR:010000001900000049444c3a4349414f2f4e6f64654d616e616765723a312e30000000000
10000000000000068000000010102000a0000006c6f63616c686f73740010271b00000014010f00
525354ab234e447eab0e00000000000100000001000000000200000000000000080000000100000
004f41540100000018000000010000000100010001000000010001050901010000000000
>
>> CIAO_NodeManager is running...
>> *** Starting NodeApplication
>> Running NodeApplication...
>> (5358|3086887776) EXCEPTION, Container_Impl::install
>>
>> user exception, ID 'IDL:Deployment/ImplEntryPointNotFound:1.0'
>> (5358|3086887776) EXCEPTION, CIAO_NodeApplication::install error
>>
>> user exception, ID 'IDL:Deployment/ImplEntryPointNotFound:1.0'
>>
>>
>
*****************************************************************************
**
>
>> Execution Manager
>>
>> CIAO_ExecutionManager is running...
>> (5351|3086882496) EXCEPTION, DomainApplicationManager_Impl::startLaunch
>>
>> user exception, ID 'IDL:Deployment/StartError:1.0'
>>
>>
>
*****************************************************************************
**
>
>> Plan Launcher
>>
>> (5356|3086874304) Initializing the Xerces runtime
>> CIAO_PlanLauncher: start Launch application...
>> EXCEPTION: StartError exception caught:
>> SessionContainer::ciao_install_home, Entry point
>> createProxyComponentHome_Servant invalid in dll ProxyComponent_svnt
>> Deployment failed. Plan_Launcher exiting.
>>
>>
>
*****************************************************************************
**
>
>> 5. Should be looking for
> create_MyProxyComponent_ProxyComponentHome_Servant
>> .
>>
>> 6. Verify by running nm -o libProxyComponent_svnt.so | grep
Home_Servant
>> and noting it finds
>> create_MyProxyComponent_ProxyComponentHome_Servant but not
>> create_MyProxyComponent_ProxyComponentHome_Servant
>>
>> Modelling side
>>
>> 1. Change name in ArtifactContainer, redeploy.
>>
>> Code Side
>>
>> 1. Repeat test and it works.
>>
>> (See attached file: ProxyComponent_exec.h)(See attached file:
>> ProxyComponent.cidl)(See attached file: ProxyComponent.idl)(See
attached
>> file: ProxyComponent.wlgChar)(See attached file:
ProxyComponent_exec.cpp)
>> (See attached file: PC_Plan.cdp)
>>
>>
>>
>>
>>
>>
>>
>>
------------------------------------------------------------------------
>>
>> _______________________________________________
>> cosmic-users mailing list
>> cosmic-users at list.isis.vanderbilt.edu
>> http://list.isis.vanderbilt.edu/mailman/listinfo/cosmic-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://list.isis.vanderbilt.edu/pipermail/cosmic-users/attachments/20060426/160e2151/attachment-0001.htm
More information about the cosmic-users
mailing list