Hi Romain

Yes, as Dan mentioned, a major refactoring has been done in CXF 3.1.x.
I'd say having xmlschema and woodstox dependencies is not a major problem. JAX-RS servers do not need the JAX-RS client implementation, though not yet the other way around, but now that we have client and server modules separate it is doable to have the client depending on the minimum/shared JAX-RS code...

I think you can most likely drop a woodstox too, set a system property (use insecure parser which is fine if you do not use XML payloads). One point here is that JAX-RS requires supporting JAXB/XML, and I feel what is expected to work by default should work so without expecting a user to make sure it works - XML is still a fairly big 'thing' in many services so the users who use XML should start a CXF server and have it working. We can in principle use the built-in parser for that and save on a woodstox dependency - but its capability to restrict XML in a number of ways is a big plus (Colm had to release N number of security announcements to do with XML related attacks) so it is a good to dependency to have.

Though as I said try setting an "org.apache.cxf.stax.allowInsecureParser" system property if you absolutely do not need Woodstox and you should have only 1 'extra' dep, XmlSchema which is very much needed by CXF and also by JAX-RS JAXB Provider if it is a validating one. You might be able to have the server starting without XMLSchema (JAXBProvider is created reflectively it if it can not be loaded it is ignored) - but as Dan mentioned you need to experiment and it can be brittle - the server starts but then fails somewhere at the runtime

Cheers, Sergey



07/08/15 21:28, Romain Manni-Bucau wrote:
Sure, that is why it is still a wish ;) but seems small CLI are more and
more common so decreasing the size would be good but doesnt need to be done
now ;)


Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> |  Blog
<http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber
<http://www.tomitribe.com>

2015-08-07 13:25 GMT-07:00 Daniel Kulp <dk...@apache.org>:


On Aug 7, 2015, at 3:23 PM, Romain Manni-Bucau <rmannibu...@gmail.com>
wrote:

used an older version but xmlschema and woodstox removal would be good
(why
not recommanded if I dont use XML parsing?)

We use XML internally for various config things and setup stuff.   I
really have no idea if CXF would even start properly without woodstox.
  You’d have to try it.

95% sure it won’t work without xmlschema either.  Many cxf-core classes
have xmlschema params/returns as part of the method signatures.

Dan



Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> |  Blog
<http://rmannibucau.wordpress.com> | Github <
https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber
<http://www.tomitribe.com>

2015-08-07 11:18 GMT-07:00 Daniel Kulp <dk...@apache.org>:


On Aug 7, 2015, at 2:13 PM, Daniel Kulp <dk...@apache.org> wrote:

You should be able to get rid of the wsdl stuff.    We pulled all the
wsdl stuff out of core specifically for this reason.

XmlSchema would definitely be required.  Way too much in core depends
on
that.    With 3.1.x, I’m not seeing a dependency on cxf-rt-bindings-xml
either.

I think with 3.1.x, the minimal for a client would be:

[INFO] org.apache.cxf.samples:jax_rs_basic:jar:3.1.3-SNAPSHOT
[INFO] +-
org.apache.cxf:cxf-rt-transports-http:jar:3.1.3-SNAPSHOT:compile
[INFO] |  \- org.apache.cxf:cxf-core:jar:3.1.3-SNAPSHOT:compile
[INFO] |     +-
org.codehaus.woodstox:woodstox-core-asl:jar:4.4.1:compile
[INFO] |     |  \- org.codehaus.woodstox:stax2-api:jar:3.1.4:compile
[INFO] |     \- org.apache.ws.xmlschema:xmlschema-core:jar:2.2.1:compile
[INFO] +-
org.apache.cxf:cxf-rt-frontend-jaxrs:jar:3.1.3-SNAPSHOT:compile
[INFO] |  \- javax.annotation:javax.annotation-api:jar:1.2:compile
[INFO] +- javax.ws.rs:javax.ws.rs-api:jar:2.0.1:compile

With some system settings, you could possibly remove woodstox, but that
would be highly NOT recommended.

Dan





Dan




On Aug 7, 2015, at 1:30 PM, Romain Manni-Bucau <rmannibu...@gmail.com

wrote:

Hi guys,

just a very open idea for now but I think it would be great to be able
to
use CXF JAXRS client with a bit less dependencies.

Here the origin of the issue: I created several small "all in one" jar
recently mainly simplifying rest calls (let take a github or jira REST
client as sample if you want to see a concrete sample). Of course I
used
CXF for the JAXRS client - WebClient actually - and the only issue I
got
was the size of the jar.

In my case I don't care about xml stuff (mainly use String as
payloads)
so
wonder if we could get rid of wsdl, xmlschema, cxf-rt-bindings-xml etc
as
mandatory dependencies.

wdyt?

Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> |  Blog
<http://rmannibucau.wordpress.com> | Github <
https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber
<http://www.tomitribe.com>

--
Daniel Kulp
dk...@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


--
Daniel Kulp
dk...@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com



--
Daniel Kulp
dk...@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com




Reply via email to