Как игнорировать поля base64binary при регистрации сообщений SOAP? - PullRequest
2 голосов
/ 20 сентября 2011

Я использую Spring's SoapEnvelopeLoggingInterceptor для записи запросов / ответов SOAP.

Некоторые из запросов / ответов содержат поля base64Binary, которые занимают много места в файлах журналов, и мне не требуется регистрировать их для своих целей.

Копаясь в коде SoapEnvelopeLoggingInterceptor Я вижу, что java.xml.transform.Transformer используется так:

Transformer transformer = createTransformer();
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
transformer.setOutputProperty(OutputKeys.INDENT, "no");
return transformer; 

Существуют ли какие-либо свойства, которые я могу установить для Transformer, которые не позволят ему распечатать содержимое полей base64Binary? Или что-нибудь еще, что я могу настроить или переопределить, чтобы предотвратить его регистрацию?

1 Ответ

0 голосов
/ 20 сентября 2011

Я не знаю о Transformer, однако я думаю, что поле Base64 будет иметь примерно одинаковое количество прописных и строчных букв.Нормальный текст имеет тенденцию иметь либо много больше строчных букв, либо быть полностью заглавными.Вы можете определить разницу таким образом.

Также есть знаки препинания, которые никогда не появляются в Base64.Просмотр любого из них скажет вам, что поле не Base64.

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