Skip to content

Commit 29b06b5

Browse files
authored
Merge pull request #282 from ruromero/cyclonedx-metadata
fix: allow CycloneDX SBOMs without metadata
2 parents 3e08671 + 560965d commit 29b06b5

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/main/java/com/redhat/exhort/integration/backend/sbom/cyclonedx/CycloneDxParser.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,11 @@ protected DependencyTree buildTree(InputStream input) {
6363
.collect(Collectors.toMap(Component::getBomRef, c -> new PackageRef(c.getPurl()))));
6464
}
6565

66-
if (bom.getMetadata() == null) {
67-
throw new ClientErrorException(
68-
"Unable to parse CycloneDX SBOM. Missing metadata.", Response.Status.BAD_REQUEST);
66+
Optional<Component> rootComponent = Optional.empty();
67+
if (bom.getMetadata() != null) {
68+
rootComponent = Optional.ofNullable(bom.getMetadata().getComponent());
6969
}
70-
var rootComponent = Optional.ofNullable(bom.getMetadata().getComponent());
70+
7171
PackageRef rootRef = null;
7272
if (rootComponent.isPresent()) {
7373
if (rootComponent.get().getPurl() != null) {

0 commit comments

Comments
 (0)