私はJSONIXを使用して、他のシステムから受け取ったXMLをマーシャリングおよびアンマーシャルします。私はマーシャルとアンマーシャリングJsonix要素と値の制限
<charge>
392.2361
<formatted>
392.24</formatted>
</charge>
にしたいXMLは、私はまだ "392.2361" の値をアンマーシャリングする方法を見つけ出すことはできません。何か考えている人はいますか?ありがとうございます。
私はJSONIXを使用して、他のシステムから受け取ったXMLをマーシャリングおよびアンマーシャルします。私はマーシャルとアンマーシャリングJsonix要素と値の制限
<charge>
392.2361
<formatted>
392.24</formatted>
</charge>
にしたいXMLは、私はまだ "392.2361" の値をアンマーシャリングする方法を見つけ出すことはできません。何か考えている人はいますか?ありがとうございます。
ここに必要なものはmixed propertyです。
{
type: 'classInfo',
localName: 'MyType',
propertyInfos: [{
type: 'elementRef',
name: 'charge',
elementName: 'formatted',
collection : true,
mixed: true
}]
}
あなたが値GETとしてのようなものですよ何:
[ '392.2361', { name: { localPart: 'formatted' }, value: '392.24' }]
テストされていない、無保証はなく、あなたがアイデアを得ます。
最後に正しく適用しました。
{
type: 'classInfo',
localName: 'ItemizedForDateType', //<date>
propertyInfos:[
{
type: 'element',
name: 'priceTextType',
elementName: 'price',
typeInfo: 'DOTWXML.PriceFormattedType'
},
{
type: 'element',
name: 'priceMinSellTextType',
elementName: 'priceMinimumSelling',
typeInfo: 'DOTWXML.PriceFormattedType'
}
]
},
{
type: 'classInfo',
localName: 'PriceFormattedType',
propertyInfos:[
{
type: 'elementRef',
name: 'charge',
elementName: 'formatted',
collection : true,
mixed: true
},
]
}
混合プロパティのための私の実装です
あなたはここでを#lexicore感謝し、アンマーシャリングの結果は、次のようなものです:
"itemizedForDateType": [
{
"TYPE_NAME": "DOTWXML.ItemizedForDateType",
"priceTextType": {
"TYPE_NAME": "DOTWXML.PriceFormattedType",
"charge": [
"236.8738",
{
"name": {
"namespaceURI": "",
"localPart": "formatted",
"prefix": "",
"key": "formatted",
"string": "formatted"
},
"value": "236.87"
}
]
}
}
]
私は "コレクションを削除することでミスを犯しました:true "とアンマーシャルの後に" {} "が表示されていました。 "コレクション:true"がであることがわかったらという文脈で、すべてを正しく整列してください。