RAT (Release Audit Tool) results

The following document contains the results of RAT (Release Audit Tool).

*****************************************************
Summary
-------
Notes: 0
Binaries: 0
Archives: 0
Standards: 98

Apache Licensed: 50
Generated Documents: 0

JavaDocs are generated and so license header is optional
Generated files do not required license headers

48 Unknown Licenses

*******************************

Archives (+ indicates readable, $ unreadable): 

 
*****************************************************
  Files with AL headers will be marked L
  Binary files (which do not require AL headers) will be marked B
  Compressed archives will be marked A
  Notices, licenses etc will be marked N
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/pom.xml
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSON.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONFieldBridge.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/annotations/JSONParameter.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMD.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethod.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/annotations/SMDMethodParameter.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/bridge/FieldBridge.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/bridge/ParameterizedBridge.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/bridge/StringBridge.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/JSONCleaner.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/JSONException.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/JSONPopulator.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/JSONReader.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/JSONResult.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/JSONValidationInterceptor.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCError.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCErrorCode.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/rpc/RPCResponse.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/SerializationParams.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/smd/SMD.java
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDGenerator.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethod.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDMethodParameter.java
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/resources/META-INF/tags/JsonPlugin.tld
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/resources/struts-plugin.xml
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/AnEnum.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/AnEnumBean.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/Bean.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONCleanerTest.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONEnumTest.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONPopulatorTest.java
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONReaderTest.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONUtilTest.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONValidationInterceptorTest.java
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/OtherBean.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/SimpleValue.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest1.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/SMDActionTest2.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/SMDMethodInterfaceTest.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletRequest.java
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletResponse.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpSession.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockServletContext.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/TestAction2.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/TestAction3.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/TestAction4.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/TestUtils.java
  AL    /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/WrapperClassBean.java
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-1.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-2.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-3.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-4.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-5.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-to-the-bone.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-1.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-10.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-2-enum.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-2.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-3.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-4.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-5.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-6.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-7.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-8.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-9.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-validation-1.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/jsonp-1.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-01.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-02.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-03.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/nulls-1.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/prefix-1.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-1.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-10.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-11.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-12.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-13.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-14.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-15.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-2.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-3.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-4.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-5.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-6.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-7.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-8.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-9.txt
 !????? /Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd.txt
 
 *****************************************************
 Printing headers for files without AL header...
 
 
 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/java/org/apache/struts2/json/smd/SMDGenerator.java
 =======================================================================
 package org.apache.struts2.json.smd;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.util.logging.Logger;
import com.opensymphony.xwork2.util.logging.LoggerFactory;
import org.apache.struts2.StrutsStatics;
import org.apache.struts2.json.JSONUtil;
import org.apache.struts2.json.annotations.SMD;
import org.apache.struts2.json.annotations.SMDMethod;
import org.apache.struts2.json.annotations.SMDMethodParameter;

import javax.servlet.http.HttpServletRequest;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.util.List;
import java.util.regex.Pattern;

public class SMDGenerator {

    private static final Logger LOG = LoggerFactory.getLogger(SMDGenerator.class);

    // rootObject is based on OGNL expression (action by default)
    private Object rootObject;
    private List<Pattern> excludeProperties;
    private boolean ignoreInterfaces;

    public SMDGenerator(Object root, List<Pattern> excludeProperties, boolean ignoreInterfaces) {
        this.rootObject = root;
        this.excludeProperties = excludeProperties;
        this.ignoreInterfaces = ignoreInterfaces;
    }

