操作
バグ #250
完了引数が sequence out/inout の場合のJava版コードジェネレータの問題
ステータス:
終了
優先度:
通常
担当者:
-
対象バージョン:
-
開始日:
2008/11/18
期日:
進捗率:
100%
予定工数:
説明
outパラメータを持つインターフェース
typedef sequence<double> DoubleSeq; interface TestService{ void testDoubleSeq(in DoubleSeq in_double, out DoubleSeq out_double); };
をサービスポートのインターフェース定義として与えた場合、Java用に生成される実装コードが、
public void testDoubleSeq (double[] in_double, DoubleSeqHolderout_double)
ではなく、
public void testDoubleSeq(double[] in_double, double[] out_double)
になってしまう問題。
JavaConverter.java 内の関数 convCORBA2JavaforArg で、
if( blnSequence ) result = result + "[]";
を
if( blnSequence ) { if( !strDirection.equals(dirIn) ) { result = strCorba + "Holder"; } else { result = result + "[]"; } }
に修正することで正しい引数型名でサービス実装コードが出力される。
上記はRtcTemplateでのコードなので、RTCBuilderでは若干変更されている可能性があるので注意する必要がある。
匿名ユーザー さんが約16年前に更新
- ステータス を 新規 から 終了 に変更
- 進捗率 を 0 から 100 に変更
- Fixed bugs of Redmaine Ticket#250.
Problem of Java code generator when argument is sequence out/inout.
- Repository
-- RTCBuilder
<svn://openrtm.a01.aist.go.jp/RTCBuilder/branches/RELENG_0_4>
<svn://openrtm.a01.aist.go.jp/RTCBuilder/trunk>
-- RtcTemplate
<svn://openrtm.a01.aist.go.jp/RtcTemplate/trunk>
操作