Author: jkuhnert
Date: Tue Oct 30 13:53:55 2007
New Revision: 590460

URL: http://svn.apache.org/viewvc?rev=590460&view=rev
Log:
Cleaned up some of the exception page rendering CSS attributes / handling of 
tab && whitespace character data in template location render / various other 
CSS improvements.

Modified:
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/describe/LocationRenderStrategy.java
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/ExceptionPresenterImpl.java
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/RequestExceptionReporterImpl.java
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.html
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.java
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.jwc
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.css
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.html
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.java
    
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/exception/ExceptionAnalyzer.java
    
tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/describe/TestLocationRenderStrategy.java

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/describe/LocationRenderStrategy.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/describe/LocationRenderStrategy.java?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/describe/LocationRenderStrategy.java
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/describe/LocationRenderStrategy.java
 Tue Oct 30 13:53:55 2007
@@ -14,17 +14,13 @@
 
 package org.apache.tapestry.describe;
 
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.LineNumberReader;
-import java.io.Reader;
-import java.net.URL;
-
 import org.apache.hivemind.Location;
 import org.apache.tapestry.IMarkupWriter;
 import org.apache.tapestry.IRequestCycle;
 
+import java.io.*;
+import java.net.URL;
+
 /**
  * Adapter for displaying [EMAIL PROTECTED] 
org.apache.hivemind.Location} objects as
  * HTML. This may include showing the content of the
@@ -53,52 +49,67 @@
 
         int lineNumber = l.getLineNumber();
 
-        if (lineNumber < 1) return;
+        if (lineNumber < 1)
+            return;
 
         URL url = l.getResource().getResourceURL();
 
-        if (url == null) return;
+        if (url == null)
+            return;
 
         writeResourceContent(writer, url, lineNumber);
     }
 
-    private void writeResourceContent(IMarkupWriter writer, URL url,
-            int lineNumber)
+    private void writeResourceContent(IMarkupWriter writer, URL url, int 
lineNumber)
     {
         LineNumberReader reader = null;
 
         try
         {
-            reader = new LineNumberReader(new BufferedReader(
-                    new InputStreamReader(url.openStream())));
+            reader = new LineNumberReader(new BufferedReader( new 
InputStreamReader(url.openStream())));
 
             writer.beginEmpty("br");
             writer.begin("table");
             writer.attribute("class", "location-content");
+            writer.attribute("cellspacing", "0");
+            writer.attribute("cellpadding", "0");
 
             while(true)
             {
                 String line = reader.readLine();
 
-                if (line == null) break;
+                if (line == null)
+                    break;
 
                 int currentLine = reader.getLineNumber();
 
-                if (currentLine > lineNumber + RANGE) break;
+                if (currentLine > lineNumber + RANGE)
+                    break;
 
-                if (currentLine < lineNumber - RANGE) continue;
+                if (currentLine < lineNumber - RANGE)
+                    continue;
 
                 writer.begin("tr");
 
                 if (currentLine == lineNumber)
                     writer.attribute("class", "target-line");
-
+                
                 writer.begin("td");
                 writer.attribute("class", "line-number");
                 writer.print(currentLine);
                 writer.end();
 
                 writer.begin("td");
+
+                // pretty print tabs and spaces properly
+                
+                String spacers = extractWhitespaceStart(line);
+
+                if (spacers != null && spacers.length() > 0)
+                {
+                    writer.printRaw(spacers);
+                }
+
                 writer.print(line);
                 writer.end("tr");
                 writer.println();
@@ -118,11 +129,48 @@
         }
     }
 
+    /**
+     * Finds any tab or whitespace characters in the beginning of this string 
- up
+     * to the first occurrence of normal character data and returns it.
+     *
+     * @param input The string to extract whitespace/tab characters from.
+     *
+     * @return The whitespace/tab characters found, or null if none found.
+     */
+    String extractWhitespaceStart(String input)
+    {
+        if (input == null || input.length() < 1)
+            return null;
+
+        char[] vals = input.toCharArray();
+        StringBuffer ret = new StringBuffer();
+        
+        for (int i=0; i < vals.length; i++)
+        {
+            if (Character.isWhitespace(vals[i]))
+            {
+                ret.append("&nbsp;");
+                continue;
+            }
+
+            if (vals[i] == '\t')
+            {
+                ret.append("&nbsp;&nbsp;");
+                continue;
+            }
+
+            break;
+        }
+        
+        return ret.toString();
+    }
+
     private void close(Reader reader)
     {
         try
         {
-            if (reader != null) reader.close();
+            if (reader != null)
+                reader.close();
         }
         catch (IOException ex)
         {

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/ExceptionPresenterImpl.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/ExceptionPresenterImpl.java?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/ExceptionPresenterImpl.java
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/ExceptionPresenterImpl.java
 Tue Oct 30 13:53:55 2007
@@ -52,14 +52,12 @@
             // Worst case scenario. The exception page itself is broken, 
leaving
             // us with no option but to write the cause to the output.
 
-            _requestExceptionReporter.reportRequestException(ErrorMessages
-                    .unableToProcessClientRequest(cause), cause);
+            
_requestExceptionReporter.reportRequestException(ErrorMessages.unableToProcessClientRequest(cause),
 cause);
 
             // Also, write the exception thrown when redendering the exception
             // page, so that can get fixed as well.
 
-            _requestExceptionReporter.reportRequestException(ErrorMessages
-                    .unableToPresentExceptionPage(ex), ex);
+            
_requestExceptionReporter.reportRequestException(ErrorMessages.unableToPresentExceptionPage(ex),
 ex);
 
             // And throw the exception.
 
@@ -67,8 +65,7 @@
         }
 
         if (_verbose)
-            _requestExceptionReporter.reportRequestException(ErrorMessages
-                    .unableToProcessClientRequest(cause), cause);
+            
_requestExceptionReporter.reportRequestException(ErrorMessages.unableToProcessClientRequest(cause),
 cause);
     }
 
     public void setExceptionPageName(String exceptionPageName)

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/RequestExceptionReporterImpl.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/RequestExceptionReporterImpl.java?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/RequestExceptionReporterImpl.java
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/error/RequestExceptionReporterImpl.java
 Tue Oct 30 13:53:55 2007
