Orber
Niclas Eklund
nick@REDACTED
Thu May 4 13:18:55 CEST 2000
Hi!
The problem is that JacORB adds the tag profile 'TAG_MULTIPLE_COMPONENTS',
i.e., {'IOP_TaggedProfile',1,[0,0,0,0,0,0,0,0]}.
Orber did not ignore unrecognized TaggedProfiles before, which have been
updated in Orber-3.0.3. Since JacORB add this to the IOR you get the
exception you mentioned.
How to fix it:
In iop_ior.erl change:
decode_profile(_, #'IOP_TaggedProfile'{tag=1, profile_data=ProfileData}) ->
%exit({'decode_profile_data', 'multiple components not supported'}).
corba:raise(#'NO_IMPLEMENT'{}).
to:
decode_profile(_, #'IOP_TaggedProfile'{tag=N, profile_data=ProfileData}) ->
#'IOP_TaggedProfile'{tag=N, profile_data=ProfileData};
decode_profile(_, _) ->
corba:raise(#'INV_OBJREF'{completion_status=?COMPLETED_NO}).
change (in iop_ior.erl):
code_profile_datas(_, [#'IOP_TaggedProfile'{tag=1, profile_data=P} | Profiles]) ->
exit({'code_profile_datas', 'multiple components not supported'}).
to:
code_profile_datas(Version, [#'IOP_TaggedProfile'{tag=N, profile_data=P} | Profiles]) ->
[#'IOP_TaggedProfile'{tag=N, profile_data=P} | code_profile_datas(Version, Profiles)];
code_profile_datas(_, _) ->
corba:raise(#'INV_OBJREF'{completion_status=?COMPLETED_NO}).
/Nick
On Thu, 4 May 2000, =?ISO-8859-1?Q?Bj=F6rn Wingman?= wrote:
> JacORB IOR:
>
> IOR:000000000000001949444c3a68656c69312f48656c695365727665723a312e3000000000000000030000000000000036000100000000000f3133302e3233362e3137362e35370000ac45000000000016333337323130393731312f000f493514360c4a0116320000000000000000003c000101000000000f3133302e3233362e3137362e35370000ac45000000000016333337323130393731312f000f493514360c4a01163200000000000000000001000000080000000000000000
The IOR above decoded:
{'IOP_IOR',"IDL:heli1/HeliServer:1.0",
[{'IOP_TaggedProfile',0,
{'IIOP_ProfileBody_1_0',
{'IIOP_Version',1,0},
"130.236.176.57",
44101,
[51,
51,
55,
50,
49,
48,
57,
55,
49,
49,
47,
0,
15,
73|...]}},
{'IOP_TaggedProfile',0,
{'IIOP_ProfileBody_1_1',
{'IIOP_Version',1,1},
"130.236.176.57",
44101,
[51,
51,
55,
50,
49,
48,
57,
55,
49,
49,
47,
0,
15|...],
[]}},
{'IOP_TaggedProfile',1,[0,0,0,0,0,0,0,0]}]}
>
> Erlang IOR (from the
> http://wikie.vegetable.org/get?node=orber+quickstart example files):
>
> IOR:000000000000001d49444c3a6d617468732f416464416e644d756c7469706c793a312e300000000000000001000000000000007c000100000000001462616b65642e766567657461626c652e6f7267000fa10000000000584f524245523a49444c3a6d617468732f416464416e644d756c7469706c793a312e303a6b65793a836802680362000003ac620007759b620008215b64000c6164646d756c4062616b65643a83640009756e646566696e6564
>
>
> They do not describe the same object, but the erlang one goes through
> corba:string_to_object ok, the other gives the error I quoted in the
> previous mail.
>
> /Björn Wingman
>
_____________________________________________________________
Niclas Eklund, Ericsson Network Core Products, +46-8-72 75765
More information about the erlang-questions
mailing list