The following comment has been added to this issue:
Author: Howard M. Lewis Ship
Created: Thu, 10 Jun 2004 3:54 AM
Body:
I especially don't like how JDK 1.4 dumps out the chained exception's stacks. I
prefer what Tapestry does, which makes use of ExceptionAnalyzer to do the same
thing. I expect to move that code from Tapestry to HiveMind and (because
HiveMind is for JDK 1.4) make it work with the improved Exception APIs.
---------------------------------------------------------------------
View this comment:
http://issues.apache.org/jira/browse/HIVEMIND-4?page=comments#action_36011
---------------------------------------------------------------------
View the issue:
http://issues.apache.org/jira/browse/HIVEMIND-4
Here is an overview of the issue:
---------------------------------------------------------------------
Key: HIVEMIND-4
Summary: Enhance logging of exceptions when setting a service property to a
contribution
Type: Improvement
Status: In Progress
Priority: Major
Project: HiveMind
Components:
framework
Versions:
1.0
Assignee: Howard M. Lewis Ship
Reporter: Steve Gibson
Created: Mon, 7 Jun 2004 10:17 AM
Updated: Thu, 10 Jun 2004 3:54 AM
Environment: hivemind-1.0.beta-1-snapshot.jar
Description:
I am guessing the source of the exception for this, so this may be a little
vague.
If an exception is thrown due to a bug in the schema definition or a
contribution to a configuration point, when a service using the affected
configuration point is instantiated, a message of limited usefulness is logged
of the form:
ERROR: <module-id>.<service-id> - Unable to update property <property-name> of
object <service-impl-class.toString()> (at <module-descriptor-url>, line <line
number of set-configuration>): null
To me, that suggests I am getting a NullPointerException somewhere, as I dig
through the source and find in PropertyAdaptor:
try
{
_writeMethod.invoke(target, new Object[] { value });
}
catch (Exception ex)
{
throw new ApplicationRuntimeException(
UtilMessages.writeFailure(_propertyName, target, location, ex),
target,
HiveMind.getLocation(location),
ex);
}
with UtilMessages.writeFailure containing:
return HiveMind.format(
"PropertyAdaptor.write-failure",
new Object[] {
propertyName,
target,
HiveMind.getLocationString(location),
cause.getMessage()});
With a NullPointerException, the cause is null, so perhaps a better approach
would be:
cause.getMessage()!=null?cause.getMessage():cause
I will attach my test code.
I will also investigate the chain of the ApplicationRuntimeException, though
its trace is not being logged.
---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]