ApexのXMLスキーマ値をMarshall UnsmarShallにするにはどうすればよいですか?
-
25-10-2019 - |
質問
SalesforceのSOAPスタックがサポートしていないApexからSOAP Webサービスを消費しているので、HTTPよりもXMLとして扱っています。
DateTimeなどのXMLスキーマ値があります 2008-03-30T00:00:00-05:00
私は頂点にぶらぶらする必要があること。組み込みのサポート、またはこれを行うことができるライブラリがありますか?
解決
おそらくすぐに試したので、これに対する簡単な解決策はありません。 Datetime.valueOf()
ここではほとんど役に立ちません。6パラムを使用して文字列を分析し、ベースデータタイムを作成する必要があります newInstanceGmt
静的メソッド、次に呼び出します addHours
/addMinutes
タイムゾーンを補正します。
知事を無視したとしても(そして、あなたが多くの日付を備えた大きなセットがある場合、簡単に遭遇すると思われます)、他の原始的なタイプにも特別な取り扱いが必要です。そして、すべてのカスタム派生タイプをファセットで締めます。そして、それをすべて混合して複雑なタイプを取得します。そして、あなたがすべてこのすべてを終えたとき、あなたは頂点にカスタム石鹸スタックを持っています:)どうすればそれをしないように納得させることができますか:)
私は同様の問題を抱えていましたが、カスタム石鹸スタックを構築するという考えを楽しませたくさえありませんでした(すでに大きな問題がありました JSONライブラリ および知事リミッター)。私が使用したソリューションは、ソースの近くに会社のサーバーにASMX「プロキシ」をインストールすることです(MS Techである必要はありませんが、たとえば軸と同じプロキシを等しく構築できます)。 Salesforce Soapが消化できる離乳食に操作を強制と再梱包します。別のウェブサービスのピギーバックの遅れがあったとしても、それはまだ何よりもはるかに優れていました。