    public org.apache.struts2.json.smd.SMD generate(ActionInvocation actionInvocation) {
        ActionContext actionContext = actionInvocation.getInvocationContext();
        HttpServletRequest request = (HttpServletRequest) actionContext.get(StrutsStatics.HTTP_REQUEST);

        Class clazz = rootObject.getClass();
        org.apache.struts2.json.smd.SMD smd = new org.apache.struts2.json.smd.SMD();
        // URL
        smd.setServiceUrl(request.getRequestURI());

        // customize SMD
        org.apache.struts2.json.annotations.SMD smdAnnotation = (SMD) clazz.getAnnotation(SMD.class);
        if (smdAnnotation != null) {
            smd.setObjectName(smdAnnotation.objectName());
            smd.setServiceType(smdAnnotation.serviceType());
            smd.setVersion(smdAnnotation.version());
        }


 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/resources/META-INF/tags/JsonPlugin.tld
 =======================================================================
 <?xml version="1.0"?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
        version="2.0">

    <description>
        This exposes JSON util functions from the Struts JSON plugin
    </description>

    <tlib-version>1.0</tlib-version>

    <short-name>json</short-name>

    <uri>/struts-json-tags</uri>

    <function>
        <name>serialize</name>
        <function-class>org.apache.struts2.json.JSONUtil</function-class>
        <function-signature>
            java.lang.String serialize(java.lang.Object)
        </function-signature>
    </function>

</taglib>

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/main/resources/struts-plugin.xml
 =======================================================================
 <?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
    <package name="json-default" extends="struts-default">

        <result-types>
            <result-type name="json" class="org.apache.struts2.json.JSONResult"/>
        </result-types>

        <interceptors>
            <interceptor name="json" class="org.apache.struts2.json.JSONInterceptor"/>
            <interceptor name="jsonValidation" class="org.apache.struts2.json.JSONValidationInterceptor"/>

            <!-- Sample JSON validation stack -->
            <interceptor-stack name="jsonValidationWorkflowStack">
                <interceptor-ref name="basicStack"/>
                <interceptor-ref name="validation">
                    <param name="excludeMethods">input,back,cancel</param>
                </interceptor-ref>
                <interceptor-ref name="jsonValidation"/>
                <interceptor-ref name="workflow"/>
            </interceptor-stack>

        </interceptors>

    </package>
</struts>

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONReaderTest.java
 =======================================================================
 package org.apache.struts2.json;

import org.junit.Test;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;

/**
 * User: mcucchiara
 * Date: 10/11/11
 * Time: 17.26
 */
public class JSONReaderTest {
    private JSONReader reader = new JSONReader();

    @Test
    public void testExponentialNumber() throws Exception {
        Object ret = reader.read("5e-5");
        assertNotNull(ret);
        assertEquals(Double.class, ret.getClass());
        assertEquals(5.0E-5, ret);
    }

    @Test
    public void testExponentialNumber2() throws Exception {
        Object ret = reader.read("123.4e10");
        assertNotNull(ret);
        assertEquals(Double.class, ret.getClass());
        assertEquals(123.4e10, ret);
    }

    @Test
    public void testDecimalNumber() throws Exception {
        Object ret = reader.read("3.2");
        assertNotNull(ret);
        assertEquals(Double.class, ret.getClass());
        assertEquals(3.2, ret);
    }

    @Test
    public void testNaturalNumber() throws Exception {
        Object ret = reader.read("123");
        assertNotNull(ret);
        assertEquals(Long.class, ret.getClass());
        assertEquals(123L, ret);
    }
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java
 =======================================================================
 package org.apache.struts2.json;

import org.apache.struts2.StrutsTestCase;
import org.apache.struts2.json.annotations.JSONFieldBridge;
import org.apache.struts2.json.bridge.StringBridge;
import org.junit.Test;

import java.util.Map;
import java.util.LinkedHashMap;
import java.net.URL;

public class JSONWriterTest extends StrutsTestCase{
    @Test
    public void testWrite() throws Exception {
        Bean bean1=new Bean();
        bean1.setStringField("str");
        bean1.setBooleanField(true);
        bean1.setCharField('s');
        bean1.setDoubleField(10.1);
        bean1.setFloatField(1.5f);
        bean1.setIntField(10);
        bean1.setLongField(100);
        bean1.setEnumField(AnEnum.ValueA);
        bean1.setEnumBean(AnEnumBean.Two);

        JSONWriter jsonWriter = new JSONWriter();
        jsonWriter.setEnumAsBean(false);
        String json = jsonWriter.write(bean1);
        TestUtils.assertEquals(JSONWriter.class.getResource("jsonwriter-write-bean-01.txt"), json);
    }

    @Test
    public void testWriteExcludeNull() throws Exception {
        BeanWithMap bean1=new BeanWithMap();
        bean1.setStringField("str");
        bean1.setBooleanField(true);
        bean1.setCharField('s');
        bean1.setDoubleField(10.1);
        bean1.setFloatField(1.5f);
        bean1.setIntField(10);
        bean1.setLongField(100);
        bean1.setEnumField(AnEnum.ValueA);
        bean1.setEnumBean(AnEnumBean.Two);

        Map m = new LinkedHashMap();
        m.put("a", "x");
        m.put("b", null);
        m.put("c", "z");
        bean1.setMap(m);


 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/java/org/apache/struts2/json/StrutsMockHttpServletResponse.java
 =======================================================================
 package org.apache.struts2.json;

import com.mockobjects.servlet.MockHttpServletResponse;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Locale;


/**
 * StrutsMockHttpServletResponse
 *
 */
public class StrutsMockHttpServletResponse extends MockHttpServletResponse {
    private Locale locale;
    private PrintWriter writer;
    private int status;
    private String redirectURL;
    private String contentType;
    private String encoding;

    public Locale getLocale() {
        return locale;
    }

    public void setLocale(Locale locale) {
        this.locale = locale;
    }

    public String getContentType() {
        return contentType;  //To change body of implemented methods use File | Settings | File Templates.
    }

    @Override
    public void setContentType(String type) {
        this.contentType = type;
    }

    public PrintWriter getWriter() throws IOException {
        if (writer == null)
            return new PrintWriter(new ByteArrayOutputStream());
        else
            return writer;
    }

    public void setCharacterEncoding(String string) {
        this.encoding = string;
    }


 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-1.txt
 =======================================================================
 { 
    aField: NaN 
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-2.txt
 =======================================================================
 { 
    aField: 10 

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-3.txt
 =======================================================================
 
    aField: 10 
    }

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-4.txt
 =======================================================================
 bad 10

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-5.txt
 =======================================================================
 { a: "aaaa }

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/bad-to-the-bone.txt
 =======================================================================
 
 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-1.txt
 =======================================================================
 {
    "date": "1999-12-31T23:59:59",
    "date2": "31\/12\/99",
  	"array": ["str0", "str1"],
  	"intArray": [1, 2],
  	"beanArray": [ {
  						"stringField": "bean1"
  					},
  					{
  					    "stringField": "bean2"
  					}
  	],
	"list": ["a", "a", "\"", "\\", "\/", "\b", "\f", "\n", "\r", "\t"],
	"collection": ["b", 1, [10, 12]],
	"collection2": [{
						"booleanField": true,
						"charField": "s",
						"doubleField": 10.1,
						"floatField": 1.5,
						"intField": 10,
						"longField": 100,
						"objectField": {
							"booleanField": false,
							"charField": "\u0000",
							"doubleField": 2.2,
							"floatField": 1.1,
							"intField": 0,
							"longField":0,
							"objectField":null,
							"stringField":"  "
					    },
					    "stringField": "str"
	}],
	"foo": "foo",
	"map": {
		"a": 1,
		"c": [1.0, 2.0]
	},
	"result": null,
	"bean": {
	    "booleanField": true,
		"stringField" : "test",
		"intField" : 10,
		"charField": "s",
		"doubleField": 10.1,
		"byteField": 3
	},
	"foo2" : "ignoreme"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-10.txt
 =======================================================================
 {
    "list":[{"booleanField":false},{"booleanField":false},{"booleanField":false}]
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt
 =======================================================================
 {
    "set":[
        {"list":[{"booleanField":false},{"booleanField":false},{"booleanField":false}]},
        {"list":[{"booleanField":false},{"booleanField":false}]}
    ]
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-2-enum.txt
 =======================================================================
 {
    "bigDecimal": null,
    "bigInteger": null,
	"booleanField": true,
	"byteField": 0,
	"charField": "s",
	"doubleField": 10.1,
	"enumBean": {
	    "propA":"A",
	    "propB":"B",
	    "_name":"One"
	 },
	"enumField": {
	    "_name":"ValueA"
   },
	"floatField": 1.5,
	"intField": 10,
	"longField": 100,
	"objectField": null,
	"stringField": "str"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-2.txt
 =======================================================================
 {
    "bigDecimal": null,
    "bigInteger": null,
	"booleanField": true,
	"byteField": 0,
	"charField": "s",
	"doubleField": 10.1,
	"enumBean": "One",
	"enumField": "ValueA",	
	"floatField": 1.5,
	"intField": 10,
	"longField": 100,
	"objectField": null,
	"stringField": "str"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-3.txt
 =======================================================================
 /* {
    "array": ["a", "a", "\"", "\\", "\/", "\b", "\f", "\n", "\r", "\t"],
    "bean": null,
    "collection": ["b", 1, [10, 12]],
    "collection2": [{
                        "bigDecimal": null,
                        "bigInteger": null,
                        "booleanField": true,
                        "byteField": 0,
                        "charField": "s",
                        "doubleField": 10.1,
                        "enumBean": null,
                        "enumField": null,
                        "floatField": 1.5,
                        "intField": 10,
                        "longField": 100,
                        "objectField": {
                            "bigDecimal": null,
                            "bigInteger": null,
                            "booleanField": false,
                            "byteField": 0,
                            "charField": "\u0000",
                            "doubleField": 2.2,
                            "enumBean": "Three",
                            "enumField": "ValueC",                            
                            "floatField": 1.1,
                            "intField": 0,
                            "longField":0,
                            "objectField":null,
                            "stringField":"  "
                        },
                        "stringField": "str"
    }],
    "date": "1999-12-31T11:59:59",
    "date2": "31\/12\/99",
    "foo": "foo",
    "list": null,
    "map": {
        "a": 1,
        "c": [1.0, 2.0]
    },
    "result":null,
    "set":null
} */

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-4.txt
 =======================================================================
 {
    "name":"name",
    "name2":"name"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-5.txt
 =======================================================================
 {
    "booleanField": true,
    "stringField" : "test",
    "intField" : 10,
    "charField": "s",
    "doubleField": 10.1,
    "byteField": 3
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-6.txt
 =======================================================================
 {}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-7.txt
 =======================================================================
 {
        "bigDecimal": 111111.5,
        "bigInteger": 111111,
        "booleanField": true,
        "primitiveBooleanField1": true,
        "primitiveBooleanField2": false,
        "primitiveBooleanField3": null,
        "stringField" : "test\u000e\u000F",
        "intField" : 10,
        "nullIntField" : null,
        "charField": "s",
        "doubleField": 10.1,
        "byteField": 3,
        "objectField": { "empty": "to test issue 28 (http://code.google.com/p/jsonplugin/issues/detail?id=28) the value of objectField should be simply empty curly braces { } " },
        "enumField": "ValueA",
        "listField": [{"value":"1"},{"value":"2"}],
        "listMapField": [{"id1":2073501,"id2":3}],
        "mapListField": {"id1":[1,2,3],"id2":[4,3,2,1]},
        "arrayMapField": [{"id1":2073501,"id2":3}]
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-8.txt
 =======================================================================
 {
        "booleanField": "true",
        "stringField" : "test",
        "intField" : "10",
        "charField": "s",
        "doubleField": "10.1",
        "byteField": "3",
        "objectField": { "empty": "to test issue 28 (http://code.google.com/p/jsonplugin/issues/detail?id=28) the value of objectField should be simply empty curly braces { } " },
        "listField": null,
        "listMapField": null,
        "mapListField": null,
        "arrayMapField": null
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-9.txt
 =======================================================================
 {
    "foo":"fooValue"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json-validation-1.txt
 =======================================================================
 {
   "errors": [
        "General error"
   ],
   "fieldErrors": {
        "value": ["Min value is -1"],
   		"text" : [
   			"Too short",
			"This is no email"
		]
   } 
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/json.txt
 =======================================================================
 {
	"array": ["a", "a", "\"", "\\", "\/", "\b", "\f", "\n", "\r", "\t"],
	"bean": null,
	"collection": ["b", 1, [10, 12]],
	"collection2": [{
						"bigDecimal": 111111.111111,
						"bigInteger": 111111111111,
						"booleanField": true,
						"byteField": 0,
						"charField": "s",
						"doubleField": 10.1,
						"enumBean": "One",
						"enumField": "ValueA",
						"floatField": 1.5,
						"intField": 10,
						"longField": 100,
						"objectField": {
							"bigDecimal": null,
							"bigInteger": null,
							"booleanField": false,
							"byteField": 0,
							"charField": "\u0000",
							"doubleField": 2.2,
							"enumBean": "Two",
							"enumField": "ValueB",
							"floatField": 1.1,
							"intField": 0,
							"longField":0,
							"objectField":null,
							"stringField":"  "
						},
						"stringField": "str"
	}],
	"date": "1999-12-31T11:59:59",
	"date2": "31\/12\/99",
	"foo": "foo",
	"list": null,
	"map": {
		"a": 1,
		"c": [1.0, 2.0]
	},
	"result":null,
	"set":null
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/jsonp-1.txt
 =======================================================================
 exec({
    "bigDecimal": null,
    "bigInteger": null,
	"booleanField": true,
	"byteField": 0,
	"charField": "s",
	"doubleField": 10.1,
	"enumBean": "One",
	"enumField": "ValueA",
	"floatField": 1.5,
	"intField": 10,
	"longField": 100,
	"objectField": null,
	"stringField": "str"
})

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-01.txt
 =======================================================================
 {
    "bigDecimal":null,
    "bigInteger":null,
    "booleanField":true,
    "byteField":0,
    "charField":"s",
    "doubleField":10.1,
    "enumBean":"Two",
    "enumField":"ValueA",
    "floatField":1.5,
    "intField":10,
    "longField":100,
    "objectField":null,
    "stringField":"str"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-02.txt
 =======================================================================
 {
    "bigDecimal":null,
    "bigInteger":null,
    "booleanField":true,
    "byteField":0,
    "charField":"s",
    "doubleField":10.1,
    "enumBean":"Two",
    "enumField":"ValueA",
    "floatField":1.5,
    "intField":10,
    "longField":100,
    "objectField":null,
    "stringField":"str",
    "url":"http:\/\/www.google.com"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-03.txt
 =======================================================================
 {
    "booleanField":true,
    "byteField":0,
    "charField":"s",
    "doubleField":10.1,
    "enumBean":"Two",
    "enumField":"ValueA",
    "floatField":1.5,
    "intField":10,
    "longField":100,
    "map":{"a":"x","c":"z"},
    "stringField":"str"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/nulls-1.txt
 =======================================================================
 {"foo":"fool"}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/prefix-1.txt
 =======================================================================
 {}&& {"foo":"fool"}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-1.txt
 =======================================================================
 {
    "methods":[
        {
            "name":"add",
            "parameters":[
                {"name":"p0"},
                {"name":"p1"}
            ]
        },
        {
            "name":"doSomething",
            "parameters":[]
        },
        {
            "name":"doSomethingObjects",
            "parameters":[
                {"name":"p0"},
                {"name":"p1"},
                {"name":"p2"}
            ]
        },
        {
            "name":"doSomethingPrimitives",
            "parameters":[
                {"name":"p0"},
                {"name":"p1"},
                {"name":"p2"},
                {"name":"p3"},
                {"name":"p4"},
                {"name":"p5"},
                {"name":"p6"},
                {"name":"p7"},
                {"name":"p8"}
             ]
        }
    ],
    "objectName":null,
    "serviceType":"JSON-RPC",
    "serviceUrl":"http:\/\/sumeruri",
    "version":".1"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-10.txt
 =======================================================================
 {
    "method": "getBean",
    "id":15
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-11.txt
 =======================================================================
 {
    "debug":null,
    "error":null,
    "id":"2",
    "result":null
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-12.txt
 =======================================================================
 {
    "debug":null,
    "error":null,
    "id":"15",
    "result": {
        "bigDecimal": null,
        "bigInteger": null,
        "booleanField": true,
        "byteField": 0,
        "charField": "s",
        "doubleField": 10.1,
        "enumBean": null,
        "enumField": null,        
        "floatField": 1.5,
        "intField": 10,
        "longField": 100,
        "objectField": null,
        "stringField": "str"
    }
}    

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-13.txt
 =======================================================================
 {
    "debug": null,
    "error": {
        "code":100,
        "message": "'method' is required for JSON RPC",
        "name":null,
        "stack":null
    },
    "id":"1",
    "result":null
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-14.txt
 =======================================================================
 {
    "params": [],
    "method": "doSomething",
    "id":1
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-15.txt
 =======================================================================
 {
    "params": [],
    "method": "doSomethingElse",
    "id":1
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-2.txt
 =======================================================================
 {   
    "methods": [
        {
            "name": "add",
            "parameters": [
                {"name":"a"},
                {"name":"b"}
             ]
        },
        {
            "name": "doSomethingElse",
            "parameters":[]
        },
        {
            "name": "getBean",
            "parameters":[]
        }
    ],
    "objectName": "testaction",
    "serviceType": "service", 
    "serviceUrl":"http:\/\/sumeruri",
    "version": "10.0"
}


 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-3.txt
 =======================================================================
 {
    "params": [0, 0],
    "method": "add",
    "id":1
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-4.txt
 =======================================================================
 {
    "params": [0, 0],
    "id":1
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-5.txt
 =======================================================================
 {
    "params": [0, 0],
    "method": "zzz",
    "id":1
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-6.txt
 =======================================================================
 {
    "params": ["string", 1, true, 'c', 2, 3.3, 4.4, 5, 6],
    "method": "doSomethingPrimitives",
    "id":"2"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-7.txt
 =======================================================================
 {
    "params": [
        {
            "booleanField": true,
            "stringField" : "test",
            "intField" : 10,
            "charField": "s",
            "doubleField": 10.1,
            "byteField": 3
        },
        {
            "a": 1,
            "c": [1.0, 2.0]
        },
        ["str0", "str1"]
    ],
    "method": "doSomethingObjects",
    "id":"2"
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-8.txt
 =======================================================================
 {
    "addWasCalled":false,
    "beanParam":null,
    "booleanParam":false,
    "byteParam":0,
    "charParam":"\u0000",
    "doubleParam":0.0,
    "floatParam":0.0,
    "intParam":0,
    "listParam":null,
    "longParam":0,
    "mapParam":null,
    "objectParam":null,
    "shortParam":0,
    "stringParam":null
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd-9.txt
 =======================================================================
 {
    "params": [0, 0],
    "method": "methodWithoutAnnotation",
    "id":1
}

 =======================================================================
 ==/Users/lukaszlenart/Projects/Apache/STRUTS_2_3_8/plugins/json/src/test/resources/org/apache/struts2/json/smd.txt
 =======================================================================
 {}