Buggy code:
defaultLetter . setName ( letterName ) ; defaultLetter . setDescription ( letterDescription ) ; defaultLetter . setPeriode ( letterFrequence ) ; infoLetterSC . updateInfoLetter ( defaultLetter ) ; destination = setMainContext ( infoLetterSC , request ) ; } else if ( function . startsWith ( "Emails" ) ) { InfoLetter defaultLetter = getCurrentLetter ( infoLetterSC ) ; Set < String > listEmails = infoLetterSC . getEmailsExternalsSuscribers ( defaultLetter . getPK ( ) ) ; request . setAttribute ( "listEmails" , listEmails ) ; destination = "emailsManager.jsp" ; } else if ( function . startsWith ( "SuscribeMe" ) ) { infoLetterSC . suscribeUser ( ) ; destination = setMainContext ( infoLetterSC , request ) ; } else if ( function . startsWith ( "UnsuscribeMe" ) ) { infoLetterSC . unsuscribeUser ( ) ; destination = setMainContext ( infoLetterSC , request ) ; } else if ( function . startsWith ( "DeleteEmails" ) ) { String [ ] emails = request . getParameterValues ( "mails" ) ; InfoLetter defaultLetter = getCurrentLetter ( infoLetterSC ) ; if ( emails != null ) { infoLetterSC . deleteExternalsSuscribers ( defaultLetter . getPK ( ) , emails ) ; } Set < String > listEmails = infoLetterSC . getEmailsExternalsSuscribers ( defaultLetter . getPK ( ) ) ; request . setAttribute ( "listEmails" , listEmails ) ; destination = "emailsManager.jsp" ; } else if ( function . startsWith ( "DeleteAllEmails" ) ) { InfoLetter defaultLetter = getCurrentLetter ( infoLetterSC ) ; infoLetterSC . deleteAllExternalsSuscribers ( defaultLetter . getPK ( ) ) ; Set < String > listEmails = infoLetterSC . getEmailsExternalsSuscribers ( defaultLetter . getPK ( ) ) ; request . setAttribute ( "listEmails" , listEmails ) ; destination = "emailsManager.jsp" ; } else if ( function . startsWith ( "AddMail" ) ) { destination = "addEmail.jsp" ; } else if ( function . startsWith ( "NewMail" ) ) { String newmails = param ( request , "newmails" ) ; InfoLetter defaultLetter = getCurrentLetter ( infoLetterSC ) ; infoLetterSC . addExternalsSuscribers ( defaultLetter . getPK ( ) , newmails ) ; Set < String > listEmails = infoLetterSC . getEmailsExternalsSuscribers ( defaultLetter . getPK ( ) ) ; request . setAttribute ( "listEmails" , listEmails ) ; destination = "emailsManager.jsp" ; } else if ( function . startsWith ( "Suscribers" ) ) { destination = infoLetterSC . initUserPanel ( ) ; } else if ( function . startsWith ( "RetourPanel" ) ) { infoLetterSC . retourUserPanel ( ) ; destination = setMainContext ( infoLetterSC , request ) ; } else if ( function . equals ( "ViewTemplate" ) ) { request . setAttribute ( "InfoLetter" , getCurrentLetter ( infoLetterSC ) ) ; destination = "template.jsp" ; } else if ( function . startsWith ( "searchResult" ) ) { String id = request . getParameter ( "Id" ) ; String type = request . getParameter ( "Type" ) ; if ( type . equals ( "Lettre" ) ) { destination = setMainContext ( infoLetterSC , request ) ; } else { if ( id == null ) { id = "" ; } if ( ! ( id . isEmpty ( ) ) ) { IdPK publiPK = new IdPK ( ) ; publiPK . setId ( id ) ; InfoLetterPublicationPdC ilp = infoLetterSC . getInfoLetterPublication ( publiPK ) ; request . setAttribute ( "parution" , id ) ; request . setAttribute ( "parutionTitle" , ilp . getTitle ( ) ) ; destination = "viewLetter.jsp" ; } else { destination = setMainContext ( infoLetterSC , request ) ; } } } else if ( function . startsWith ( "ImportEmailsCsv" ) ) { FileItem fileItem = request . getSingleFile ( ) ; infoLetterSC . importCsvEmails ( fileItem ) ; destination = "importEmailsCsv.jsp?Result=OK" ; } else if ( function . equals ( "ExportEmailsCsv" ) ) { boolean exportOk = infoLetterSC . exportCsvEmails ( ) ; request . setAttribute ( "ExportOk" , Boolean . toString ( exportOk ) ) ; if ( exportOk ) { <START_BUG> request . setAttribute ( "EmailCsvName" , ( ( getCurrentLetter ( infoLetterSC ) . getName ( ) ) + ( InfoLetterSessionController . EXPORT_CSV_NAME ) ) ) ; <END_BUG> } destination = "exportEmailsCsv.jsp" ; } else if ( function . startsWith ( "SendLetterToManager" ) ) { String parution = param ( request , "parution" ) ; String [ ] emailErrors = new String [ 0 ] ; if ( StringUtil . isDefined ( parution ) ) { IdPK publiPK = new IdPK ( ) ; publiPK . setId ( parution ) ; InfoLetterPublicationPdC ilp = infoLetterSC . getInfoLetterPublication ( publiPK ) ; String server = request . getRequestURL ( ) . substring ( 0 , request . getRequestURL ( ) . toString ( ) . indexOf ( URLManager . getApplicationURL ( ) ) ) ; emailErrors = infoLetterSC . notifyManagers ( ilp , server ) ; } request . setAttribute ( "SpaceId" , infoLetterSC . getSpaceId ( ) ) ; request . setAttribute ( "SpaceName" , infoLetterSC . getSpaceLabel ( ) ) ; request . setAttribute ( "ComponentId" , infoLetterSC . getComponentId ( ) ) ; request . setAttribute ( "ComponentName" , infoLetterSC . getComponentLabel ( ) ) ; request . setAttribute ( "EmailErrors" , emailErrors ) ; request . setAttribute ( "ReturnUrl" , ( ( ( request . getParameter ( "ReturnUrl" ) ) + "?parution=" ) + parution ) ) ; destination = "infoLetterSended.jsp" ; } else { destination = function ; } if ( ! ( function . startsWith ( "Suscribers" ) ) ) { destination = "//infoLetter//jsp//" + destination ; } } catch ( Exception e ) { request . setAttribute ( "javax.servlet.jsp.jspException" , e ) ; destination = "//admin//jsp//errorpageMain.jsp" ; } SilverTrace . info ( "infoLetter" , "infoLetterRequestRouter.getDestination()" , "root.MSG_GEN_PARAM_VALUE" , ( "Destination=" + destination ) ) ; return destination ; } private String getFlag ( String [ ] profiles ) { } private String param ( HttpServletRequest request , String name ) { } }

Fix:
request . setAttribute ( "EmailCsvName" , ( ( infoLetterSC . getComponentId ( ) ) + ( InfoLetterSessionController . EXPORT_CSV_NAME ) ) ) ;