diff --git a/java/google/registry/flows/domain/BaseDomainCreateFlow.java b/java/google/registry/flows/domain/BaseDomainCreateFlow.java index d29d2961e..d85043c2f 100644 --- a/java/google/registry/flows/domain/BaseDomainCreateFlow.java +++ b/java/google/registry/flows/domain/BaseDomainCreateFlow.java @@ -118,15 +118,14 @@ public abstract class BaseDomainCreateFlow tldParsed = - findTldForName(InternetDomainName.from(command.getFullyQualifiedDomainName())); - return tldParsed.isPresent() - ? createDomainRoid(ObjectifyService.allocateId(), tldParsed.get().toString()) - : null; - } catch (IllegalArgumentException e) { + if (!InternetDomainName.isValid(command.getFullyQualifiedDomainName())) { return null; } + Optional tldParsed = + findTldForName(InternetDomainName.from(command.getFullyQualifiedDomainName())); + return tldParsed.isPresent() + ? createDomainRoid(ObjectifyService.allocateId(), tldParsed.get().toString()) + : null; } /** Subclasses may override this to do more specific initialization. */