[openrtm-users 01129] Re: java版1.0RC1でのTimedStringでの日本語の取り扱いについて

Toshitaka Fujioka fujioka-txa @ necst.nec.co.jp
2010年 2月 22日 (月) 17:55:08 JST


産総研  片見様、お世話になっております。
NECシステムテクノロジー 藤岡です。


すばやいご対応、ありがとうございました。

一点質問があります。
TimedWString 型はOpenRTM-aist-javaの1.0.0正式版には含まれるのでしょうか?


以上です、よろしくお願いいたします。
失礼いたします。

On 2010/02/22 16:52, katami wrote:
> NECシステムテクノロジー
>    藤岡  俊考  様
> 
> お世話になっております。
> 産総研  片見です。
> 
> Java版の場合、日本語はワイド文字列型(wstring)を使用するこになります。
> TimedString 型 ( 参照 BasicDataType.idl) は time 型と string 型で構成されているため、
> ご報告頂いたエラーが発生いたします。
> 
> TimedWString 型を定義した idl ファイルを添付いたします。
> (time 型と wstring 型で構成してあります。)
> TimedString 型 を TimedWString 型 に変更して
> ご使用して頂ければ、日本語も送信可能となります。
> 
>    添付した idl ファイルは、BasicDataType.idl をインクルードしています。
>    idl をコンパイルする際は、-i オプションにてフォルダの指定をお願いいたします。
>    >idlj -i "C:\Program Files\OpenRTM-aist\jp.go.aist.rtm.RTC\idl" UsersDataType.idl
> 
> お手数ですが、
> よろしくお願いいたします。
> 
> On Mon, 22 Feb 2010 14:43:40 +0900
> Toshitaka Fujioka<fujioka-txa @ necst.nec.co.jp>  wrote:
> 
>> OpenRTM-aist開発者様、お世話になっております。
>> NECシステムテクノロジーの藤岡と申します。
>>
>>
>> OpenRTM-aist-Java-1.0.0-RC1.msi付属のサンプルソースConsoleInImpl.java、ConsoleOutImpl.java
>> のポートのデータタイプを添付ファイルのようにTimedStringに変更しデータのやり取りをしたところ
>> ascii文字は問題なく送受信できますが、日本語を送信しようとすると以下のようなエラーが表示され
>> ます。
>>
>> java版のTimedString型ではC++・Python版のように日本語を取り扱うことは出来ないのでしょうか?
>>
>> ==================================================================
>> Please input number:
>> abcd
>> Sending to subscriber: abcd
>> Please input number:
>> あいうえお
>> Sending to subscriber: あいうえお
>> 2010/02/22 14:17:11 com.sun.corba.se.impl.encoding.CodeSetConversion$JavaCTBConv
>> erter convertCharArray
>> 警告: "IOP02400001: (DATA_CONVERSION) Character does not map to negotiated trans
>> mission code set"
>> org.omg.CORBA.DATA_CONVERSION:   vmcid: OMG  minor code: 1  completed: No
>>          at com.sun.corba.se.impl.logging.OMGSystemException.charNotInCodeset(Unk
>> nown Source)
>>          at com.sun.corba.se.impl.logging.OMGSystemException.charNotInCodeset(Unk
>> nown Source)
>>          at com.sun.corba.se.impl.encoding.CodeSetConversion$JavaCTBConverter.con
>> vertCharArray(Unknown Source)
>>          at com.sun.corba.se.impl.encoding.CodeSetConversion$JavaCTBConverter.con
>> vert(Unknown Source)
>>          at com.sun.corba.se.impl.encoding.CDROutputStream_1_0.writeString(Unknow
>> n Source)
>>          at com.sun.corba.se.impl.encoding.CDROutputStream_1_0.write_string(Unkno
>> wn Source)
>>          at com.sun.corba.se.impl.encoding.CDROutputStream.write_string(Unknown S
>> ource)
>>          at RTC.TimedStringHelper.write(Unknown Source)
>>          at RTC.TimedStringHolder._write(Unknown Source)
>>          at jp.go.aist.rtm.RTC.port.OutPort.write_stream(Unknown Source)
>>          at jp.go.aist.rtm.RTC.port.OutPort.write(Unknown Source)
>>          at jp.go.aist.rtm.RTC.port.OutPort.write(Unknown Source)
>>          at RTMExamples.SimpleIO.ConsoleInImpl.onExecute(ConsoleInImpl.java:103)
>>          at jp.go.aist.rtm.RTC.RTObject_impl.on_execute(Unknown Source)
>>          at OpenRTM.DataFlowComponentPOA._invoke(Unknown Source)
>>          at com.sun.corba.se.impl.protocol.CorbaServerRequestDispatcherImpl.dispa
>> tchToServant(Unknown Source)
>>          at com.sun.corba.se.impl.protocol.CorbaServerRequestDispatcherImpl.dispa
>> tch(Unknown Source)
>>          at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequest
>> Request(Unknown Source)
>>          at com.sun.corba.se.impl.protocol.SharedCDRClientRequestDispatcherImpl.m
>> arshalingComplete(Unknown Source)
>>          at com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.invoke(Unknown
>>   Source)
>>          at org.omg.CORBA.portable.ObjectImpl._invoke(Unknown Source)
>>          at OpenRTM._DataFlowComponentStub.on_execute(Unknown Source)
>>          at jp.go.aist.rtm.RTC.executionContext.PeriodicExecutionContext$DFP.on_e
>> xecute(Unknown Source)
>>          at jp.go.aist.rtm.RTC.executionContext.PeriodicExecutionContext$DFPBase$
>> onExecute.doAction(Unknown Source)
>>          at jp.go.aist.rtm.RTC.StateMachine.worker(Unknown Source)
>>          at jp.go.aist.rtm.RTC.executionContext.PeriodicExecutionContext$DFPBase.
>> worker(Unknown Source)
>>          at jp.go.aist.rtm.RTC.executionContext.PeriodicExecutionContext$Comp.inv
>> oke(Unknown Source)
>>          at jp.go.aist.rtm.RTC.executionContext.PeriodicExecutionContext.svc(Unkn
>> own Source)
>>          at jp.go.aist.rtm.RTC.executionContext.PeriodicExecutionContext.run(Unkn
>> own Source)
>>          at java.lang.Thread.run(Unknown Source)
>> Caused by: java.nio.charset.UnmappableCharacterException: Input length = 1
>>          at java.nio.charset.CoderResult.throwException(Unknown Source)
>>          at java.nio.charset.CharsetEncoder.encode(Unknown Source)
>>          ... 28 more
>> =================================================================================
>>
>>
>> 以上です、よろしくお願いいたします。
>> 失礼いたします。
>>
>> -- 
>> NECシステムテクノロジー(株)
>> プラットフォーム事業本部 エンベデッドソフトウェア事業部
>> ウインドウズ エンベデッド ソリューション センター
>> 藤岡 俊考 fujioka-txa @ necst.nec.co.jp
>> tel: 078-991-5580 telnet: 8-73-73869
> 
> 
> 独立行政法人産業技術総合研究所
> 知能システム研究部門 統合知能研究グループ
> 〒305-8568 茨城県つくば市梅園1-1-1 中央第2
> 片見 剛人<fsi-katami @ aist.go.jp>

-- 
NECシステムテクノロジー(株)
プラットフォーム事業本部 エンベデッドソフトウェア事業部
ウインドウズ エンベデッド ソリューション センター
藤岡 俊考 fujioka-txa @ necst.nec.co.jp
tel: 078-991-5580 telnet: 8-73-73869



openrtm-users メーリングリストの案内