diff --git a/src/main/java/org/gridsuite/ds/server/DatabaseConfig.java b/src/main/java/org/gridsuite/ds/server/DatabaseConfig.java index 9b720aab..60ad54ed 100644 --- a/src/main/java/org/gridsuite/ds/server/DatabaseConfig.java +++ b/src/main/java/org/gridsuite/ds/server/DatabaseConfig.java @@ -37,10 +37,11 @@ public class DatabaseConfig extends AbstractR2dbcConfiguration { @Override public ConnectionFactory connectionFactory() { String driver = env.getRequiredProperty("driver"); + String schema = env.getProperty("schema", ""); if (driver.equals("h2")) { return new H2ConnectionFactory(H2ConnectionConfiguration.builder() .inMemory(env.getRequiredProperty("database")) - .option("DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE") + .option("DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS " + schema + "\\;SET SCHEMA " + schema) .build()); } else if (driver.equals("postgresql")) { return new PostgresqlConnectionFactory(PostgresqlConnectionConfiguration.builder() @@ -49,7 +50,7 @@ public ConnectionFactory connectionFactory() { .database(env.getRequiredProperty("database")) .username(env.getRequiredProperty("login")) .password(env.getRequiredProperty("password")) - .schema(env.getProperty("schema", "")) + .schema(schema) .build()); } else { throw new DynamicSimulationException(DynamicSimulationException.Type.DATABASE_DRIVER_NOT_FOUND); diff --git a/src/main/java/org/gridsuite/ds/server/DynamicSimulationController.java b/src/main/java/org/gridsuite/ds/server/DynamicSimulationController.java index 99c4114e..e4d3d108 100644 --- a/src/main/java/org/gridsuite/ds/server/DynamicSimulationController.java +++ b/src/main/java/org/gridsuite/ds/server/DynamicSimulationController.java @@ -35,7 +35,7 @@ public DynamicSimulationController(DynamicSimulationService dynamicSimulationSer this.dynamicSimulationService = dynamicSimulationService; } - @PostMapping(value = "/networks/{networkUuid}/run", produces = "application/json") + @PostMapping(value = "/networks/{networkUuid}/run", produces = "application/json", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) @Operation(summary = "run the dynamic simulation") @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "")}) public ResponseEntity> run(@PathVariable("networkUuid") UUID networkUuid, diff --git a/src/main/resources/database.properties b/src/main/resources/database.properties index d68917f9..80e399d1 100644 --- a/src/main/resources/database.properties +++ b/src/main/resources/database.properties @@ -1,6 +1,7 @@ driver=postgresql host=localhost -database=ds +database=gridsuite +schema=ds login=postgres password=postgres port=5432 diff --git a/src/test/resources/database.properties b/src/test/resources/database.properties index 1baa5ae0..156ca122 100644 --- a/src/test/resources/database.properties +++ b/src/test/resources/database.properties @@ -1,2 +1,3 @@ driver=h2 database=my_test_db +schema=ds