raml-java-parser icon indicating copy to clipboard operation
raml-java-parser copied to clipboard

Parsing fails with PatternSyntaxException on invalid pattern (when example is present)

Open constint opened this issue 8 years ago • 0 comments

Tested with parser version 1.0.11 For the given raml file

#%RAML 1.0
title: "Invalid pattern"
version: "1.0.0"
protocols:
- "HTTP"
types:
  stringType:
    type: string
    pattern: "\\X"
    example: "abc"

Then parser fails with the following stacktrace (instead of providing a RamlValidationResult)

java.util.regex.PatternSyntaxException: Illegal/unsupported escape sequence near index 1
\X
 ^
	at java.util.regex.Pattern.error(Pattern.java:1955)
	at java.util.regex.Pattern.escape(Pattern.java:2471)
	at java.util.regex.Pattern.atom(Pattern.java:2198)
	at java.util.regex.Pattern.sequence(Pattern.java:2079)
	at java.util.regex.Pattern.expr(Pattern.java:1996)
	at java.util.regex.Pattern.compile(Pattern.java:1696)
	at java.util.regex.Pattern.<init>(Pattern.java:1351)
	at java.util.regex.Pattern.compile(Pattern.java:1028)
	at org.raml.v2.internal.impl.v10.type.TypeToRuleVisitor.visitString(TypeToRuleVisitor.java:102)
	at org.raml.v2.internal.impl.v10.type.TypeToRuleVisitor.visitString(TypeToRuleVisitor.java:67)
	at org.raml.v2.internal.impl.v10.type.StringResolvedType.visit(StringResolvedType.java:175)
	at org.raml.v2.internal.impl.v10.phase.ExampleValidationPhase.validate(ExampleValidationPhase.java:132)
	at org.raml.v2.internal.impl.v10.phase.ExampleValidationPhase.apply(ExampleValidationPhase.java:82)
	at org.raml.v2.internal.impl.v10.Raml10Builder.runPhases(Raml10Builder.java:114)
	at org.raml.v2.internal.impl.v10.Raml10Builder.build(Raml10Builder.java:93)
	at org.raml.v2.internal.impl.RamlBuilder.build(RamlBuilder.java:116)
	at org.raml.v2.internal.impl.RamlBuilder.build(RamlBuilder.java:100)
	at org.raml.v2.api.RamlModelBuilder.buildApi(RamlModelBuilder.java:125)
	at org.raml.v2.api.RamlModelBuilder.buildApi(RamlModelBuilder.java:104)

Aha! Link: https://mulesoft-roadmap.aha.io/features/APIRAML-83

constint avatar Jun 28 '17 09:06 constint