Commit Graph

190 Commits

Author SHA1 Message Date
Stéphane Nicoll
7961ac0d99 Remove deprecated code
Closes gh-1560
2025-05-14 15:43:24 +02:00
Stéphane Nicoll
9f5e64e50a Merge branch '4.1.x' 2025-05-06 09:06:45 +02:00
Stéphane Nicoll
1f6150a8f4 Merge branch '4.0.x' into 4.1.x 2025-05-06 09:06:08 +02:00
Stéphane Nicoll
185a637bca Polish 2025-05-06 09:04:18 +02:00
Stéphane Nicoll
e49bfa498b Start building against Spring Framework 7.0.0-M5 snapshots
See gh-1552
2025-04-23 11:56:32 +02:00
Stéphane Nicoll
e490948b10 Merge branch '4.0.x'
Closes gh-1551
2025-04-21 17:50:05 +02:00
Stéphane Nicoll
03b5f0057f Harmonize visibility of test classes and methods
Closes gh-1550
2025-04-21 17:36:00 +02:00
Stéphane Nicoll
c4ccfeecb6 Merge branch '4.0.x'
Closes gh-1538
2025-04-19 11:56:44 +02:00
Stéphane Nicoll
b98055139a Fix compilation warnings 2025-04-19 11:41:13 +02:00
Stéphane Nicoll
1c5543a199 Merge branch '4.0.x'
Closes gh-1529
2025-04-18 11:52:26 +02:00
Stéphane Nicoll
772549084e Harmonize suffix of test classes
Closes gh-1528
2025-04-18 11:40:44 +02:00
Stéphane Nicoll
27a21f8367 Merge branch '4.0.x'
Closes gh-1527
2025-04-16 15:13:49 +02:00
Stéphane Nicoll
f58db47ba4 Fix error logging in client-side validation
Closes gh-1144
2025-04-16 15:11:04 +02:00
Stéphane Nicoll
72d79d19db Add more flexible registration of DefaultMethodEndpointAdapter
This commit updates WsConfigurer to get a callback with the list of
default method argument resolvers and return value handlers. Previously,
the callback only allowed to add custom instances and these were added
after the defaults.

Closes gh-1080
2025-04-10 15:22:36 +02:00
Stéphane Nicoll
80f8d61024 Only log the exception if is it resolved
This commit improves AbstractEndpointExceptionResolver to only invoke
the logException method for an exception that has been resolved. To
help with chaining them, a CompositeEndpointExceptionResolver has been
introduced. If no resolvers were able to resolve the exception, the
last instance will then log the exception.

Closes gh-736
2025-04-08 14:33:39 +02:00
Stéphane Nicoll
d3454c5edc Improve creation of HttpClient with HttpComponents5ClientFactory
This commit improves HttpComponents5ClientFactory so that it is easier
to apply custom configuration to the HttpClient it creates.

Closes gh-1035
2025-04-08 14:12:40 +02:00
Stéphane Nicoll
f250abb0cf Simplify HttpComponents5MessageSender
Previously, HttpComponents5MessageSender can be configured to use both
a custom HttpClient or configure one using a number of convenient
properties. This setup creates an odd arrangement where calling those
convenient methods once an HttpClient is set throws an exception as
the implementation supports one or the other.

This commit moves the first use case in a simple implementation that
only accepts a custom HttpClient or the state of
HttpComponents5ClientFactory for convenience and discoverability.

Specifying an HttpComponents5MessageSender is deprecated as a result.

Closes gh-1519
2025-04-08 13:21:16 +02:00
Stéphane Nicoll
cf9295b887 Invoke ClientInterceptor#afterCompletion once per request
This commit reviews how afterCompletion is invoked. First of all, any
exception thrown by an interceptor does not bubble up the stack to give
a chance for other interceptors to clean things up.

Then, rather than calling afterCompletion before handling a fault, an
error, or the response body, it is invoked after. This gives a chance
to any exception to break the flow and handle the completion in the
catch block.

Tests have been added to ensure that the callback is only invoked once.

Closes gh-1054
2025-04-08 10:52:59 +02:00
Stéphane Nicoll
0c9cb71d65 Merge branch '4.0.x'
Closes gh-1518
2025-04-07 13:28:20 +02:00
Stéphane Nicoll
5d5bd57f79 Clarify how to apply advanced endpoint configuration
Closes gh-1209
2025-04-07 13:25:58 +02:00
Stéphane Nicoll
6dcf78d454 Merge branch '4.0.x'
Closes gh-1517
2025-04-06 12:44:22 +02:00
Stéphane Nicoll
daccb0db6d Allow SmartEndpointInterceptor to be added as regular interceptor
Previously, only SmartEndpointInterceptor instances declared as bean
were considered by AbstractEndpointMapping. Given that it extends from
EndpointInterceptor, this meant that adding them using the regular
setEndpointInterceptor mean they were not considered as such, that is
added irrespective of their `shouldIntercept` contract.

This commit considers both list as holding SmartEndpointInterceptor
instances. As a result, these can now be added using regular hook
points, such as WsConfigurer.

Closes gh-1130
2025-04-06 12:44:02 +02:00
Stéphane Nicoll
ee0d99fbd5 Merge branch '4.0.x'
Closes gh-1516
2025-04-06 12:08:46 +02:00
Stéphane Nicoll
50ca51e41f Clarify scope of WebServiceMessageSender
Closes gh-1063
2025-04-06 12:08:11 +02:00
Stéphane Nicoll
fa46f47f38 Merge branch '4.0.x'
Closes gh-1513
2025-03-27 18:49:06 +01:00
Stéphane Nicoll
611eb9b98d Use provided HttpClient consistently
This commit harmonizes the behavior of HttpComponents5MessageSender to
reuse a provided HttpClient, be it provided via constructor or property.

