You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Joe Freeman (JIRA)" <ji...@codehaus.org> on 2008/04/14 14:35:58 UTC

[jira] Commented: (MECLIPSE-427) .springBeans definition throws NullPointer if BaseDir does not exist

    [ http://jira.codehaus.org/browse/MECLIPSE-427?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=130726#action_130726 ] 

Joe Freeman commented on MECLIPSE-427:
--------------------------------------

The spring definitions file generator should be pulled out of the myeclipse mojo because it doesn't have any MyEclipse dependencies.


> .springBeans definition throws NullPointer if BaseDir does not exist
> --------------------------------------------------------------------
>
>                 Key: MECLIPSE-427
>                 URL: http://jira.codehaus.org/browse/MECLIPSE-427
>             Project: Maven 2.x Eclipse Plugin
>          Issue Type: Bug
>          Components: MyEclipse support
>    Affects Versions: 2.5, 2.5.1
>            Reporter: Joe Freeman
>
> This is related to the fix submitted for MECLIPSE-359
> We have an application with 40 eclipse projects in it.  About  half of them have spring beans and 1/2 don't. The top level pom describes how the eclipse plugin should function and includes the Spring configuration component for the myeclipse target.  A null pointer is thrown when running eclipse:myeclipse when the base dir doesn't exist, in our case in one of the projects that doesn't have any spring components.  Our pom.xml fragment looks like
>                     <spring>
>                         <version>2.0</version>
>                         <file-pattern>*.xml</file-pattern>
>                         <basedir>src/main/resources/conf</basedir>
>                     </spring>
> The exception stack trace looks like
> java.lang.NullPointerException
>         at org.apache.maven.plugin.eclipse.writers.myeclipse.MyEclipseSpringBeansWriter.getConfigurationFilesList(MyEclipseSpringBeansWriter.java:142)
>         at org.apache.maven.plugin.eclipse.writers.myeclipse.MyEclipseSpringBeansWriter.write(MyEclipseSpringBeansWriter.java:93)
> The following code block with the problem throws NullPointer when directory.listFiles() returns a null into subdirs. Wrap the for() loop in a nullcheck
>        try
>         {
>             File directory = new File( basedir );
>             File[] subdirs = directory.listFiles( new FileFilter()
>             {
>                 public boolean accept( File pathname )
>                 {
>                     return pathname.isDirectory();
>                 }
>             } );
>             for ( int i = 0; i < subdirs.length; i++ )
>             {
>                 configFiles.addAll( getConfigurationFilesList( subdirs[i].getPath(), pattern ) );
>             }
>             configFiles.addAll( FileUtils.getFileNames( directory, pattern, null, true ) );
>         }
> Testing:
> Take one of the test cases and remove the directory that is pointed to by the basedir attribute.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira