Author: sergeyb
Date: Mon Sep 2 14:19:40 2013
New Revision: 1519447
URL: http://svn.apache.org/r1519447
Log:
Merged revisions 1519442 via svnmerge from
https://svn.apache.org/repos/asf/cxf/trunk
........
r1519442 | sergeyb | 2013-09-02 15:07:30 +0100 (Mon, 02 Sep 2013) | 1 line
[CXF-5249] Adding a test where the request method is checked in container
filter
........
Modified:
cxf/branches/2.7.x-fixes/ (props changed)
cxf/branches/2.7.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/AbstractRequestContextImpl.java
cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookServer20.java
cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRS20ClientServerBookTest.java
Propchange: cxf/branches/2.7.x-fixes/
------------------------------------------------------------------------------
Merged /cxf/trunk:r1519442
Propchange: cxf/branches/2.7.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified:
cxf/branches/2.7.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/AbstractRequestContextImpl.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.7.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/AbstractRequestContextImpl.java?rev=1519447&r1=1519446&r2=1519447&view=diff
==============================================================================
---
cxf/branches/2.7.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/AbstractRequestContextImpl.java
(original)
+++
cxf/branches/2.7.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/AbstractRequestContextImpl.java
Mon Sep 2 14:19:40 2013
@@ -28,6 +28,7 @@ import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
+import org.apache.cxf.jaxrs.utils.HttpUtils;
import org.apache.cxf.message.Message;
public abstract class AbstractRequestContextImpl extends
AbstractPropertiesImpl {
@@ -78,7 +79,7 @@ public abstract class AbstractRequestCon
}
public String getMethod() {
- return (String)getProperty(Message.HTTP_REQUEST_METHOD);
+ return HttpUtils.getProtocolHeader(m, Message.HTTP_REQUEST_METHOD,
null);
}
public void setMethod(String method) throws IllegalStateException {
Modified:
cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookServer20.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookServer20.java?rev=1519447&r1=1519446&r2=1519447&view=diff
==============================================================================
---
cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookServer20.java
(original)
+++
cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookServer20.java
Mon Sep 2 14:19:40 2013
@@ -140,6 +140,10 @@ public class BookServer20 extends Abstra
MediaType mt = context.getMediaType();
if (mt != null && mt.toString().equals("text/xml")) {
+ String method = context.getMethod();
+ if ("PUT".equals(method)) {
+ context.setMethod("POST");
+ }
context.getHeaders().putSingle("Content-Type",
"application/xml");
}
List<MediaType> acceptTypes = context.getAcceptableMediaTypes();
Modified:
cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRS20ClientServerBookTest.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRS20ClientServerBookTest.java?rev=1519447&r1=1519446&r2=1519447&view=diff
==============================================================================
---
cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRS20ClientServerBookTest.java
(original)
+++
cxf/branches/2.7.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRS20ClientServerBookTest.java
Mon Sep 2 14:19:40 2013
@@ -250,6 +250,18 @@ public class JAXRS20ClientServerBookTest
}
@Test
+ public void testReplaceBookMistypedCTAndHttpVerb() throws Exception {
+
+ String endpointAddress = "http://localhost:" + PORT +
"/bookstore/books2";
+ WebClient wc = WebClient.create(endpointAddress,
+ Collections.singletonList(new
ReplaceBodyFilter()));
+
WebClient.getConfig(wc).getHttpConduit().getClient().setReceiveTimeout(1000000L);
+ wc.accept("text/mistypedxml").type("text/xml");
+ Book book = wc.put(new Book("book", 555L), Book.class);
+ assertEquals(561L, book.getId());
+ }
+
+ @Test
public void testPostGetCollectionGenericEntityAndType() throws Exception {
String endpointAddress =