@@ -44,8 +44,7 @@
     {
         _log.warn(message, cause);
 
-        System.err
-                
.println("\n\n**********************************************************\n\n");
+        
System.err.println("\n\n**********************************************************\n\n");
 
         System.err.println(message);
 
@@ -60,8 +59,7 @@
 
         new ExceptionAnalyzer().reportException(cause, System.err);
 
-        System.err
-                
.println("\n**********************************************************\n");
+        
System.err.println("\n**********************************************************\n");
     }
 
 }

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.html
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.html?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.html
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.html
 Tue Oct 30 13:53:55 2007
@@ -30,7 +30,7 @@
                <tr jwcid="$remove$" class="odd">
                        <th>Property Name 4:</th>
                        <td>Property Value 4</td>
-               </tr>           
+               </tr>
                
                <tr jwcid="ifNotLast"> <td colspan="2"> &nbsp; </td> </tr>
 

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.java?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.java
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.java
 Tue Oct 30 13:53:55 2007
@@ -14,13 +14,14 @@
 
 package org.apache.tapestry.html;
 
-import java.util.List;
 import org.apache.tapestry.BaseComponent;
 import org.apache.tapestry.IMarkupWriter;
 import org.apache.tapestry.IRequestCycle;
 import org.apache.tapestry.bean.EvenOdd;
 import org.apache.tapestry.util.exception.ExceptionDescription;
 
