Re: JAX-RS 2.0 and CXF 2.7.x

2013-01-10 Thread Sergey Beryozkin

On 21/12/12 12:13, Sergey Beryozkin wrote:

On 20/12/12 18:48, Sergey Beryozkin wrote:

Hi

At the moment CXF 2.7.2-SNAPSHOT depends on jsr339-api-m10 - this is
quite close to the current JAX-RS 2.0 Snapshot API. ServiceMix spec
jsr339-api-m10 (v 2.2.0) is also available.

Next, jsr339-api-m13 and now jsr339-api-m15 are available in Central.

The differences between jsr339-api-m10 and jsr339-api-m15 are quite
minor at JAX-RS 2.0 API level - especially given that CXF does not
implement yet the actual JAX-RS 2.0 client fluent API (though as I've
mentioned earlier the async invoker and all 2.0 filters/interceptors are
already supported).

Users who started experimenting with AsyncResponse might see some
differences - primarily to do with resume/cancel returning boolean
instead of throwing exceptions, etc. Thought who might've started with
DynamicFeature would be impacted most - but I honestly do not think
anyone has started coding DynamicFeatures - we do not document it yet.

I've been planning to get 2.7.x implementing final 2.0 API. It is
important to note that the users migrating to 2.7.x are not expected to
see any BC issues (and it was thanks to early 2.7.x users that we fixed
some initial regressions/issues in 2.7.x).

I've upgraded locally to jsr339-api-m15 and I'm eager to commit :-)
The only 'side-effect' is that the users of next to be released CXF
2.7.2 would need to replace jsr339-api-m10 and jsr339-api-m15.

Alternatively: we can keep jsr339-api-m10 in CXF 2.7.x for its lifetime,
and get CXF 2.8.0-SNAPSHOT starting effectively with jsr339-api-m15 and
commit to having CXF 2.8.0/1 get the final JAX-RS 2.0 done


My preference is to get the 2.0 dependencies changed in 2.7.x or at
least do the upgrade to m15 and stay there with the further updates done
only in 2.8.x - however if there is some concern about it then the
alternative (mentioned or others) can also work.

Any comments ?


I've already got some feedback - there's some concern from our ESB team
it may affect the stability of the distribution which is based on 2.7.x
- thus looks like I will postpone and just upgrade to jsr339-api-m15 in
2.8.0-SNAPSHOT.

Ultimately, CXF 2.7.x is much more than the initial JAX-RS 2.0 support
so those JAX-RS users who have already migrated can expect the 2.0 to
1.1 API BC stability at 2.7.x, experiment with new JAX-RS 2.0 constructs
and expect very very minor upgrades required if using 2.0 API when
migrating further to 2.8.x - unless they've already started using JAX-RS
DynamicFeature (hint :-))


I've upgraded to m15 on the trunk (2.8.0-SNAPSHOT only).
As I said, those 2.7.x users which have started using JAX-RS 2.0 
constructs can expect very minor if any updates when moving to CXF 2.8.0 
at the later stage


Thanks, Sergey


Re: JAX-RS 2.0 and CXF 2.7.x

2012-12-21 Thread Sergey Beryozkin

On 20/12/12 18:48, Sergey Beryozkin wrote:

Hi

At the moment CXF 2.7.2-SNAPSHOT depends on jsr339-api-m10 - this is
quite close to the current JAX-RS 2.0 Snapshot API. ServiceMix spec
jsr339-api-m10 (v 2.2.0) is also available.

Next, jsr339-api-m13 and now jsr339-api-m15 are available in Central.

The differences between jsr339-api-m10 and jsr339-api-m15 are quite
minor at JAX-RS 2.0 API level - especially given that CXF does not
implement yet the actual JAX-RS 2.0 client fluent API (though as I've
mentioned earlier the async invoker and all 2.0 filters/interceptors are
already supported).

