Buggy code:
@ Override public List < MovieInfo > parseMovies ( String areaId ) { final MovieInfo movieInfo = new MovieInfo ( ) ; final MovieTrailer movieTrailer = new MovieTrailer ( ) ; final List < MovieInfo > movies = new ArrayList < MovieInfo > ( ) ; RootElement root = new RootElement ( EVENTS ) ; Element event = root . getChild ( EVENT ) ; Element images = event . getChild ( IMAGES ) ; Element videos = event . getChild ( VIDEOS ) ; Element eventVideo = videos . getChild ( EVENT_VIDEO ) ; event . setEndElementListener ( new EndElementListener ( ) { @ Override public void end ( ) { movies . add ( movieInfo . copy ( ) ) ; } } ) ; eventVideo . setEndElementListener ( new EndElementListener ( ) { @ Override public void end ( ) { movieInfo . addMovieTrailer ( movieTrailer . copy ( ) ) ; } } ) ; event . getChild ( ID ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setEventId ( body ) ; } } ) ; event . getChild ( TITLE ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setTitle ( body ) ; } } ) ; event . getChild ( ORIGINAL_TITLE ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setOriginalTitle ( body ) ; } } ) ; event . getChild ( PRODUCTION_YEAR ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setProductionYear ( body ) ; } } ) ; event . getChild ( LENGTH_IN_MINUTES ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setLenghtInMinutes ( body ) ; } } ) ; event . getChild ( DATE_LOCAL_RELEASE ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setDtLocalRelease ( body ) ; } } ) ; event . getChild ( RATING_LABEL ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setRatingLabel ( body ) ; } } ) ; event . getChild ( LOGAL_DISTRIBUTOR_NAME ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setLocalDistributorName ( body ) ; } } ) ; event . getChild ( GLOBAL_DISTRIBUTOR_NAME ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setGlobalDistributorName ( body ) ; } } ) ; event . getChild ( GENRES ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setGenres ( body ) ; } } ) ; event . getChild ( SYNOPSIS ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setSynopsis ( body ) ; } } ) ; images . getChild ( EVENT_SMALL_IMAGE_PORTRAIT ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setEventSmallImagePortrait ( body ) ; } } ) ; images . getChild ( EVENT_LARGE_IMAGE_PORTRAIT ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setEventLargeImagePortrait ( body ) ; } } ) ; images . getChild ( EVENT_SMALL_IMAGE_LANDSCAPE ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setEventSmallImageLandscape ( body ) ; } } ) ; images . getChild ( EVENT_LARGE_IMAGE_LANDSCAPE ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieInfo . setEventLargeImageLandscape ( body ) ; } } ) ; eventVideo . getChild ( TITLE ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { <START_BUG> movieInfo . setTitle ( body ) ; <END_BUG> } } ) ; eventVideo . getChild ( LOCATION ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieTrailer . setLocation ( body ) ; } } ) ; eventVideo . getChild ( THUMBNAIL_LOCATION ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieTrailer . setThumbnailLocation ( body ) ; } } ) ; eventVideo . getChild ( MEDIA_RESOURCE_FORMAT ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieTrailer . setMediaResourceFormat ( body ) ; } } ) ; eventVideo . getChild ( MEDIA_RESOURCE_SUB_TYPE ) . setEndTextElementListener ( new EndTextElementListener ( ) { @ Override public void end ( String body ) { movieTrailer . setMediaResourceSubType ( body ) ; } } ) ; try { StringBuffer urlStringBuffer = new StringBuffer ( BASE_FINN_FINO_URL ) ; urlStringBuffer . append ( EVENTS ) ; if ( areaId != null ) { urlStringBuffer . append ( "?" ) ; urlStringBuffer . append ( PARAM_AREA ) ; urlStringBuffer . append ( "=" ) ; urlStringBuffer . append ( areaId ) ; } URL url = new URL ( urlStringBuffer . toString ( ) ) ; Xml . parse ( this . getInputStream ( url ) , UTF_8 , root . getContentHandler ( ) ) ; } catch ( Exception e ) { throw new RuntimeException ( e ) ; } return movies ; } @ Override public List < TheatreArea > parseAreas ( ) { } @ Override public List < MovieSchedule > parseSchedules ( String areaId , String date , String eventId ) { } }

Fix:
movieTrailer . setTitle ( body ) ;