mirror of
https://github.com/apache/struts.git
synced 2026-08-07 23:57:03 +00:00
[WW-4989] Uses JacksonXML handler a default handler for XML in the REST plugin (#288)
* WW-4989 Uses Jackson XML handler as a default for XML serialisation * WW-4989 Renames class to match the same pattern for XML handler
This commit is contained in:
committed by
Yasser Zamani
parent
f4c8994da4
commit
85812fb9bb
+1
-1
@@ -32,7 +32,7 @@ import java.io.Writer;
|
||||
/**
|
||||
* Handles JSON content using jackson-lib
|
||||
*/
|
||||
public class JacksonLibHandler extends AbstractContentTypeHandler {
|
||||
public class JacksonJsonHandler extends AbstractContentTypeHandler {
|
||||
|
||||
private static final String DEFAULT_CONTENT_TYPE = "application/json";
|
||||
private String defaultEncoding = "ISO-8859-1";
|
||||
@@ -30,8 +30,8 @@
|
||||
|
||||
<bean type="org.apache.struts2.rest.ContentTypeHandlerManager" class="org.apache.struts2.rest.DefaultContentTypeHandlerManager" />
|
||||
|
||||
<bean type="org.apache.struts2.rest.handler.ContentTypeHandler" name="xml" class="org.apache.struts2.rest.handler.XStreamHandler" />
|
||||
<bean type="org.apache.struts2.rest.handler.ContentTypeHandler" name="json" class="org.apache.struts2.rest.handler.JacksonLibHandler" />
|
||||
<bean type="org.apache.struts2.rest.handler.ContentTypeHandler" name="xml" class="org.apache.struts2.rest.handler.JacksonXmlHandler" />
|
||||
<bean type="org.apache.struts2.rest.handler.ContentTypeHandler" name="json" class="org.apache.struts2.rest.handler.JacksonJsonHandler" />
|
||||
<bean type="org.apache.struts2.rest.handler.ContentTypeHandler" name="html" class="org.apache.struts2.rest.handler.HtmlHandler" />
|
||||
<bean type="org.apache.struts2.rest.handler.ContentTypeHandler" name="x-www-form-urlencoded" class="org.apache.struts2.rest.handler.FormUrlEncodedHandler" />
|
||||
<bean type="org.apache.struts2.rest.handler.ContentTypeHandler" name="multipart/form-data" class="org.apache.struts2.rest.handler.MultipartFormDataHandler" />
|
||||
|
||||
+7
-7
@@ -28,13 +28,13 @@ import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class JacksonLibHandlerTest extends TestCase {
|
||||
public class JacksonJsonHandlerTest extends TestCase {
|
||||
|
||||
public void testFromObject() throws IOException {
|
||||
Contact contact = new Contact("bob", true, 44);
|
||||
|
||||
StringWriter writer = new StringWriter();
|
||||
JacksonLibHandler handler = new JacksonLibHandler();
|
||||
JacksonJsonHandler handler = new JacksonJsonHandler();
|
||||
handler.fromObject(new MockActionInvocation(), contact, "success", writer);
|
||||
String data = writer.toString();
|
||||
assertTrue(data.startsWith("{"));
|
||||
@@ -47,7 +47,7 @@ public class JacksonLibHandlerTest extends TestCase {
|
||||
Contact contact = new Contact("bob", true, 44);
|
||||
|
||||
StringWriter writer = new StringWriter();
|
||||
JacksonLibHandler handler = new JacksonLibHandler();
|
||||
JacksonJsonHandler handler = new JacksonJsonHandler();
|
||||
handler.fromObject(new MockActionInvocation(), Arrays.asList(contact), "success", writer);
|
||||
|
||||
String data = writer.toString();
|
||||
@@ -62,7 +62,7 @@ public class JacksonLibHandlerTest extends TestCase {
|
||||
|
||||
Contact target = new Contact();
|
||||
StringReader reader = new StringReader("{\"age\":44,\"important\":true,\"name\":\"bob\"}");
|
||||
JacksonLibHandler handler = new JacksonLibHandler();
|
||||
JacksonJsonHandler handler = new JacksonJsonHandler();
|
||||
handler.toObject(new MockActionInvocation(), reader, target);
|
||||
assertEquals(contact, target);
|
||||
}
|
||||
@@ -75,18 +75,18 @@ public class JacksonLibHandlerTest extends TestCase {
|
||||
|
||||
List<Contact> target = new ArrayList<Contact>();
|
||||
StringReader reader = new StringReader("[{\"age\":44,\"important\":true,\"name\":\"bob\"},{\"age\":33,\"important\":false,\"name\":\"john\"}]");
|
||||
JacksonLibHandler handler = new JacksonLibHandler();
|
||||
JacksonJsonHandler handler = new JacksonJsonHandler();
|
||||
handler.toObject(new MockActionInvocation(), reader, target);
|
||||
assertEquals(source.size(), target.size());
|
||||
}
|
||||
|
||||
public void testContentType() throws IOException {
|
||||
JacksonLibHandler handler = new JacksonLibHandler();
|
||||
JacksonJsonHandler handler = new JacksonJsonHandler();
|
||||
assertEquals(handler.getContentType(), "application/json;charset=ISO-8859-1");
|
||||
}
|
||||
|
||||
public void testDefaultEncoding() throws IOException {
|
||||
JacksonLibHandler handler = new JacksonLibHandler();
|
||||
JacksonJsonHandler handler = new JacksonJsonHandler();
|
||||
handler.setDefaultEncoding("UTF-8");
|
||||
assertEquals(handler.getContentType(), "application/json;charset=UTF-8");
|
||||
}
|
||||
Reference in New Issue
Block a user