+import java.util.List;
+
 /**
  * Component used to display an already formatted exception. [ <a
  * href="../../../../../ComponentReference/ExceptionDisplay.html">Component
@@ -95,7 +96,8 @@
             return false;
         
         String trace = getTrace();
-        for (int i=0; i<packages.size(); i++) {
+        for (int i=0; i<packages.size(); i++)
+        {
             if (trace.startsWith((String)packages.get(i)))
                 return true;
         }
@@ -103,7 +105,8 @@
         return false;
     }
     
-    public String getStackClass() {
+    public String getStackClass()
+    {
         return isInPackage() ? "stackSelected" : null;
     }
 }

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.jwc
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.jwc?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.jwc
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/ExceptionDisplay.jwc
 Tue Oct 30 13:53:55 2007
@@ -63,7 +63,6 @@
   </component>
   
   <component id="eProperty" type="For">
-       <binding name="element" value="literal:tr"/>
        <binding name="class" value="beans.evenOdd.next"/>
     <binding name="source" value="exception.properties"/>
     <binding name="value" value="property"/>

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.css
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.css?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.css
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.css
 Tue Oct 30 13:53:55 2007
@@ -1,24 +1,13 @@
 P  {}
-
 H1  {}
-
 H2  {}
-
 H3  {}
-
 A  {}
-
 A:Visited  {}
-
 A:Active  {}
-
 A:Hover  {}
 
-BODY  {
-    margin:0;
-    padding:0;
-}
-
+BODY  { margin:0; padding:0;}
 body, td, th {
     font-family: Lucida Grande, Tahoma, Verdana, Arial, sans-serif;
     font-size: 13px;
@@ -28,77 +17,28 @@
 h2 { font: 1.4em Tahoma, Myriad, sans-serif; font-weight:bold; color: #296cb5; 
padding-bottom:0; }
 h3 { font: 0.8em Tahoma, Myriad, sans-serif; font-weight:bold; color: #296cb5; 
padding-bottom:0; }
 
-TABLE.exception-display TR.even  {
-       top : auto;
-}
-
-TABLE.exception-display TR.odd  {
-       top : auto;
-       background-color : #F6F6F6;
-}
-
-TABLE.exception-display TH  {
-       text-align : right;
-       font-weight : bold;
-}
-
-TABLE.exception-display TD  {
-       text-align : left;
-       width : 100%;   
-}
-
-TABLE.exception-display TR.stack-trace TD  {
-       font-size : small;
-        font-family: terminal,monospace;
-       text-align : left;
-}
-
-SPAN.exception-header  {
-       font-size : large;
-       font-weight : bold;
-       color : Red;
-}
-
-SPAN.exception-top {
-    display:block;
-    background: #efefef;
-    border-bottom: 2px solid #215E8A;
-    padding:0.4em;
-}
-
-SPAN.exception-message {
-       font-weight: bold;
-}
-
-SPAN.exception-block, DIV.displayBlock {
-    margin:5px;
-    display:block;
-    border:1px solid #ccf;
-    padding:6px;
-    background:#f9f9f9;    
-}
+TABLE.exception-display TR.even th { top : auto;}
+TABLE.exception-display TR.odd th { top : auto; background-color : #F6F6F6;}
+TABLE.exception-display TH  { text-align : right; font-weight : bold;}
+TABLE.exception-display TD  { text-align : left; width : 100%; }
+TABLE.exception-display TR.stack-trace TD  { font-size : small; font-family: 
terminal,monospace; text-align : left;}
+
+SPAN.exception-header  { font-size : large; font-weight : bold; color : Red;}
+SPAN.exception-top { display:block; background: #efefef; border-bottom: 2px 
solid #215E8A; padding:0.4em;}
+SPAN.exception-message {font-weight: bold;}
+SPAN.exception-block, DIV.displayBlock { margin:5px; display:table; width: 
98%; border:1px solid #ccf; padding:6px; background:#f9f9f9;}
 
-UL  {
-       margin-top : 0;
-       margin-bottom : 0;
-       margin-left : 20px;
-        list-style: none;
-}
+.stack-trace * UL { margin: 0 0 20px 0; list-style: none;}
+.stack-trace * ul li { background-color: white;}
 
 TABLE.exception-display TR.exception-name TD  {
        font-size : larger;
        font-weight : bold;
        text-align : center;
-       /*background-color : Blue;
-       color : White;*/
-}
-
-TABLE.exception-display  {
-       width : 100%;
-       margin:0;
-       padding:0;
+       background-color : #3391D4;
+       color : White;
 }
