[
http://issues.apache.org/jira/browse/JAMES-295?page=comments#action_12317942 ]
Mark Daring commented on JAMES-295:
-----------------------------------
This logic doesnt detect missing sqldef, it only throws an exception if theres
no sqldef at all.
This will fix it:
Element sectionElement = null;
boolean found = false;
for (int i = 0; i < sectionsCount; i++ ) {
sectionElement = (Element)(sections.item(i));
String sectionName = sectionElement.getAttribute("name");
if ( sectionName != null && sectionName.equals(sqlDefsSection) ) {
found = true;
break;
}
}
if ( !found ) {
StringBuffer exceptionBuffer =
new StringBuffer(64)
.append("Error loading sql definition file. ")
.append("The element named \'")
.append(sqlDefsSection)
.append("\' does not exist.");
throw new RuntimeException(exceptionBuffer.toString());
}
> Missing sqlDefs wont be detected
> --------------------------------
>
> Key: JAMES-295
> URL: http://issues.apache.org/jira/browse/JAMES-295
> Project: James
> Type: Bug
> Versions: 2.2.0
> Reporter: Mark Daring
> Priority: Minor
>
> Starting at line 113 in SQLResources.java
> Elements with tagname "sqlDefs" are scanned for the name of the class we want
> the sql-strings for.
> At line 125 if this element isnt found, by assuming "sectionElement==null",
> an exception is thrown.
> So the question is, how can sectionElement be ever null if the "sqlDef" we
> are looking for isnt in the xml-file?
> For your convenience:
> " ...
> // Now get the section defining sql for the repository required.
> 113 NodeList sections = sqlDoc.getElementsByTagName("sqlDefs");
> 114 int sectionsCount = sections.getLength();
> Element sectionElement = null;
> for (int i = 0; i < sectionsCount; i++ ) {
> sectionElement = (Element)(sections.item(i));
> String sectionName = sectionElement.getAttribute("name");
> if ( sectionName != null && sectionName.equals(sqlDefsSection) ) {
> break;
> }
> }
> 125 if ( sectionElement == null ) {
> StringBuffer exceptionBuffer =
> new StringBuffer(64)
> .append("Error loading sql definition file. ")
> .append("The element named \'")
> .append(sqlDefsSection)
> .append("\' does not exist.");
> throw new RuntimeException(exceptionBuffer.toString());
> }
> ... "
--
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
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]