dev@javaserverfaces.java.net

Review: Fix for JSFRI 92

From: Jayashri Visvanathan <Jayashri.Visvanathan_at_Sun.COM>
Date: Thu, 24 Feb 2005 18:21:40 -0800

M src/com/sun/faces/application/ApplicationImpl.java
M src/com/sun/faces/renderkit/html_basic/HtmlBasicRenderer.java
M src/com/sun/faces/taglib/jsf_core/ViewTag.java
M src/com/sun/faces/util/Util.java
  For for jsfri-92. Don't swallow exceptions inside JspExceptions
  or FacesExceptions.

M systest/src/com/sun/faces/methodref/MethodRefTestCase.java
  uncomment link.click() clal since it works in HtmlUnit 1.4

All tests pass. I've also attached the change bundle to the issue.


Index: src/com/sun/faces/application/ApplicationImpl.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-ri/src/com/sun/faces/application/ApplicationImpl.java,v
retrieving revision 1.56
diff -u -r1.56 ApplicationImpl.java
--- src/com/sun/faces/application/ApplicationImpl.java 30 Nov 2004 21:36:56 -0000 1.56
+++ src/com/sun/faces/application/ApplicationImpl.java 25 Feb 2005 02:07:12 -0000
@@ -678,9 +678,7 @@
                     assert (clazz != null);
                     map.put(key, clazz);
                 } catch (Throwable t) {
- Object[] params = {t.getMessage()};
- throw new FacesException(Util.getExceptionMessageString(
- Util.CANT_LOAD_CLASS_ERROR_MESSAGE_ID, params));
+ throw new FacesException(t.getMessage(), t);
                 }
             } else {
                 clazz = (Class) value;
Index: src/com/sun/faces/renderkit/html_basic/HtmlBasicRenderer.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-ri/src/com/sun/faces/renderkit/html_basic/HtmlBasicRenderer.java,v
retrieving revision 1.88
diff -u -r1.88 HtmlBasicRenderer.java
--- src/com/sun/faces/renderkit/html_basic/HtmlBasicRenderer.java 14 Dec 2004 21:08:55 -0000 1.88
+++ src/com/sun/faces/renderkit/html_basic/HtmlBasicRenderer.java 25 Feb 2005 02:07:12 -0000
@@ -517,7 +517,7 @@
             } catch (IOException e) {
                 if (log.isDebugEnabled()) {
                     // PENDING I18N
- log.debug("Can't write ID attribute" + e.getMessage());
+ log.debug("Can't write ID attribute" + e);
                 }
             }
         }
Index: src/com/sun/faces/taglib/jsf_core/ViewTag.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-ri/src/com/sun/faces/taglib/jsf_core/ViewTag.java,v
retrieving revision 1.29
diff -u -r1.29 ViewTag.java
--- src/com/sun/faces/taglib/jsf_core/ViewTag.java 8 Dec 2004 15:10:26 -0000 1.29
+++ src/com/sun/faces/taglib/jsf_core/ViewTag.java 25 Feb 2005 02:07:12 -0000
@@ -144,7 +144,7 @@
         try {
             writer.startDocument();
         } catch (IOException e) {
- throw new JspException(e.getMessage());
+ throw new JspException(e);
         }
         return rc;
     }
@@ -235,7 +235,7 @@
         try {
             writer.endDocument();
         } catch (IOException e) {
- throw new JspException(e.getMessage());
+ throw new JspException(e);
         }
 
         // store the response character encoding
Index: src/com/sun/faces/util/Util.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-ri/src/com/sun/faces/util/Util.java,v
retrieving revision 1.151
diff -u -r1.151 Util.java
--- src/com/sun/faces/util/Util.java 16 Dec 2004 17:56:39 -0000 1.151
+++ src/com/sun/faces/util/Util.java 25 Feb 2005 02:07:12 -0000
@@ -1148,9 +1148,9 @@
         if (className != null) {
             try {
                 clazz = Util.loadClass(className, returnObject);
- if (clazz != null) {
-// Look for an adapter constructor if we've got
-// an object to adapt
+ if (clazz != null) {
+ // Look for an adapter constructor if we've got
+ // an object to adapt
                     if ((rootType != null) && (root != null)) {
                         try {
                             Class[] parameterTypes = new Class[]{rootType};
@@ -1159,7 +1159,7 @@
                             Object[] parameters = new Object[]{root};
                             returnObject = construct.newInstance(parameters);
                         } catch (NoSuchMethodException nsme) {
-// OK - there's no adapter constructor
+ // OK - there's no adapter constructor
                         }
                     }
 
@@ -1173,8 +1173,7 @@
                 String msg = Util.getExceptionMessageString(
                     Util.CANT_INSTANTIATE_CLASS_ERROR_MESSAGE_ID, params);
                 if (log.isErrorEnabled()) {
- log.error(msg + ":" + className + ":exception:" +
- e.getMessage());
+ log.error(msg + ":" + className + ":exception:" + e);
                 }
             }
         }
Index: systest/src/com/sun/faces/methodref/MethodRefTestCase.java
===================================================================
RCS file: /cvs/javaserverfaces-sources/jsf-ri/systest/src/com/sun/faces/methodref/MethodRefTestCase.java,v
retrieving revision 1.10
diff -u -r1.10 MethodRefTestCase.java
--- systest/src/com/sun/faces/methodref/MethodRefTestCase.java 12 May 2004 04:35:06 -0000 1.10
+++ systest/src/com/sun/faces/methodref/MethodRefTestCase.java 25 Feb 2005 02:07:13 -0000
@@ -103,11 +103,7 @@
         link = (HtmlAnchor) page.getAnchors().get(0);
 
         // press button2
- // page = (HtmlPage) link.click(); // htmlunit 1.2.3 bug
- page =
- getPage(
- "/faces/methodref01.jsp?form:" + UIViewRoot.UNIQUE_ID_PREFIX +
- "cl"+ "=form:button2&form=form");
+ page = (HtmlPage) link.click();
         assertNotNull(page);
         form = getFormById(page, "form");
         input = (HtmlTextInput)