I tried the same without changing the URI, only changing the method and
it didn't work neither. I changed the original method to HEAD (changing
the JAX-RS annotated interface), changing it to DELETE in the filter.
The client sends HEAD requests anyway. Why is not my filter changing the
request method?
i2cat
Julio C. Barrera Juez
Office phone: +34 93 357 99 27
Distributed Applications and Networks Area (DANA)
i2CAT Foundation, Barcelona, Spain
http://dana.i2cat.net <http://dana.i2cat.net/>
On 17 October 2013 16:37, Sergey Beryozkin <[email protected]
<mailto:[email protected]>> wrote:
On 17/10/13 14:49, Julio Carlos Barrera Juez wrote:
Bad news then.
I'm not sure why did you expect DELETE with body to work, we
discussed it yesterday and confirmed it was not yet possible, please
make sure you watch that JIRA I linked to to try it once it gets
fixed (though I don't know yet how feasible it is)
Anyway the filter does not work, because the
calls requestContext.setUri(...) did not change the real URI
used at the
end. But the method requestContext.setMEthod(...) worked...
Right, setUri does not work from client filters, thanks for catching it.
I've been certain a test is there, but it is only pre-matching
container request filters which are tested on setRequestUri, so it
needs to be fixed
Cheers, Sergey
i2cat
Julio C. Barrera Juez
Office phone: +34 93 357 99 27 <tel:%2B34%2093%20357%2099%2027>
Distributed Applications and Networks Area (DANA)
i2CAT Foundation, Barcelona, Spain
http://dana.i2cat.net <http://dana.i2cat.net/>
On 17 October 2013 13:45, Sergey Beryozkin <[email protected]
<mailto:[email protected]>
<mailto:[email protected] <mailto:[email protected]>>> wrote:
Hi
The method is definitely returned in CXF 2.7.7, I've just
added a
test confirming that. A lot of fixes went into the
client-side 2.0
code, some of it is still on the trunk only as they deal
more with
various very edgy TCK issues, I'm not sure yet if they
should make
to CXF 2.7.8 or not, but a method getter works in 2.7.7
Re the actual exception, I guess this is because we don't have
DELETE with body supported yet
Sergey
On 17/10/13 11:51, Julio Carlos Barrera Juez wrote:
Hi Sergey.
First of all, excuse me by the duplicate message.
I have just written a Filter like this:
public class PostToDeleteWithBodyFilter implements
ClientRequestFilter {
public final static StringEXTRA_PATH=
"/mutatePOSTtoDELETE";
@Override
public void filter(ClientRequestContext requestContext)
throws
IOException {
String method = requestContext.getMethod();
String path = requestContext.getUri().____getPath();
if (path != null && path.endsWith(EXTRA_PATH)) {
// remove EXTRA_PATH
requestContext.setUri(URI.____create(path.substring(0,
path.length() -
EXTRA_PATH.length())));
// transform POST into DELETE
requestContext.setMethod("____DELETE");
}
}
}
I have some issues again. The method var is null. And
the most
important, an exception is thrown when I use this filter:
Caused by: java.io.IOException: IOException invoking
http://<my_server>/real_path/____mutatePOSTtoDELETE:
insufficient
data written
at
sun.reflect.____NativeConstructorAccessorImpl.____newInstance0(Native
Method)
at
sun.reflect.____NativeConstructorAccessorImpl.____newInstance(____NativeConstructorAccessorImpl.____java:39)
at
sun.reflect.____DelegatingConstructorAccessorI____mpl.newInstance(____DelegatingConstructorAccessorI____mpl.java:27)
at
java.lang.reflect.Constructor.____newInstance(Constructor.__java:__513)
at
org.apache.cxf.transport.http.____HTTPConduit$____WrappedOutputStream.____mapException(HTTPConduit.java:____1338)
at
org.apache.cxf.transport.http.____HTTPConduit$____WrappedOutputStream.close(____HTTPConduit.java:1322)
at
org.apache.cxf.transport.____AbstractConduit.close(____AbstractConduit.java:56)
at
org.apache.cxf.transport.http.____HTTPConduit.close(__HTTPConduit.__java:622)
at
org.apache.cxf.interceptor.____MessageSenderInterceptor$____MessageSenderEndingInterceptor____.handleMessage(____MessageSenderInterceptor.java:____62)
... 31 more
Caused by: java.io.IOException: insufficient data written
at
sun.net.www.protocol.http.____HttpURLConnection$____StreamingOutputStream.close(____HttpURLConnection.java:2861)
at
sun.net.www.protocol.http.____HttpURLConnection.____getInputStream(____HttpURLConnection.java:1175)
at
java.net.HttpURLConnection.____getResponseCode(____HttpURLConnection.java:379)
at
org.apache.cxf.transport.http.____URLConnectionHTTPConduit$____URLConnectionWrappedOutputStre____am.getResponseCode(____URLConnectionHTTPConduit.java:____260)
at
org.apache.cxf.transport.http.____HTTPConduit$____WrappedOutputStream.____handleResponseInternal(____HTTPConduit.java:1517)
at
org.apache.cxf.transport.http.____HTTPConduit$____WrappedOutputStream.____handleResponse(HTTPConduit.____java:1490)
at
org.apache.cxf.transport.http.____HTTPConduit$____WrappedOutputStream.close(____HTTPConduit.java:1309)
... 34 more
I tried to detect the special message to be mutated
using an
extra path
string appended to the real path. It worked, it was
detected, but
something went wrong...
i2cat
Julio C. Barrera Juez
Office phone: +34 93 357 99 27
<tel:%2B34%2093%20357%2099%2027> <tel:%2B34%2093%20357%2099%__2027>
Distributed Applications and Networks Area (DANA)
i2CAT Foundation, Barcelona, Spain
http://dana.i2cat.net <http://dana.i2cat.net/>
On 17 October 2013 12:17, Sergey Beryozkin
<[email protected] <mailto:[email protected]>
<mailto:[email protected] <mailto:[email protected]>>
<mailto:[email protected]
<mailto:[email protected]> <mailto:[email protected]
<mailto:[email protected]>>>__> wrote:
Hi
Can you register an instance of JAX-RS 2.0
ClientRequestFilter (as a
provider) and set your method & request URI if
needed there ?
That should make it simpler for you.
Re using a custom CXF interceptor, it really
should have the
properties which you check already set on the
message passed to
handleMessage(), that message is an out message,
so you
should have
"message ==
message.getExchange().______getOutMessage()" hold
true.
Cheers, Sergey
On 17/10/13 08:11, Julio Carlos Barrera Juez wrote:
I'm trying to workaround this problem with an
output CXF
interceptor. I
have modified the DELETE request to be a POST
request
allowing a
body. I
want that my interceptor will detect the POST
request
and will
change it to
a DELETE. I'm having some problems to achieve
it. How
can the
interceptor
modify the message object to achieve my goal?
I have written something like this:
public class
PostToDeleteWithBodyIntercepto______r extends
AbstractPhaseInterceptor<______Message> {
public final static String EXTRA_PATH =
"/mutatePOSTtoDELETE";
public PostToDeleteWithBodyIntercepto______r() {
super(Phase.PRE_PROTOCOL);
}
public void handleMessage(Message message) {
String path = (String)
message.getExchange().______getOutMessage().get(Message.______REQUEST_URI);
String method = (String)
message.getExchange().______getOutMessage().get(Message.______HTTP_REQUEST_METHOD);
if (method != null && method.equals("POST")
&& path
!= null &&
path.endsWith(EXTRA_PATH)) {
// TODO remove EXTRA_PATH
// TODO transform POST into DELETE
}
}
}
I have a few doubts:
- I don't know how to modify the path and the
method of the
request. I
have tried modifying the content of the
- I don't know what is the exact phase
where apply it.
- Why do I need to look for exchange, out
message
to see
current path
and method? It should be in the message,
but the
values are
null.
Thank you!
[image: i2cat]
Julio C. Barrera Juez
Office phone: +34 93 357 99 27
<tel:%2B34%2093%20357%2099%2027>
<tel:%2B34%2093%20357%2099%__2027>
<tel:%2B34%2093%20357%2099%____2027>
Distributed Applications and Networks Area (DANA)
i2CAT Foundation, Barcelona, Spain
http://dana.i2cat.net
On 16 October 2013 16:54, Sergey Beryozkin
<[email protected] <mailto:[email protected]>
<mailto:[email protected] <mailto:[email protected]>>
<mailto:[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>>__> wrote:
Hi,
On 16/10/13 15:36, Julio Carlos Barrera
Juez wrote:
Yes, the server is not under my
control. I want to
develop a client
because
I like how CXF works and it is a
dependency for
other
issues in my
project.
Obviously I would never develop a
service with
body in
DELETE requests.
The, taking into account that I'm
using CXF
2.7.x, is it
possible to
workaround my problem using CXF?
Probably not at the moment,
I've opened
https://issues.apache.org/**______jira/browse/CXF-5337
<https://issues.apache.org/**____jira/browse/CXF-5337>
<https://issues.apache.org/**____jira/browse/CXF-5337
<https://issues.apache.org/**__jira/browse/CXF-5337>>
<https://issues.apache.org/**____jira/browse/CXF-5337
<https://issues.apache.org/**__jira/browse/CXF-5337>
<https://issues.apache.org/**__jira/browse/CXF-5337
<https://issues.apache.org/**jira/browse/CXF-5337>>><https:/__/____issues.apache.org/jira/____browse/__CXF-5337
<http://issues.apache.org/jira/__browse/__CXF-5337>
<http://issues.apache.org/__jira/browse/__CXF-5337
<http://issues.apache.org/jira/browse/__CXF-5337>>
<https://issues.apache.org/____jira/browse/CXF-5337
<https://issues.apache.org/__jira/browse/CXF-5337>
<https://issues.apache.org/__jira/browse/CXF-5337
<https://issues.apache.org/jira/browse/CXF-5337>>>>
Please watch it.
In meantime, may be it is possible to
'tunnel' it,
example,
use POST but
set some header with the real/intended
HTTP verb
such as
DELETE, the target
server would need to replace POST with
DELETE, the
easy way
is to say
create Servlet filter which will use
HTTPServletRequest
wrapper to return
DELETE, some work is needed there but no
changes to the
server code itself
will be required.
Otherwise - try snapshots once CXF-5337
gets resolved
Thanks, Sergey
Thank you Sergey!
[image: i2cat]
Julio C. Barrera Juez
Office phone: +34 93 357 99 27
<tel:%2B34%2093%20357%2099%2027>
<tel:%2B34%2093%20357%2099%__2027>
<tel:%2B34%2093%20357%2099%____2027>
Distributed Applications and Networks
Area (DANA)
i2CAT Foundation, Barcelona, Spain
http://dana.i2cat.net
On 16 October 2013 16:23, Sergey Beryozkin
<[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>> <mailto:[email protected]
<mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>>__> wrote:
Right, looks like the following has
to be
done with
HTTPClient:
https://code.google.com/p/****______rest-client/source/browse/__**
<https://code.google.com/p/****____rest-client/source/browse/**>
<https://code.google.com/p/***__*__rest-client/source/browse/*__*
<https://code.google.com/p/****__rest-client/source/browse/**>>
<https://code.google.com/p/***____*rest-client/source/browse/*__*
<https://code.google.com/p/***__*rest-client/source/browse/**>
<https://code.google.com/p/***__*rest-client/source/browse/**
<https://code.google.com/p/****rest-client/source/browse/**>>__>__<h__ttps://code.google.com/__p/*__*__rest-client/source/__browse/*__*
<http://code.google.com/p/*__*__rest-client/source/browse/*__*>
<http://code.google.com/p/**____rest-client/source/browse/**
<http://code.google.com/p/**__rest-client/source/browse/**>>
<https://code.google.com/p/**____rest-client/source/browse/**
<https://code.google.com/p/**__rest-client/source/browse/**>
<https://code.google.com/p/**__rest-client/source/browse/**
<https://code.google.com/p/**rest-client/source/browse/**>>>__>
restclient-lib/src/main/java/*______***org/wiztools/__restclient/____http/****
EntityEnclosingDelete.java<______htt**ps://code.google.com/p/______rest-**
<http://code.google.com/p/____rest-**>
<http://code.google.com/p/____rest-**
<http://code.google.com/p/__rest-**>>
<http://code.google.com/p/____rest-**
<http://code.google.com/p/__rest-**>
<http://code.google.com/p/__rest-**
<http://code.google.com/p/rest-**>>>
client/source/browse/**______restclient-lib/src/main/java/*______*
org/wiztools/restclient/http/*______*EntityEnclosingDelete.__java<__ht__tps://code.google.__com/p/__rest-__client/source/__browse/____restclient-lib/src/__main/java/____org/wiztools/__restclient/http/______EntityEnclosingDelete.java
<http://code.google.com/p/__rest-__client/source/browse/____restclient-lib/src/main/java/____org/wiztools/restclient/http/____EntityEnclosingDelete.java>
<http://code.google.com/p/__rest-__client/source/browse/____restclient-lib/src/main/java/____org/wiztools/restclient/http/____EntityEnclosingDelete.java
<http://code.google.com/p/rest-__client/source/browse/__restclient-lib/src/main/java/__org/wiztools/restclient/http/__EntityEnclosingDelete.java>>
<https://code.google.com/p/____rest-client/source/browse/____restclient-lib/src/main/java/____org/wiztools/restclient/http/____EntityEnclosingDelete.java
<https://code.google.com/p/__rest-client/source/browse/__restclient-lib/src/main/java/__org/wiztools/restclient/http/__EntityEnclosingDelete.java>
<https://code.google.com/p/__rest-client/source/browse/__restclient-lib/src/main/java/__org/wiztools/restclient/http/__EntityEnclosingDelete.java
<https://code.google.com/p/rest-client/source/browse/restclient-lib/src/main/java/org/wiztools/restclient/http/EntityEnclosingDelete.java>>>>
This is the code based on the
advice from
HttpClient
forums.
I guess we should check if CXF Async
Conduit can be
updated respectively
By the way, I'm assuming you have
to do
DELETE with
a body because you
have some existing/legacy service
expecting
it this
way ? Now and then
users ask about it, and I don't
mind to get the
Async HTTP conduit
updated
a bit anyway, but if you have say
a CXF server
listening, then I'm sure
there could be an easier way :-)
Cheers, Sergey
On 16/10/13 15:11, Julio Carlos
Barrera
Juez wrote:
Looking for logs, I've realized
that the
property
is producing changes.
I
mean the Async HTTP client is
being used.
However my DELETE request has
no
body. My client interface is
JAX-RS
annotated,
my Resource class is JaxB
annotated:
@Path("/server/path")
@DELETE
@Consumes(MediaType.****______APPLICATION_JSON)
public void
deleteResource(Resource resource);
I have a create method working
with de same
configuration and it works:
@Path("/server/path")
@POST
@Consumes(MediaType.****______APPLICATION_JSON)
public void
createResource(Resource resource);
I'm using Jackson as JSON
serializer, but I
guess it has no relation
with
this problem.
These log lines show that the
DELETE
request has
content-lenght 0 and
the Async HTTP client is
being used
[I/O dispatcher 2] DEBUG
org.apache.cxf.transport.http.______****asyncclient.****______AsyncHTTPConduitFactory$2
-
Connection leased: [id: 2][route:
{}->http://my_server][total kept
alive:
0; route allocated: 1 of 1000;
total
allocated:
0 of 5000]
[I/O dispatcher 2] DEBUG
org.apache.cxf.transport.http.______****asyncclient.****______AsyncHTTPConduitFactory$3
-
[exchange: 3] Connection
allocated:
[id:2][route:{}->http:/my_****______server][state:null]
[I/O dispatcher 2] DEBUG
org.apache.http.impl.nio.****
reactor.IOSessionImpl
-
http-outgoing-2
192.168.254.86:35152 <http://192.168.254.86:35152>
<http://192.168.254.86:35152>
<http://192.168.254.86:35152><____->server___****ip[ACTIVE][r:__]:
Set
attribute
http.nio.exchange-handler
[I/O dispatcher 2] DEBUG
org.apache.http.impl.nio.****
reactor.IOSessionImpl
-
http-outgoing-2
192.168.254.86:35152 <http://192.168.254.86:35152>
<http://192.168.254.86:35152>
<http://192.168.254.86:35152><____->server___****ip[ACTIVE][__rw:]__:
Event
set [w]
[I/O dispatcher 2] DEBUG
org.apache.http.impl.nio.****
reactor.IOSessionImpl
-
http-outgoing-2
192.168.254.86:35152 <http://192.168.254.86:35152>
<http://192.168.254.86:35152>
<http://192.168.254.86:35152><____->server___****ip[ACTIVE][__rw:]__:
Set
attribute
http.nio.http-exchange-state
[I/O dispatcher 2] DEBUG
org.apache.cxf.transport.http.______****asyncclient.****______AsyncHTTPConduitFactory$3
-
[exchange: 3] Attempt 1 to
execute request
[I/O dispatcher 2] DEBUG
org.apache.http.impl.nio.****
reactor.IOSessionImpl
-
http-outgoing-2
192.168.254.86:35152 <http://192.168.254.86:35152>
<http://192.168.254.86:35152>
<http://192.168.254.86:35152><____->server___****ip[ACTIVE][__rw:]__:
Set
timeout
60000
[I/O dispatcher 2] DEBUG
org.apache.http.client.****
protocol.RequestAuthCache
-
Auth cache not set in the context
[I/O dispatcher 2] DEBUG
org.apache.http.client.****______protocol.****______RequestTargetAuthentication
-
Target
auth
state: UNCHALLENGED
[I/O dispatcher 2] DEBUG
org.apache.http.client.****______protocol.****______RequestProxyAuthentication
-
Proxy
auth
state: UNCHALLENGED
[I/O dispatcher 2] DEBUG
org.apache.http.headers
- http-outgoing-2 >> *
DELETE* /server/path HTTP/1.1
[I/O dispatcher 2] DEBUG
org.apache.http.headers
- http-outgoing-2 >>
Accept: text/plain
[I/O dispatcher 2] DEBUG
org.apache.http.headers
- http-outgoing-2 >>
User-Agent: Apache CXF 2.7.4
[I/O dispatcher 2] DEBUG
org.apache.http.headers
- http-outgoing-2 >>
*Content-Length:
0*
[I/O dispatcher 2] DEBUG
org.apache.http.headers
- http-outgoing-2 >>
Host:
my_server
[I/O dispatcher 2] DEBUG
org.apache.http.headers
- http-outgoing-2 >>
Connection: Keep-Alive
[image: i2cat]
Julio C. Barrera Juez
Office phone: +34 93 357 99 27
<tel:%2B34%2093%20357%2099%2027>
<tel:%2B34%2093%20357%2099%__2027>
<tel:%2B34%2093%20357%2099%____2027>
Distributed Applications and
Networks
Area (DANA)
i2CAT Foundation, Barcelona, Spain
http://dana.i2cat.net
On 16 October 2013 15:17,
Julio Carlos
Barrera
Juez <
[email protected]
<mailto:[email protected]>
<mailto:juliocarlos.barrera@__i2cat.net
<mailto:[email protected]>>
<mailto:juliocarlos.barrera@
<mailto:juliocarlos.barrera@>____i2cat.net <http://i2cat.net>
<mailto:juliocarlos.barrera@__i2cat.net
<mailto:[email protected]>>>> wrote:
I don't know how to
install CXF
Async HTTP
transport. I have the maven
artifact in my project
dependencies, but
nothing else.
[image: i2cat]
Julio C. Barrera Juez
Office phone: +34 93 357
99 27 <tel:%2B34%2093%20357%2099%2027>
<tel:%2B34%2093%20357%2099%__2027>
<tel:%2B34%2093%20357%2099%____2027>
Distributed Applications and
Networks Area
(DANA)
i2CAT Foundation,
Barcelona, Spain
http://dana.i2cat.net
On 16 October 2013 13:14,
Sergey
Beryozkin
<[email protected]
<mailto:[email protected]>
<mailto:[email protected] <mailto:[email protected]>>
<mailto:[email protected] <mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>>__>
wrote:
I guess you don't have CXF
Async HTTP
transport installed ?
Other than that I've
no idea, if it
won;t work with the
Async module
then
I guess it is possible
to do
Sergey
On 16/10/13 11:49,
Julio Carlos
Barrera
Juez wrote:
I tried to use
this information
before, but I don't
know how to
solve
my
problem.
I have something
like this:
ProxyClassLoader
classLoader = new
ProxyClassLoader();
classLoader.addLoader(******______IServiceInterface.class.****
getClassLoader());
classLoader.addLoader(******______JAXRSClientFactoryBean.__class.*____*****
getClassLoader());
JAXRSClientFactoryBean bean
= new
JAXRSClientFactoryBean();
bean.setAddress(uri);
bean.setResourceClass(******______IServiceInterface.class);
bean.setClassLoader(******______classLoader);
client
(IServiceInterface)
bean.create();
Then I can use the
client
object as
usual. But if
fails sending
DELETE
requests with body.
I tried doing this:
ProxyClassLoader
classLoader = new
ProxyClassLoader();
classLoader.addLoader(******______IServiceInterface.class.****
getClassLoader());
classLoader.addLoader(******______JAXRSClientFactoryBean.__class.*____*****
getClassLoader());
JAXRSClientFactoryBean bean
= new
JAXRSClientFactoryBean();
bean.setAddress(uri);
bean.setResourceClass(******______IServiceInterface.class);
bean.setClassLoader(******______classLoader);
// allow body in
DELETE
requests
Client client =
bean.create();
WebClient.getConfig(client).**______****getRequestContext().__put(__"*__*
use.****
async.http.conduit",
true);
(IServiceInterface)
client.******______whateverMethodThatSendsDelete(______**
****);
But it didn't work.
What am I missing?
[image: i2cat]
Julio C. Barrera Juez
Office phone: +34
93 357 99
27 <tel:%2B34%2093%20357%2099%__2027>
<tel:%2B34%2093%20357%2099%____2027>
Distributed
Applications and
Networks Area (DANA)
i2CAT Foundation,
Barcelona, Spain
http://dana.i2cat.net
On 16 October 2013
12:00,
Sergey
Beryozkin
<[email protected] <mailto:[email protected]>
<mailto:[email protected] <mailto:[email protected]>>
<mailto:[email protected]
<mailto:[email protected]> <mailto:[email protected]
<mailto:[email protected]>>>__>
wrote:
Hi
On 16/10/13 09:18,
Julio Carlos
Barrera Juez
wrote:
Hi.
I'm
creating a REST
client
using
JAXRSClientFactoryBean and
ProxyClassLoader
based on a
JAXRS
annotated
Java interface.
I want to
send a
DELETE with
body,
which is not
recommended by
RESTful
philosophy, but it is
allowed by
HTTP 1.1
RFC.
The body
is not
sent by the
client and
I have
read a lot of
problems
to
allow it.
Is it
possible send
a body
in my DELETE
requests with this
configuration?
Please check
this thread
http://cxf.547215.n5.nabble.**______******com/JaxRS-Client-__with-__**
Deletes-****
td5731444.html<http://cxf.****______54**7215.n5.nabble.com/____JaxRS-*__***
<http://7215.n5.nabble.com/__JaxRS-*__***>
<http://7215.n5.nabble.com/__JaxRS-*__***
<http://7215.n5.nabble.com/JaxRS-*__***>>
<http://7215.n5.nabble.com/____JaxRS-****
<http://7215.n5.nabble.com/__JaxRS-****>
<http://7215.n5.nabble.com/__JaxRS-****
<http://7215.n5.nabble.com/JaxRS-****>>><http://7215.n5.____nabble.com/__JaxRS-**
<http://nabble.com/__JaxRS-**>
<http://7215.n5.nabble.com/____JaxRS-**
<http://7215.n5.nabble.com/__JaxRS-**>>
<http://7215.n5.nabble.com/____JaxRS-**
<http://7215.n5.nabble.com/__JaxRS-**>
<http://7215.n5.nabble.com/__JaxRS-**
<http://7215.n5.nabble.com/JaxRS-**>>>>
<http://547215.n5.nabble.com/*______*JaxRS-**
<http://547215.n5.nabble.com/*____*JaxRS-**>
<http://547215.n5.nabble.com/*____*JaxRS-**
<http://547215.n5.nabble.com/*__*JaxRS-**>>
<http://547215.n5.nabble.com/*____*JaxRS-**
<http://547215.n5.nabble.com/*__*JaxRS-**>
<http://547215.n5.nabble.com/*__*JaxRS-**
<http://547215.n5.nabble.com/**JaxRS-**>>><http://547215.n5.______nabble.com/JaxRS-**
<http://nabble.com/JaxRS-**>
<http://nabble.com/JaxRS-**>
<http://547215.n5.nabble.com/____JaxRS-**
<http://547215.n5.nabble.com/__JaxRS-**>
<http://547215.n5.nabble.com/__JaxRS-**
<http://547215.n5.nabble.com/JaxRS-**>>>>
Client-with-Deletes-td5731444.______******html<http://cxf.____547215.
<http://cxf.547215.>__n5.
<http://cxf.547215.n5.>****
nabble.com/JaxRS-Client-with-*______***Deletes-td5731444.html
<http://nabble.com/JaxRS-Client-with-*____***Deletes-td5731444.html>
<http://nabble.com/JaxRS-__Client-with-*__***Deletes-__td5731444.html
<http://nabble.com/JaxRS-Client-with-*__***Deletes-td5731444.html>>
<http://nabble.com/JaxRS-____Client-with-****Deletes-____td5731444.html
<http://nabble.com/JaxRS-__Client-with-****Deletes-__td5731444.html>
<http://nabble.com/JaxRS-__Client-with-****Deletes-__td5731444.html
<http://nabble.com/JaxRS-Client-with-****Deletes-td5731444.html>>><http__://nabb__l__e.com/JaxRS-Client-__with-*__*__Deletes-td5731444.html
<http://nabbl__e.com/JaxRS-Client-__with-**__Deletes-td5731444.html>
<http://nabble.com/JaxRS-__Client-__with-**Deletes-__td5731444.html
<http://nabble.com/JaxRS-Client-__with-**Deletes-td5731444.html>>
<http://nabble.com/JaxRS-____Client-with-**Deletes-____td5731444.html
<http://nabble.com/JaxRS-__Client-with-**Deletes-__td5731444.html>
<http://nabble.com/JaxRS-__Client-with-**Deletes-__td5731444.html
<http://nabble.com/JaxRS-Client-with-**Deletes-td5731444.html>>>>
<http:/**/cxf.547215.n5.__nabb____le.com/**JaxRS-Client-____with-__Deletes-**
<http://nabb__le.com/**JaxRS-Client-__with-__Deletes-**>
<http://nabble.com/**JaxRS-__Client-__with-Deletes-**
<http://nabble.com/**JaxRS-Client-__with-Deletes-**>>
<http://cxf.547215.n5.nabble.____com/**JaxRS-Client-with-____Deletes-**
<http://cxf.547215.n5.nabble.__com/**JaxRS-Client-with-__Deletes-**
<http://cxf.547215.n5.nabble.com/**JaxRS-Client-with-Deletes-**>>>
td5731444.html<http://cxf.__54____7215.n5.nabble.com/JaxRS-______Client-with-Deletes-__td5731444.____html
<http://54__7215.n5.nabble.com/JaxRS-____Client-with-Deletes-td5731444.____html>
<http://547215.n5.nabble.com/__JaxRS-__Client-with-Deletes-__td5731444.__html
<http://547215.n5.nabble.com/JaxRS-__Client-with-Deletes-td5731444.__html>>
<http://cxf.547215.n5.nabble.____com/JaxRS-Client-with-__Deletes-__td5731444.html
<http://cxf.547215.n5.nabble.__com/JaxRS-Client-with-Deletes-__td5731444.html
<http://cxf.547215.n5.nabble.com/JaxRS-Client-with-Deletes-td5731444.html>>>>
Cheers, Sergey
Thank you!
Regards, Julio
[image: i2cat]
Julio C.
Barrera Juez
Office
phone: +34
93 357 99
27
<tel:%2B34%2093%20357%2099%____2027>
Distributed
Applications and
Networks
Area (DANA)
i2CAT
Foundation,
Barcelona,
Spain
http://dana.i2cat.net
--
Sergey Beryozkin
Talend Community Coders
http://coders.talend.com/
Blog:
http://sberyozkin.blogspot.com
--
Sergey Beryozkin
Talend Community Coders
http://coders.talend.com/
Blog: http://sberyozkin.blogspot.com
--
Sergey Beryozkin
Talend Community Coders
http://coders.talend.com/
Blog: http://sberyozkin.blogspot.com