-
+TABLE.exception-display  { width : 100%; margin:0; padding:0;}
 TABLE.exception-display TR.exception-message TD  {
        border-width : 1px;
        border-color : Black;
@@ -107,7 +47,6 @@
        text-align : left;
        font-style : italic;
 }
-
 TABLE.exception-display TR.strack-trace-label TD  {
        margin : 2px;
        border-width : 1px;
@@ -116,74 +55,20 @@
        text-align : center;
 }
 
-TABLE.location-content
-{
-  border: 1px solid black;
-}
-
-TABLE.location-content TR.target-line TD
-{
-  background-color: yellow;
-}
-
-TABLE.location-content TR
-{
-  padding: 0;
-  margin: 0;
-}
-
-TABLE.location-content TD.line-number
-{
-  width: 1px; /* Minimum; will expand to fit line numbers.*/
-  align: right;
-  border-right: 1px dotted grey;
-}
-
-TABLE.location-content TD
-{
-  font-family: terminal,monospace;
-  font-size: 10pt;
-  padding: 0;
-  margin: 0;
-}
-
-DIV.described-object-title
-{
-  font-size: large;
-  font-weight: bold;
-  /*color: white;
-  background-color: blue;*/
-}
-
-TABLE.described-object
-{
-  border: 1px solid black;
-  width: 100%;
-  margin-bottom: 15px;
-}
-
-TABLE.described-object TR.section TH
-{
-  /*color: white;
-  background-color: blue;*/
-  text-align: center;
-}
-
-TABLE.described-object TH
-{
-  text-align: right;
-  width: 1px; /* Will stretch to fit. */
-}
-
-TABLE.described-object TR.even
-{
-  background-color: white;
-}
-
-TABLE.described-object TR.odd
-{
-  background-color: #eee;
-}
+TABLE.location-content { border: 1px solid black;}
+TABLE.location-content .target-line TD { background-color: yellow;}
+TABLE.location-content TR { padding: 0; margin: 0;}
+TABLE.location-content TD.line-number { width: 1px; padding: 0 2px; 
background-color: #2A76AD; text-align: right; border-right: 1px dotted gray; 
color: #F6F6F6;}
+TABLE.location-content TD { font-family: terminal,monospace; font-size: 10pt; 
padding: 1px 0 1px 7px; margin: 0; background-color: white; }
+
+DIV.described-object-title { font-size: large; font-weight: bold; }
+TABLE.described-object { border: 1px solid black; width: 100%; margin-bottom: 
15px;}
+TABLE.described-object TR.section TH { text-align: center; color: #215E8A;}
+TABLE.described-object TH { text-align: right; width: 30%;}
+TABLE.described-object TD { padding-left: 2px;}
+TABLE.described-object TR.even { background-color: white; }
+TABLE.described-object TR.odd { background-color: #eee;}
+TABLE.described-object td, TABLE.described-object th { padding: 1px 0; }
 
 a.toggle {
     text-decoration:none;
@@ -195,13 +80,5 @@
     font-size: 12px;
     padding: 10px;
 }
-
-a.toggleSelected, a.toggle:hover {
-    /*background:#EDCC5F;*/
-    background:#DDD;
-}
-
-.stackSelected {
-    color:green;
-    text-decoration:underline;    
-}
+a.toggleSelected, a.toggle:hover { background:#DDD; }
+.stackSelected { color:green; text-decoration: underline;}

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.html
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.html?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.html
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.html
 Tue Oct 30 13:53:55 2007
@@ -14,8 +14,7 @@
    limitations under the License.
 -->
 <span jwcid="$content$">
-<html jwcid="@Shell" title="Exception" stylesheet="asset:stylesheet" 
-         disableCaching="true" doctype="ognl:''">
+<html jwcid="@Shell" title="Exception" stylesheet="asset:stylesheet"  
disableCaching="true" doctype="ognl:''">
 <body>
 
 <span jwcid="@If" condition="ognl:dynamic" renderTag="false">

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.java?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.java
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/pages/Exception.java
 Tue Oct 30 13:53:55 2007
@@ -61,13 +61,15 @@
         String comps = namespace.getPropertyValue(getComponentPackages());
         
         StringBuffer sb = new StringBuffer();
-        if (pages!=null)
+        if (pages != null)
         {
             sb.append(pages);
+
             if (comps!=null)
                 sb.append(",");
         }
-        if (comps!=null)
+        
+        if (comps != null)
             sb.append(comps);
 
         return TapestryUtils.split(sb.toString(), ',');

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/exception/ExceptionAnalyzer.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/exception/ExceptionAnalyzer.java?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/exception/ExceptionAnalyzer.java
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/util/exception/ExceptionAnalyzer.java
 Tue Oct 30 13:53:55 2007
@@ -18,12 +18,7 @@
 import java.beans.IntrospectionException;
 import java.beans.Introspector;
 import java.beans.PropertyDescriptor;
-import java.io.CharArrayWriter;
-import java.io.IOException;
-import java.io.LineNumberReader;
-import java.io.PrintStream;
-import java.io.PrintWriter;
-import java.io.StringReader;
+import java.io.*;
 import java.lang.reflect.Method;
 import java.util.ArrayList;
 import java.util.List;
@@ -87,7 +82,6 @@
         Throwable thrown = exception;
         try
         {
-
             while (thrown != null)
             {
                 thrown = buildDescription(thrown);
@@ -201,11 +195,9 @@
 
         properties = new ExceptionProperty[propertyDescriptions.size()];
 
-        ExceptionProperty[] propArray = (ExceptionProperty[]) 
propertyDescriptions
-                .toArray(properties);
+        ExceptionProperty[] propArray = (ExceptionProperty[]) 
propertyDescriptions.toArray(properties);
 
-        description = new ExceptionDescription(exceptionClass.getName(), 
message, propArray,
-                stackTrace);
+        description = new ExceptionDescription(exceptionClass.getName(), 
message, propArray, stackTrace);
 
         exceptionDescriptions.add(description);
 
@@ -403,7 +395,9 @@
                     stream.println(stackTrace[j]);
             }
             else
+            {
                 stream.println();
+            }
         }
     }
 

Modified: 
tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/describe/TestLocationRenderStrategy.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/describe/TestLocationRenderStrategy.java?rev=590460&r1=590459&r2=590460&view=diff
==============================================================================
--- 
tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/describe/TestLocationRenderStrategy.java
 (original)
+++ 
tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/describe/TestLocationRenderStrategy.java
 Tue Oct 30 13:53:55 2007
@@ -14,19 +14,18 @@
 
 package org.apache.tapestry.describe;
 
-import static org.easymock.EasyMock.checkOrder;
-import static org.easymock.EasyMock.expect;
-
-import java.net.URL;
-
 import org.apache.hivemind.Location;
 import org.apache.hivemind.Resource;
 import org.apache.hivemind.impl.LocationImpl;
 import org.apache.hivemind.util.URLResource;
 import org.apache.tapestry.IMarkupWriter;
 import org.apache.tapestry.IRequestCycle;
+import static org.easymock.EasyMock.checkOrder;
+import static org.easymock.EasyMock.expect;
 import org.testng.annotations.Test;
 
+import java.net.URL;
+
 /**
  * Tests for [EMAIL PROTECTED] 
org.apache.tapestry.describe.LocationRenderStrategy}.
  * 
@@ -60,6 +59,8 @@
         writer.beginEmpty("br");
         writer.begin("table");
         writer.attribute("class", "location-content");
+        writer.attribute("cellspacing", "0");
+        writer.attribute("cellpadding", "0");
 
         for (int i = 0; i < lines.length; i++)
         {


Reply via email to