Как я могу удалить значения XML-схемы в Apex? - PullRequest
2 голосов
/ 16 февраля 2012

Я использую веб-сервис SOAP от Apex, который не поддерживается стеком SOAP salesforce, поэтому я рассматриваю его как XML по HTTP.

У меня есть значения XML-схемы, такие как dateTime 2008-03-30T00:00:00-05:00, которые мне нужно восстановить в Apex.Есть ли встроенная поддержка или библиотека, которая может это сделать?

1 Ответ

1 голос
/ 16 февраля 2012

Простого решения для этого не существует, так как вы, вероятно, пытались это сделать прямо сейчас, Datetime.valueOf() здесь не поможет, вам придется разбирать строку и составлять базовое значение Datetime, используя статический метод 6-params newInstanceGmt,затем позвоните addHours / addMinutes, чтобы компенсировать часовой пояс.

Даже если мы пренебрегаем губернатором (и я подозреваю, вы легко столкнетесь с ним, если у вас большой набор с большим количеством дат),другие примитивные типы также потребуют специальной обработки, тогда у вас будет набор предопределенных производных типов, а поверх всех пользовательских производных типов будут добавлены фасеты.А затем смешайте все это вместе, чтобы получить сложные типы.И когда вы все закончите со всем этим, у вас будет собственный SOAP-стек в Apex :) Как я могу убедить вас не делать этого:)

У меня были подобные проблемы, но я даже не хотелразвлекать идею создания собственного стека SOAP (у меня уже были огромные проблемы с библиотекой JSON и ограничителем регулятора).Решение, которое я использовал, заключается в установке «прокси» ASMX на сервере компании рядом с источником (хотя это не обязательно должен быть MS-техник, вы можете в равной степени создать один и тот же прокси с, скажем, Axis), который бы использовал WSDL полностьюфорсировать и переупаковывать операции в детское питание, которое может переварить SOAP Salesforce.Даже несмотря на отставание в использовании другого веб-сервиса, он все равно был лучше, чем ничего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...