Skip to content
Snippets Groups Projects

#1070 Fix Invalid XML Validation

Merged Martin Vogel requested to merge bugfix/1070-invalid-xml-validation into main
7 files
+ 498
26
Compare changes
  • Side-by-side
  • Inline
Files
7
@@ -10,7 +10,6 @@ import com.networknt.schema.SpecVersion;
@@ -10,7 +10,6 @@ import com.networknt.schema.SpecVersion;
import com.networknt.schema.ValidationMessage;
import com.networknt.schema.ValidationMessage;
import com.nimbusds.jose.jwk.KeyOperation;
import com.nimbusds.jose.jwk.KeyOperation;
import com.nimbusds.jose.jwk.RSAKey;
import com.nimbusds.jose.jwk.RSAKey;
import com.nimbusds.jose.util.StandardCharset;
import dev.fitko.fitconnect.api.config.ApplicationConfig;
import dev.fitko.fitconnect.api.config.ApplicationConfig;
import dev.fitko.fitconnect.api.domain.model.destination.Destination;
import dev.fitko.fitconnect.api.domain.model.destination.Destination;
import dev.fitko.fitconnect.api.domain.model.destination.DestinationService;
import dev.fitko.fitconnect.api.domain.model.destination.DestinationService;
@@ -254,10 +253,18 @@ public class DefaultValidationService implements ValidationService {
@@ -254,10 +253,18 @@ public class DefaultValidationService implements ValidationService {
// https://docs.fitko.de/fit-connect/docs/receiving/verification/#syntax-validierung-1
// https://docs.fitko.de/fit-connect/docs/receiving/verification/#syntax-validierung-1
if (data.getSubmissionSchema().getMimeType().equals(MimeType.APPLICATION_JSON)) {
if (data.getSubmissionSchema().getMimeType().equals(MimeType.APPLICATION_JSON)) {
final ValidationResult jsonValidation = validateJsonFormat(new String(decryptedData, StandardCharsets.UTF_8));
 
final String jsonData = new String(decryptedData, StandardCharsets.UTF_8);
 
 
final ValidationResult jsonValidation = validateJsonFormat(jsonData);
if (jsonValidation.hasError()) {
if (jsonValidation.hasError()) {
return ValidationResult.problem(new DataJsonSyntaxViolation());
return ValidationResult.problem(new DataJsonSyntaxViolation());
}
}
 
 
final ValidationResult dataSchemaValidation = validateSubmissionDataSchema(jsonData, data.getSubmissionSchema().getSchemaUri());
 
if (dataSchemaValidation.hasError()) {
 
return ValidationResult.problem(new DataSchemaViolation());
 
}
}
}
if (data.getSubmissionSchema().getMimeType().equals(MimeType.APPLICATION_XML)) {
if (data.getSubmissionSchema().getMimeType().equals(MimeType.APPLICATION_XML)) {
@@ -267,12 +274,6 @@ public class DefaultValidationService implements ValidationService {
@@ -267,12 +274,6 @@ public class DefaultValidationService implements ValidationService {
}
}
}
}
final ValidationResult dataSchemaValidation = validateSubmissionDataSchema(new String(decryptedData, StandardCharset.UTF_8),
metadata.getContentStructure().getData().getSubmissionSchema().getSchemaUri());
if (dataSchemaValidation.hasError()) {
return ValidationResult.problem(new DataSchemaViolation());
}
return ValidationResult.ok();
return ValidationResult.ok();
}
}
Loading