[
https://issues.apache.org/jira/browse/CXF-8587?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andriy Redko updated CXF-8587:
------------------------------
Fix Version/s: 3.5.0
3.4.5
3.3.12
> Don't check the validation flag and get the schema on every iteration for
> SoapHeader
> ------------------------------------------------------------------------------------
>
> Key: CXF-8587
> URL: https://issues.apache.org/jira/browse/CXF-8587
> Project: CXF
> Issue Type: Improvement
> Components: Soap Binding
> Affects Versions: 3.4.4, 3.3.11
> Reporter: Ilya Mikhailov
> Priority: Minor
> Fix For: 3.3.12, 3.4.5, 3.5.0
>
>
> It seems like we don't need to check the schema enabled flag and get schema
> on every iteration for a SoapHeder.
> {code:java}
> for (SoapHeaderInfo header : headers) {
> MessagePartInfo mpi = header.getPart();
> try {
> if (ServiceUtils.isSchemaValidationEnabled(SchemaValidationType.IN,
> message)) {
> Schema schema =
> EndpointReferenceUtils.getSchema(service.getServiceInfos().get(0), message
>
> .getExchange().getBus());
> validateHeader(message, mpi, schema);
> }
> } catch (Fault f) {
> if (!isRequestor(message)) {
> f.setFaultCode(Fault.FAULT_CODE_CLIENT);
> }
> throw f;
> }
> ...
> }{code}
> Removing these actions outside of the loop can provide a slight performance
> improvement if multiple headers are present in a request.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)