前提
SpringでXML定義で半角スペースのみの値をアプリ側に渡したいのですが、無設定扱いになってしまいます。
HTMLでもあるような のルールの様に感じたのですが、どのようにしたら受け渡されるのでしょうか?
発生している問題・エラーメッセージ
値(半角スペース)が受け渡らず、空文字扱いになってしまう。
該当のソースコード
XML
1<properties> 2 <property key="xxxx"> </property> 3<properties> 4 5Java側 6public void setXxxx(char val) {
試したこと
・普通の文字列に変えると正しく受け渡せています。
・「schema:space」を貼り付けましたが無認識。
・「&#160;」を設定すると確かに半角スペースが受け渡されるのですが0x20でない。
・「\u0020」を設定すると文字列のまま、受け渡されます。。
Java側がchar型なので変換が掛かっているのでしょうか?
Javaの受け口型の型は変更できず、char型で受け渡す方法をご存じの方いましたら宜しくお願いします。
その受け取るアプリの設定次第です。
https://stackoverflow.com/questions/514635/represent-space-and-tab-in-xml-tag
SPACE は   のようです。
schema:space ? xml:space ?
>xebmeさん
ありがとうございます!試して見ましたが、空文字扱いでした。。
&#160は半角スペースで来たのですが・・
そもそも160って16進数なのでしょうか?RGB形式で見たフォーマットですが、RGBも省略可能な連結16進数だった記憶があるので、よく分からずです。。
>jimbeさん
schema:spaceでした。。すみません。
>schema:space
こちらこそすいません、 "schema:space" というのを見たことがありませんで…。検索してもそれらしいのが見当たらなかったので、どのようなものかのネットの記事等の URL が有りましたら教えて頂けますか。
失礼しました。 xml:spaceの間違いです。
ぐぐってこの辺も見てました。
https://www.techscore.com/tech/XML/Basic/Basic2/2_3
xml:space でしたか、了解です。
それで、その properties は Spring のなんというファイルに書かれているのでしょうか。試してみたいのですが、 Spring に疎いもので…。
java 側の setXxx() も、 Spring のどのような定義からそのクラスの setter が呼ばれるようにすれば再現できるでしょう。
xebmeさんが書いてくださっているURLに記載がありますが、  はNO-BREAK SPACEです。
16進の場合は、xが入るので   となります。
SPACEは10進で   で、16進だと   になります。
あなたの回答
tips
プレビュー