vendredi 18 septembre 2015

Can't open ressource file in Arquillian test

I want to read a test CSV file (xxx.csv) in my integration test using arquillian. I am packing my archive as follows:

@Deployment
public static WebArchive createDeployment() {
    WebArchive archive = ShrinkWrap.create(WebArchive.class);
    archive.addClasses(FileReader.class, FileWriteService.class, MockDataFactory.class, CSVFileReader.class, ExcelFileReader.class);
    archive.addAsResource("config.properties").addAsResource("xxx.csv");
    System.out.println(archive.toString(true));
    return archive;
}

Where the print shows me:

> 7fadc596-9353-4cac-aacc-cf5ec5d94c16.war: /WEB-INF/
> /WEB-INF/classes/ /WEB-INF/classes/config.properties
> /WEB-INF/classes/com/ /WEB-INF/classes/com/goodgamestudios/
> /WEB-INF/classes/com/goodgamestudios/icosphere/
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/fileReader/
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/fileReader/CSVFileReader.class
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/fileReader/ExcelFileReader$SheetHandler.class
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/fileReader/ExcelFileReader.class
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/fileReader/ExcelFileReader$xssfDataType.class
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/fileReader/ExcelFileReader$1.class
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/fileReader/FileReader.class
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/fileWriter/
> /WEB-INF/classes/com/goodgamestudios/icosphere/service/fileWriter/FileWriteService.class
> /WEB-INF/classes/com/goodgamestudios/icosphere/datamodel/
> /WEB-INF/classes/com/goodgamestudios/icosphere/datamodel/MockData/
> /WEB-INF/classes/com/goodgamestudios/icosphere/datamodel/MockData/MockDataFactory.class
> /WEB-INF/classes/xxx.csv

As you can see, the file is clearly in the archive (last row).

Now I am trying to open it. I have tried:

private File getFile(String filename) throws IOException {
    return convertInputStreamToFileHelper(getClass().getResourceAsStream(filename), filename);
}


new File(this.getClass().getResource("/xxx.csv").getFile()


new File("/xxx.csv")


new File("xxx.csv")


but none would work.



from Newest questions tagged java - Stack Overflow http://ift.tt/1P6S5Jj
via IFTTT

Aucun commentaire:

Enregistrer un commentaire