Users who started experimenting with AsyncResponse might see some
differences - primarily to do with resume/cancel returning boolean
instead of throwing exceptions, etc. Thought who might've started with
DynamicFeature would be impacted most - but I honestly do not think
anyone has started coding DynamicFeatures - we do not document it yet.

I've been planning to get 2.7.x implementing final 2.0 API. It is
important to note that the users migrating to 2.7.x are not expected to
see any BC issues (and it was thanks to early 2.7.x users that we fixed
some initial regressions/issues in 2.7.x).

I've upgraded locally to jsr339-api-m15 and I'm eager to commit :-)
The only 'side-effect' is that the users of next to be released CXF
2.7.2 would need to replace jsr339-api-m10 and jsr339-api-m15.

Alternatively: we can keep jsr339-api-m10 in CXF 2.7.x for its lifetime,
and get CXF 2.8.0-SNAPSHOT starting effectively with jsr339-api-m15 and
commit to having CXF 2.8.0/1 get the final JAX-RS 2.0 done


My preference is to get the 2.0 dependencies changed in 2.7.x or at
least do the upgrade to m15 and stay there with the further updates done
only in 2.8.x - however if there is some concern about it then the
alternative (mentioned or others) can also work.

Any comments ?


I've already got some feedback - there's some concern from our ESB team 
it may affect the stability of the distribution which is based on 2.7.x 
- thus looks like I will postpone and just upgrade to jsr339-api-m15 in 
2.8.0-SNAPSHOT.


Ultimately, CXF 2.7.x is much more than the initial JAX-RS 2.0 support 
so those JAX-RS users who have already migrated can expect the 2.0 to 
1.1 API BC stability at 2.7.x, experiment with new JAX-RS 2.0 constructs 
and expect very very minor upgrades required if using 2.0 API when 
migrating further to 2.8.x - unless they've already started using JAX-RS 
DynamicFeature (hint :-))


Thanks, Sergey


JAX-RS 2.0 and CXF 2.7.x

2012-12-20 Thread Sergey Beryozkin

Hi

At the moment CXF 2.7.2-SNAPSHOT depends on jsr339-api-m10 - this is 
quite close to the current JAX-RS 2.0 Snapshot API. ServiceMix spec 
jsr339-api-m10 (v 2.2.0) is also available.


Next, jsr339-api-m13 and now jsr339-api-m15 are available in Central.

The differences between jsr339-api-m10 and jsr339-api-m15 are quite 
minor at JAX-RS 2.0 API level - especially given that CXF does not 
implement yet the actual JAX-RS 2.0 client fluent API (though as I've 
mentioned earlier the async invoker and all 2.0 filters/interceptors are 
already supported).


Users who started experimenting with AsyncResponse might see some 
differences - primarily to do with resume/cancel returning boolean 
instead of throwing exceptions, etc. Thought who might've started with 
DynamicFeature would be impacted most - but I honestly do not think 
anyone has started coding DynamicFeatures - we do not document it yet.


I've been planning to get 2.7.x implementing final 2.0 API. It is 
important to note that the users migrating to 2.7.x are not expected to 
see any BC issues (and it was thanks to early 2.7.x users that we fixed 
some initial regressions/issues in 2.7.x).


I've upgraded locally to jsr339-api-m15 and I'm eager to commit :-)
The only 'side-effect' is that the users of next to be released CXF 
2.7.2 would need to replace jsr339-api-m10 and jsr339-api-m15.


Alternatively: we can keep jsr339-api-m10 in CXF 2.7.x for its lifetime, 
and get CXF 2.8.0-SNAPSHOT starting effectively with jsr339-api-m15 and 
commit to having CXF 2.8.0/1 get the final JAX-RS 2.0 done



My preference is to get the 2.0 dependencies changed in 2.7.x or at 
least do the upgrade to m15 and stay there with the further updates done 
only in 2.8.x - however if there is some concern about it then the 
alternative (mentioned or others) can also work.


Any comments ?

Thanks, Sergey