Author: mrdon Date: Sat Apr 19 07:01:15 2008 New Revision: 649814 URL: http://svn.apache.org/viewvc?rev=649814&view=rev Log: Fixing improper render of boolean values for xslt result WW-2457
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/AdapterFactory.java struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/xslt/XSLTResultTest.java Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/AdapterFactory.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/AdapterFactory.java?rev=649814&r1=649813&r2=649814&view=diff ============================================================================== --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/AdapterFactory.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/AdapterFactory.java Sat Apr 19 07:01:15 2008 @@ -146,7 +146,7 @@ if (valueType.isArray()) adapterClass = ArrayAdapter.class; - else if (value instanceof String || value instanceof Number || valueType.isPrimitive()) + else if (value instanceof String || value instanceof Number || value instanceof Boolean || valueType.isPrimitive()) adapterClass = StringAdapter.class; else if (value instanceof Collection) adapterClass = CollectionAdapter.class; Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/xslt/XSLTResultTest.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/xslt/XSLTResultTest.java?rev=649814&r1=649813&r2=649814&view=diff ============================================================================== --- struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/xslt/XSLTResultTest.java (original) +++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/xslt/XSLTResultTest.java Sat Apr 19 07:01:15 2008 @@ -106,7 +106,7 @@ assertTrue(out.indexOf("<html xmlns=\"http://www.w3.org/TR/xhtml1/strict\"") > -1); assertTrue(out.indexOf("Hello Santa Claus how are you?") > -1); } - + public void testTransform3() throws Exception { result.setParse(false); result.setLocation("XSLTResultTest3.xsl"); @@ -120,6 +120,18 @@ assertTrue(out.indexOf("XWork not in Action by Superman") > -1); } + public void testTransformWithBoolean() throws Exception { + result.setParse(false); + result.setLocation("XSLTResultTest5.xsl"); + result.execute(mai); + + String out = response.getContentAsString(); + assertTrue(out.startsWith("<?xml version=\"1.0\" encoding=\"UTF-8\"?>")); + assertTrue(out.indexOf("<html xmlns=\"http://www.w3.org/TR/xhtml1/strict\"") > -1); + assertTrue(out.indexOf("Hello Santa Claus how are you?") > -1); + assertTrue(out.indexOf("You are active: true") > -1); + } + public void testTransform4WithDocumentInclude() throws Exception { result = new XSLTResult(){ protected URIResolver getURIResolver() { @@ -185,6 +197,10 @@ public String getUsername() { return "Santa Claus"; + } + + public boolean isActive() { + return true; } public List getBooks() {