Buggy code:
public class CrawlJob implements Comparable < CrawlJob > , ApplicationListener < ApplicationEvent > { private static final Logger LOGGER = Logger . getLogger ( CrawlJob . class . getName ( ) ) ; File primaryConfig ; PathSharingContext ac ; int launchCount ; boolean isLaunchInfoPartial ; DateTime lastLaunch ; AlertThreadGroup alertThreadGroup ; DateTime xmlOkAt = new DateTime ( 0L ) ; Logger jobLogger ; public CrawlJob ( File cxml ) { } public File getPrimaryConfig ( ) { } public File getJobDir ( ) { } public String getShortName ( ) { } public File getJobLog ( ) { } public synchronized PathSharingContext getJobContext ( ) { } public boolean isLaunchInfoPartial ( ) { } public Logger getJobLogger ( ) { } public DateTime getLastLaunch ( ) { } public int getLaunchCount ( ) { } protected void scanJobLog ( ) { } public boolean isProfile ( ) { } public void writeHtmlTo ( PrintWriter pw ) { } public void writeHtmlTo ( PrintWriter pw , String uriPrefix ) { } public void checkXML ( ) { } protected Document getDomDocument ( File f ) { } public boolean isXmlOk ( ) { } public synchronized void instantiateContainer ( ) { checkXML ( ) ; if ( ( ac ) == null ) { try { <START_BUG> ac = new PathSharingContext ( new String [ ] { "file:" + ( primaryConfig . getAbsolutePath ( ) ) } , false , null ) ; <END_BUG> ac . addApplicationListener ( this ) ; ac . refresh ( ) ; getCrawlController ( ) ; getJobLogger ( ) . log ( Level . INFO , "Job<seq2seq4repair_space>instantiated" ) ; } catch ( BeansException be ) { ac = null ; beansException ( be ) ; } } } protected void beansException ( BeansException be ) { } protected String shortMessage ( BeansException ex ) { } public synchronized boolean hasApplicationContext ( ) { } public synchronized void validateConfiguration ( ) { } public synchronized boolean hasValidApplicationContext ( ) { } public synchronized void launch ( ) { } protected transient Handler currentLaunchJobLogHandler ; protected boolean needTeardown = false ; protected synchronized void startContext ( ) { } public int compareTo ( CrawlJob o ) { } public long getLastActivityTime ( ) { } public synchronized boolean isRunning ( ) { } public synchronized CrawlController getCrawlController ( ) { } public boolean isPausable ( ) { } public boolean isUnpausable ( ) { } public synchronized CheckpointService getCheckpointService ( ) { } public synchronized boolean teardown ( ) { } protected synchronized void doTeardown ( ) { } public class JobLogFormatter extends Formatter { @ Override public String format ( LogRecord record ) { } } @ SuppressWarnings ( "unchecked" ) public List < File > getImportedConfigs ( File xml ) { } @ SuppressWarnings ( "unchecked" ) public synchronized Map < String , ConfigPath > getConfigPaths ( ) { } public String jobDirRelativePath ( File f ) { } public void onApplicationEvent ( ApplicationEvent event ) { } public boolean isLaunchable ( ) { } public int getAlertCount ( ) { } protected StatisticsTracker getStats ( ) { } public Map < String , Number > rateReportData ( ) { } public Object rateReport ( ) { } public Map < String , Number > loadReportData ( ) { } public Object loadReport ( ) { } public Map < String , Long > uriTotalsReportData ( ) { } public String uriTotalsReport ( ) { } public Map < String , Long > sizeTotalsReportData ( ) { } public String sizeTotalsReport ( ) { } public Map < String , Object > elapsedReportData ( ) { } public String elapsedReport ( ) { } public Map < String , Object > threadReportData ( ) { } public String threadReport ( ) { } public Map < String , Object > frontierReportData ( ) { } public String frontierReport ( ) { } public void terminate ( ) { } public Object getBeanpathTarget ( String beanPath ) { } public String getJobStatusDescription ( ) { } }

Fix:
ac = new PathSharingContext ( new String [ ] { primaryConfig . toURI ( ) . toString ( ) } , false , null ) ;