Hi karel,

Thanks for reply. 

I need to downcast to the implemementation class "session_Impl" to
access the data member of the OBV session valuetype. Because when I have
provided the public accesser function in the session_Impl to get the
values of OBV session Data members.

        When I iterate over the seq1_session list and get the session
value type pointer then I am not able to downcast to either of the OBV
session or session_Impl. I am not clear what do you mean by moving the
needed implementation to OBV session class. Its just that I have to
access the data members of the OBV session valuetype for that when I try
to downcast to the OBV Session class it also fails. So I am not able to
get access the data member of the valuetype.

Earlier, i had not tested the code thoroughly on the GCC 4.0.1 now I
have done it and found the same behaviour as its on the vs2005.

The code is working fine on the VS2002.

On further debuging I have found that the session_impl value type is
created and members are demarshalled properly on using reinterpret_cast
I get the same pointer of the session_impl back from the session
valuetype which was allocated at the time of create valuebase. but the
data members are missing.

I am debugging further and trying to single out the problematic area if
I find any thing wierd I will definitely ask for your help.


Once again thanks a lot


--Regards
Guminder Singh
Member (SDG)
Core Technologies Group
Quark Media House pvt Ltd.
A- 45 industrial Area (Mohali)
Phone: 91 -172-2299440
[EMAIL PROTECTED]
 
CONFIDENTIALITY NOTICE
This e-mail transmission and any documents, files, or previous e-mail
messages appended or attached to it, may contain information that is
confidential or legally privileged. If you are not the intended
recipient, or a person responsible for delivering it to the intended
recipient, you are hereby notified that you must not read this
transmission and that any disclosure, copying, printing, distribution,
or use of the information contained or attached to this transmission is
STRICTLY PROHIBITED. If you have received this transmission in error,
please immediately notify the sender by telephone xxx.xxx.xxxx or return
e-mail message [EMAIL PROTECTED] and delete the original transmission,
its attachments, and any copies without reading or saving in any manner.
Thank you.
 

-----Original Message-----
From: Karel Gardas [mailto:[EMAIL PROTECTED] 
Sent: Thursday, October 12, 2006 1:49 PM
To: Gurminder Singh
Cc: [email protected]
Subject: Re: mico orb gcc4.1 and VC2005 issue of sequence of valuetype

On Wed, 11 Oct 2006, Gurminder Singh wrote:

>
> Hi, karel
>
>
> I am stuck with the issue I reported to u earlier. I have been working

> on resolving this issue for last 14 days but no success. Please help 
> me out
>
> PROBLEM STATEMENT:
>
> i have the java server based on spring framework which exposes its 
> been called  SessionService on iiop and registered it on jac naming
service.
>
> The client is developed on Visual studio 2005 using mico orb 
> "mico-cl8-10.4.06"  (special build by soran for vc2005 ) version which

> i complied on VS2005.
>
> I have an valuetype seq1_ Session  which is an sequence of Session 
> valuetype corresponding to this value type I have factory registered 
> with orb to construct this on client side.
>
> Problem I face is when I make a call Get AllSession() on 
> SessionService which returns the seq1_session
>
> The call is successful , I get the se1_session.
>
> I iterate over the seq1_session and get the session valuetype
>
> Up to this every thing work fine but when I try to dynamically cast 
> the session value type to session_impl (which is a wrapper over the 
> OBV session class )

first of all, why do you need to downcast to implementation class? Isn't
it better to move needed functionality to the public OBV interface?

> The dynamic_cast fail it return me the NULL. But if I use the typeid 
> to check the object type on session it gives me the session_impl
>
> I  have debug the mico code and what is found is  seq1_session 
> demarshalling is proper. I can sess the session valuetype properly get

> constructed and the data is properly
>
> Filled in the session valuetype. I get the properly build sequence.  
> But not able to understand the why I am not able to dynamic_cast it to

> session_impl when the object it created at the time of demashal is 
> session_impl in the call create_for_unmarshal in session factory.
>
> It is very strange that if i compile the client on VC7/Visual Studios
> 2002 then the same code works using the mico build 2.3.12 compiled on
> vc7 And Also
>
> Gcc 401 version I get the same problem. The dynamic_cast fails.

IIRC you've had those issues with only VC2005, you were able to compile
working code with GCC and VC2002, has anything changed on this? Anyway,
so far it looks like compiler or compiler parameters issue...

Cheers,
Karel
--
Karel Gardas                  [EMAIL PROTECTED]
ObjectSecurity Ltd.           http://www.objectsecurity.com
---
Need experienced, fast, reliable technical MICO support?
---> http://www.objectsecurity.com/mico_commsup_referral.html <---
---

_______________________________________________
Mico-devel mailing list
[email protected]
http://www.mico.org/mailman/listinfo/mico-devel

Reply via email to