You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2014/05/20 12:12:29 UTC
svn commit: r1596179 -
/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java
Author: lu4242
Date: Tue May 20 10:12:29 2014
New Revision: 1596179
URL: http://svn.apache.org/r1596179
Log:
MYFACES-3893 NullPointerException in ErrorPageWriter._writeAttributes [Line 1304] (thanks to Fabio for provide this patch)
Modified:
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java?rev=1596179&r1=1596178&r2=1596179&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java Tue May 20 10:12:29 2014
@@ -1286,52 +1286,55 @@ public final class ErrorPageWriter
&& Arrays.binarySearch(IGNORE, pd[i].getName()) < 0)
{
m = pd[i].getReadMethod();
- try
+ if (m != null)
{
- // first check if the property is a ValueExpression
- valueExpression = c.getValueExpression(pd[i].getName());
- if (valueExpressionValues && valueExpression != null)
+ try
{
- String expressionString = valueExpression.getExpressionString();
- if (null == expressionString)
+ // first check if the property is a ValueExpression
+ valueExpression = c.getValueExpression(pd[i].getName());
+ if (valueExpressionValues && valueExpression != null)
{
- expressionString = "";
- }
- _writeAttribute(writer, pd[i].getName(), expressionString);
- }
- else
- {
- v = m.invoke(c, null);
- if (v != null)
- {
- if (v instanceof Collection || v instanceof Map || v instanceof Iterator)
- {
- continue;
- }
- if (v instanceof Expression)
- {
- str = ((Expression)v).getExpressionString();
- }
- else if (v instanceof ValueBinding)
- {
- str = ((ValueBinding) v).getExpressionString();
- }
- else if (v instanceof MethodBinding)
+ String expressionString = valueExpression.getExpressionString();
+ if (null == expressionString)
{
- str = ((MethodBinding) v).getExpressionString();
+ expressionString = "";
}
- else
+ _writeAttribute(writer, pd[i].getName(), expressionString);
+ }
+ else
+ {
+ v = m.invoke(c, null);
+ if (v != null)
{
- str = v.toString();
- }
+ if (v instanceof Collection || v instanceof Map || v instanceof Iterator)
+ {
+ continue;
+ }
+ if (v instanceof Expression)
+ {
+ str = ((Expression)v).getExpressionString();
+ }
+ else if (v instanceof ValueBinding)
+ {
+ str = ((ValueBinding) v).getExpressionString();
+ }
+ else if (v instanceof MethodBinding)
+ {
+ str = ((MethodBinding) v).getExpressionString();
+ }
+ else
+ {
+ str = v.toString();
+ }
- _writeAttribute(writer, pd[i].getName(), str);
+ _writeAttribute(writer, pd[i].getName(), str);
+ }
}
}
- }
- catch (Exception e)
- {
- // do nothing
+ catch (Exception e)
+ {
+ // do nothing
+ }
}
}
}