-
Notifications
You must be signed in to change notification settings - Fork 317
Spring Web Services 4.1.0 RC1 Release Notes
The callback to add MethodArgumentResolver and MethodReturnValueHandler instance has changed.
Previously addArgumentResolvers and addReturnValueHandlers were invoked with an empty list.
They are now invoked with the default argument resolvers and return value handlers, respectively.
This is backward compatible as custom instances were added after the default. However, clearing the list means defaults are removed as well.
MethodArgumentResolver and MethodReturnValueHandler instances can now be ordered according to the defaults.
Adding an instance before the defaults makes sure that it is considered before the defaults.
Wss4jSecurityInterceptor allows any WSS4J options to be specified on its internal handler, see setWsHandlerOption.
This provides more flexibility in configuring the handler, without the need of adding more methods to Wss4jSecurityInterceptor.
HttpComponents5MessageSender has now a companion class for when an HttpClient is provided as-is.
Creating a SimpleHttpComponents5MessageSender with your custom client avoids the additional configuration options that HttpComponents5MessageSender provides.
The HttpClient can be configured using HttpComponents5ClientFactory that provides additional callbacks for advanced configuration.
Once the factory is initialized with your customizations, you can create a WebServiceMessageSender by providing the factory to SimpleHttpComponents5MessageSender.
Here is an example configuring NTLM authentication whilst using the high-level customizations.
HttpComponents5ClientFactory factory = HttpComponents5ClientFactory.withDefaults();
factory.setConnectionTimeout(Duration.ofMillis(3000));
factory.addClientBuilderCustomizer(builder -> {
BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(new AuthScope(HOST_IP, HOST_PORT),
new NTCredentials("user", "pass".toCharArray(), null, "domain"));
builder.setDefaultCredentialsProvider(credentialsProvider);
builder.setDefaultAuthSchemeRegistry(RegistryBuilder.<AuthSchemeFactory>create()
.register(AuthSchemes.NTLM, new NTLMSchemeFactory())
.build());
});
SimpleHttpComponents5MessageSender messageSender = new SimpleHttpComponents5MessageSender(factory);Spring Web Services 4.1.0-RC1 moves to new versions of several Spring projects:
Third-party dependencies have also been updated, some of the more noteworthy of which are the following:
-
Angus Mail 2.0.3