Closes gh-1512
2025-03-27 18:48:49 +01:00
Stéphane Nicoll
8336f3d02b Update HeadersAware*WebServiceConnection to be a WebServiceConnection
Closes gh-1510
2025-03-26 17:07:31 +01:00
Stéphane Nicoll
32c5d7889c Merge branch '4.0.x'
Closes gh-1508
2025-03-25 15:14:29 +01:00
Stéphane Nicoll
93eb5f4aa4 Polish SoapFault Javadoc
Closes gh-1507
2025-03-25 15:13:43 +01:00
Stéphane Nicoll
6795904f1f Add support for customizing AxiomSoapMessage#writeTo
This commit introduces a protected method that allows to customize
the way an AxiomSoapMessage is written. The content type to use is
separated, and a method that takes the current OMOutputFormat has been
added.

Closes gh-540
2025-03-17 15:04:02 +01:00
Stéphane Nicoll
2c1abc64c3 Adapt deprecated code in Axiom 2
This commit removes the compat module and adapt the deprecated code.

See gh-1454
2025-03-14 16:20:16 +01:00
Stéphane Nicoll
60942af529 Reinstantiate support for Apache Axiom
This commit restores support for Apache Axiom now that it supports
Jakarta. This commit tries to restore the code that was deleted as-is,
without reviewing the deprecations.

See gh-1454
2025-03-14 16:19:47 +01:00
Stéphane Nicoll
ef4e79b600 Stop relying on getLastModified
This commit delegates the check of validating that a request needs to
be processed to the handler themselves. As a result,
MessageDispatcherServlet is no longer implementing getLastModified.

An advantage of this change is that the server now handles
"If-Not-Modified" request headers.

Closes gh-1470
2025-03-11 16:03:21 +01:00
Stéphane Nicoll
122def7e21 Fix split package between spring-ws-support and spring-ws-core
This commit moves the classes from the o.s.ws.transport.http and
o.s.ws.transport.support packages from spring-ws-support to
spring-ws-core. It turns out these classes don't bring extra
dependencies, which make the move quite straightforward.

Closes gh-1202
2025-03-11 14:52:22 +01:00
Stéphane Nicoll
1213ab4da8 Merge branch '4.0.x'
Closes gh-1498
2025-03-11 14:34:27 +01:00
Stéphane Nicoll
eeccbce5b8 Harmonize code format
Closes gh-1496
2025-03-11 14:31:03 +01:00
Stéphane Nicoll
f1e149640a Polish "Remove deprecated HttpComponents5Connection usage"
See gh-1469
2025-03-11 14:25:54 +01:00
Brian Clozel
3154279ee4 Remove deprecated HttpComponents5Connection usage
Prior to this commit, `HttpComponents5Connection` would use deprecated
methods from `HttpClient`. This commit updates the deprecated `execute`
in favor of `executeOpen`, while checking that the response resource is
properly closed when the call is done.

See gh-1469

Signed-off-by: Brian Clozel <brian.clozel@broadcom.com>
2025-03-11 14:25:53 +01:00
Stéphane Nicoll
4b13ab34fb Merge branch '4.0.x'
Closes gh-1494
2025-03-11 10:10:30 +01:00
Corneil du Plessis
3463205b8c Apply connection timeout correctly
This commit updates HttpComponents5MessageSender to apply the
configured connection timeout. Previously, it was wrongly set as the
connection request timeout.

Closes gh-1436
2025-03-11 10:09:21 +01:00
Stéphane Nicoll
a6ecd7b60d Merge branch '4.0.x'
Closes gh-1492
2025-03-10 15:29:37 +01:00
Stéphane Nicoll
2744867894 Remove dependency on Spring HATEOAS
Closes gh-1491
2025-03-10 15:29:02 +01:00
Stéphane Nicoll
0929ef64ff Remove deprecated methods
This commit removes method that were deprecated quite some time ago
as part of the 2.0 line:

- `FaultAwareWebServiceConnection#setFault(boolean)`
- Commons HttpClient v3
- EhCache v2

Closes gh-1321
2025-03-10 15:03:57 +01:00
Stéphane Nicoll
0cdb728b3f Remove deprecated endpoint base classes
This deprecates the programming model of extending from base endpoint
class in favor of the `@Endpoint` programming model introduced in
Spring-WS 2.0.

This also removes any reference <sws:marshalling-endpoints/> and
<sws:xpath-endpoints/> that are no longer part of the XSD since 2.0
as well.

Closes gh-1487
2025-03-10 14:03:46 +01:00
Stéphane Nicoll
7a97414400 Merge branch '4.0.x' 2025-03-10 13:27:12 +01:00
Stéphane Nicoll
b2b96ee0fc Polish properties format 2025-03-10 13:26:39 +01:00
Stéphane Nicoll
d5a4c9219b Deprecate WsConfigurerAdapter
Closes gh-1480
2025-03-10 08:13:12 +01:00
Stéphane Nicoll
57e3880ce3 Add utility to create a org.xml.sax.XMLReader
Closes gh-1471
2025-03-08 12:22:15 +01:00
Stéphane Nicoll
99951dbefc Deprecate fault-related methods in DomPoxMessage
This commit deprecates methods that are unused in DomPoxMessage. They
refer to the FaultAwareWebServiceMessage interface, but that class does
not implement it.

Closes gh-622
2025-03-07 16:58:02 +01:00
Stéphane Nicoll
15d28812b1 Review checkstyle rules of spring-ws-core
See gh-1479
2025-03-07 15:36:50 +01:00