Apicurio / apicurio-registry

An API/Schema registry - stores APIs and Schemas.
https://www.apicur.io/registry/
Apache License 2.0
558 stars 250 forks source link

Test update artifact /groups/{groupId}/artifacts/{artifactId}/test fails when artifact is using references that are not urls #4758

Open luismaglz opened 3 weeks ago

luismaglz commented 3 weeks ago

Description

Registry Version: Release Persistence type: SQL

Environment

Its running in an Azure App Service which is pulling the image from apicurio/apicurio-registry-sql:latest-release

Steps to Reproduce

Using JSON schemas

I created a schema following the instructions on this page https://github.com/Apicurio/apicurio-registry/blob/fe0d5d59fb16b5ea15c15d1390c681c3346a2b05/docs/modules/ROOT/partials/getting-started/proc-managing-artifact-references-using-rest-api.adoc#L109

When I try the Test with a JSON schema which contains a reference I get the error (java.net.MalformedURLException: no protocol: com.Cart2.externalSkuDto)

Which makes sense, it is trying to validate the Schema reference, however I didnt see a way to use the application/create.extended+json content type with the Test endpoint.

What is the recommended pattern to test a JSON schema that includes references?

My schema looks like this

{
  "id": "cartItemDto",
  "type": "object",
  "discriminator": "$type",
  "required": [
    "$type"
  ],
  "properties": {
    "key": {
      "type": [
        "null",
        "string"
      ]
    },
    "originalOfferKey": {
      "type": [
        "null",
        "string"
      ]
    },
    "quantity": {
      "type": "integer",
      "format": "int32"
    },
    "type": {
      "type": [
        "null",
        "string"
      ]
    },
    "externalSkus": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "$ref": "com.Cart2.externalSkuDto"
      }
    },
    "$type": {
      "type": "string"
    }
  }
}

The artifact has a reference to a different artifact, when I call v2/ids/globalIds/798/references?refType=OUTBOUND the response is

[
    {
        "groupId": "Cart2",
        "artifactId": "Cart2.externalSkuDto",
        "version": "1.0.2.0",
        "name": "com.Cart2.externalSkuDto"
    }
]

Expected vs Actual Behaviour

I imagine I would like the validation to maybe ignore references? Or maybe allow a subset of rules that only apply during a test?

I am looping trough schemas that were updated. My goal is to do contract validation with the schemas present in the registry. However it is possible one of those schemas references a version that is not in the registry yet since the contract hasnt updated yet. At that point I am interested in the validation of the schema itself and not necessarily its references.

Logs

This is the stacktrace from the logs

2024-06-10T17:44:51.210820449Z 2024-06-10 17:44:51 ERROR <_> [io.apicurio.registry.services.http.RegistryExceptionMapperService] (executor-thread-113) [500 ERROR DETECTED] : java.net.MalformedURLException: no protocol: com.Cart2.externalSkuDto: java.io.UncheckedIOException: java.net.MalformedURLException: no protocol: com.Cart2.externalSkuDto
2024-06-10T17:44:51.210824849Z  at org.everit.json.schema.loader.internal.DefaultSchemaClient.get(DefaultSchemaClient.java:27)
2024-06-10T17:44:51.210828549Z  at org.everit.json.schema.loader.JsonPointerEvaluator.executeWith(JsonPointerEvaluator.java:80)
2024-06-10T17:44:51.210832349Z  at org.everit.json.schema.loader.JsonPointerEvaluator.lambda$forURL$1(JsonPointerEvaluator.java:121)
2024-06-10T17:44:51.210835949Z  at org.everit.json.schema.loader.JsonPointerEvaluator.query(JsonPointerEvaluator.java:151)
2024-06-10T17:44:51.210839649Z  at org.everit.json.schema.loader.ReferenceLookup.lookup(ReferenceLookup.java:149)
2024-06-10T17:44:51.210843349Z  at org.everit.json.schema.loader.ReferenceSchemaExtractor.extract(SchemaExtractor.java:199)
2024-06-10T17:44:51.210847049Z  at org.everit.json.schema.loader.AbstractSchemaExtractor.extract(SchemaExtractor.java:114)
2024-06-10T17:44:51.210850949Z  at org.everit.json.schema.loader.SchemaLoader.runSchemaExtractors(SchemaLoader.java:411)
2024-06-10T17:44:51.210858049Z  at org.everit.json.schema.loader.SchemaLoader.loadSchemaObject(SchemaLoader.java:388)
2024-06-10T17:44:51.210861749Z  at org.everit.json.schema.loader.JsonValue$Multiplexer.requireAny(JsonValue.java:47)
2024-06-10T17:44:51.210865449Z  at org.everit.json.schema.loader.SchemaLoader.load(SchemaLoader.java:462)
2024-06-10T17:44:51.210869049Z  at org.everit.json.schema.loader.SchemaLoader.loadChild(SchemaLoader.java:466)
2024-06-10T17:44:51.210872749Z  at org.everit.json.schema.loader.ArraySchemaLoader.lambda$null$2(ArraySchemaLoader.java:49)
2024-06-10T17:44:51.210876449Z  at org.everit.json.schema.loader.JsonValue$VoidMultiplexer.lambda$new$0(JsonValue.java:60)
2024-06-10T17:44:51.210880049Z  at org.everit.json.schema.loader.JsonValue$Multiplexer.requireAny(JsonValue.java:47)
2024-06-10T17:44:51.210883649Z  at org.everit.json.schema.loader.ArraySchemaLoader.lambda$load$4(ArraySchemaLoader.java:51)
2024-06-10T17:44:51.210887349Z  at java.base/java.util.Optional.ifPresent(Optional.java:178)
2024-06-10T17:44:51.210891049Z  at org.everit.json.schema.loader.ArraySchemaLoader.load(ArraySchemaLoader.java:48)
2024-06-10T17:44:51.210894649Z  at org.everit.json.schema.loader.AbstractSchemaExtractor.buildArraySchema(SchemaExtractor.java:144)
2024-06-10T17:44:51.210898349Z  at org.everit.json.schema.loader.TypeBasedSchemaExtractor.loadForExplicitType(SchemaExtractor.java:281)
2024-06-10T17:44:51.210902049Z  at org.everit.json.schema.loader.TypeBasedSchemaExtractor.lambda$buildAnyOfSchemaForMultipleTypes$1(SchemaExtractor.java:263)
2024-06-10T17:44:51.210905849Z  at org.everit.json.schema.loader.JsonArray.forEach(JsonArray.java:24)
2024-06-10T17:44:51.210909449Z  at org.everit.json.schema.loader.TypeBasedSchemaExtractor.buildAnyOfSchemaForMultipleTypes(SchemaExtractor.java:262)
2024-06-10T17:44:51.210916749Z  at org.everit.json.schema.loader.TypeBasedSchemaExtractor.lambda$extract$0(SchemaExtractor.java:251)
2024-06-10T17:44:51.210920749Z  at org.everit.json.schema.loader.JsonValue$Multiplexer.requireAny(JsonValue.java:47)
2024-06-10T17:44:51.210924349Z  at org.everit.json.schema.loader.TypeBasedSchemaExtractor.extract(SchemaExtractor.java:253)
2024-06-10T17:44:51.210928049Z  at org.everit.json.schema.loader.AbstractSchemaExtractor.extract(SchemaExtractor.java:114)
2024-06-10T17:44:51.210931750Z  at org.everit.json.schema.loader.SchemaLoader.runSchemaExtractors(SchemaLoader.java:424)
2024-06-10T17:44:51.210935350Z  at org.everit.json.schema.loader.SchemaLoader.loadSchemaObject(SchemaLoader.java:388)
2024-06-10T17:44:51.210938950Z  at org.everit.json.schema.loader.JsonValue$Multiplexer.requireAny(JsonValue.java:47)
2024-06-10T17:44:51.210942850Z  at org.everit.json.schema.loader.SchemaLoader.load(SchemaLoader.java:462)
2024-06-10T17:44:51.210946550Z  at org.everit.json.schema.loader.SchemaLoader.loadChild(SchemaLoader.java:466)
2024-06-10T17:44:51.210950150Z  at org.everit.json.schema.loader.ObjectSchemaLoader.addPropertySchemaDefinition(ObjectSchemaLoader.java:70)
2024-06-10T17:44:51.210953850Z  at org.everit.json.schema.loader.ObjectSchemaLoader.lambda$populatePropertySchemas$9(ObjectSchemaLoader.java:64)
2024-06-10T17:44:51.210957450Z  at org.everit.json.schema.loader.JsonObject.iterateOnEntry(JsonObject.java:84)
2024-06-10T17:44:51.210961050Z  at org.everit.json.schema.loader.JsonObject.lambda$forEach$1(JsonObject.java:79)
2024-06-10T17:44:51.210964650Z  at java.base/java.util.HashMap$EntrySet.forEach(HashMap.java:1126)
2024-06-10T17:44:51.210968250Z  at org.everit.json.schema.loader.JsonObject.forEach(JsonObject.java:79)
2024-06-10T17:44:51.210971850Z  at org.everit.json.schema.loader.ObjectSchemaLoader.populatePropertySchemas(ObjectSchemaLoader.java:61)
2024-06-10T17:44:51.210975550Z  at org.everit.json.schema.loader.ObjectSchemaLoader.lambda$load$0(ObjectSchemaLoader.java:32)
2024-06-10T17:44:51.210979150Z  at java.base/java.util.Optional.ifPresent(Optional.java:178)
2024-06-10T17:44:51.210982750Z  at org.everit.json.schema.loader.ObjectSchemaLoader.load(ObjectSchemaLoader.java:32)
2024-06-10T17:44:51.210986350Z  at org.everit.json.schema.loader.AbstractSchemaExtractor.buildObjectSchema(SchemaExtractor.java:139)
2024-06-10T17:44:51.210989950Z  at org.everit.json.schema.loader.TypeBasedSchemaExtractor.loadForExplicitType(SchemaExtractor.java:283)
2024-06-10T17:44:51.210993650Z  at org.everit.json.schema.loader.JsonValue$Multiplexer.requireAny(JsonValue.java:47)
2024-06-10T17:44:51.210997250Z  at org.everit.json.schema.loader.TypeBasedSchemaExtractor.extract(SchemaExtractor.java:253)
2024-06-10T17:44:51.211000950Z  at org.everit.json.schema.loader.AbstractSchemaExtractor.extract(SchemaExtractor.java:114)
2024-06-10T17:44:51.211004550Z  at org.everit.json.schema.loader.SchemaLoader.runSchemaExtractors(SchemaLoader.java:424)
2024-06-10T17:44:51.211011450Z  at org.everit.json.schema.loader.SchemaLoader.loadSchemaObject(SchemaLoader.java:388)
2024-06-10T17:44:51.211015250Z  at org.everit.json.schema.loader.JsonValue$Multiplexer.requireAny(JsonValue.java:47)
2024-06-10T17:44:51.211018850Z  at org.everit.json.schema.loader.SchemaLoader.load(SchemaLoader.java:462)
2024-06-10T17:44:51.211022450Z  at io.apicurio.registry.rules.compatibility.jsonschema.JsonSchemaDiffLibrary.findDifferences(JsonSchemaDiffLibrary.java:68)
2024-06-10T17:44:51.211026550Z  at io.apicurio.registry.rules.compatibility.jsonschema.JsonSchemaDiffLibrary.getIncompatibleDifferences(JsonSchemaDiffLibrary.java:117)
2024-06-10T17:44:51.211030450Z  at io.apicurio.registry.rules.compatibility.JsonSchemaCompatibilityChecker.isBackwardsCompatibleWith(JsonSchemaCompatibilityChecker.java:35)
2024-06-10T17:44:51.211034250Z  at io.apicurio.registry.rules.compatibility.AbstractCompatibilityChecker.lambda$testCompatibility$1(AbstractCompatibilityChecker.java:64)
2024-06-10T17:44:51.211038050Z  at io.apicurio.registry.rules.compatibility.AbstractCompatibilityChecker.transitively(AbstractCompatibilityChecker.java:99)
2024-06-10T17:44:51.211041750Z  at io.apicurio.registry.rules.compatibility.AbstractCompatibilityChecker.testCompatibility(AbstractCompatibilityChecker.java:64)
2024-06-10T17:44:51.211045450Z  at io.apicurio.registry.rules.compatibility.CompatibilityRuleExecutor.execute(CompatibilityRuleExecutor.java:63)
2024-06-10T17:44:51.211049150Z  at io.apicurio.registry.rules.compatibility.CompatibilityRuleExecutor_Subclass.execute$$superforward(Unknown Source)
2024-06-10T17:44:51.211052850Z  at io.apicurio.registry.rules.compatibility.CompatibilityRuleExecutor_Subclass$$function$$1.apply(Unknown Source)
2024-06-10T17:44:51.211056551Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:73)
2024-06-10T17:44:51.211060351Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:62)
2024-06-10T17:44:51.211063951Z  at io.apicurio.common.apps.logging.LoggingInterceptor.logMethodEntry(LoggingInterceptor.java:53)
2024-06-10T17:44:51.211067651Z  at io.apicurio.common.apps.logging.LoggingInterceptor_Bean.intercept(Unknown Source)
2024-06-10T17:44:51.211071351Z  at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:42)
2024-06-10T17:44:51.211074951Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext.perform(AroundInvokeInvocationContext.java:30)
2024-06-10T17:44:51.211078651Z  at io.quarkus.arc.impl.InvocationContexts.performAroundInvoke(InvocationContexts.java:27)
2024-06-10T17:44:51.211082251Z  at io.apicurio.registry.rules.compatibility.CompatibilityRuleExecutor_Subclass.execute(Unknown Source)
2024-06-10T17:44:51.211085951Z  at io.apicurio.registry.rules.compatibility.CompatibilityRuleExecutor_ClientProxy.execute(Unknown Source)
2024-06-10T17:44:51.211089651Z  at io.apicurio.registry.rules.RulesServiceImpl.applyRule(RulesServiceImpl.java:137)
2024-06-10T17:44:51.211097651Z  at io.apicurio.registry.rules.RulesServiceImpl.applyGlobalAndArtifactRules(RulesServiceImpl.java:107)
2024-06-10T17:44:51.211101851Z  at io.apicurio.registry.rules.RulesServiceImpl.applyRules(RulesServiceImpl.java:81)
2024-06-10T17:44:51.211105551Z  at io.apicurio.registry.rules.RulesServiceImpl_ClientProxy.applyRules(Unknown Source)
2024-06-10T17:44:51.211109051Z  at io.apicurio.registry.rest.v2.GroupsResourceImpl.testUpdateArtifact(GroupsResourceImpl.java:556)
2024-06-10T17:44:51.211112751Z  at io.apicurio.registry.rest.v2.GroupsResourceImpl_Subclass.testUpdateArtifact$$superforward(Unknown Source)
2024-06-10T17:44:51.211116351Z  at io.apicurio.registry.rest.v2.GroupsResourceImpl_Subclass$$function$$34.apply(Unknown Source)
2024-06-10T17:44:51.211119951Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:73)
2024-06-10T17:44:51.211123751Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext$NextAroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:97)
2024-06-10T17:44:51.211127551Z  at io.apicurio.common.apps.logging.LoggingInterceptor.logMethodEntry(LoggingInterceptor.java:53)
2024-06-10T17:44:51.211131251Z  at io.apicurio.common.apps.logging.LoggingInterceptor_Bean.intercept(Unknown Source)
2024-06-10T17:44:51.211134951Z  at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:42)
2024-06-10T17:44:51.211138551Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:70)
2024-06-10T17:44:51.211142251Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext$NextAroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:97)
2024-06-10T17:44:51.211145951Z  at io.apicurio.registry.auth.AuthorizedInterceptor.authorizeMethod(AuthorizedInterceptor.java:175)
2024-06-10T17:44:51.211149651Z  at io.apicurio.registry.auth.AuthorizedInterceptor_Bean.intercept(Unknown Source)
2024-06-10T17:44:51.211153351Z  at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:42)
2024-06-10T17:44:51.211156951Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:70)
2024-06-10T17:44:51.211160651Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:62)
2024-06-10T17:44:51.211164351Z  at io.quarkus.resteasy.runtime.QuarkusRestPathTemplateInterceptor.restMethodInvoke(QuarkusRestPathTemplateInterceptor.java:39)
2024-06-10T17:44:51.211168051Z  at io.quarkus.resteasy.runtime.QuarkusRestPathTemplateInterceptor_Bean.intercept(Unknown Source)
2024-06-10T17:44:51.211171751Z  at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:42)
2024-06-10T17:44:51.211175451Z  at io.quarkus.arc.impl.AroundInvokeInvocationContext.perform(AroundInvokeInvocationContext.java:30)
2024-06-10T17:44:51.211179252Z  at io.quarkus.arc.impl.InvocationContexts.performAroundInvoke(InvocationContexts.java:27)
2024-06-10T17:44:51.211182952Z  at io.apicurio.registry.rest.v2.GroupsResourceImpl_Subclass.testUpdateArtifact(Unknown Source)
2024-06-10T17:44:51.211189852Z  at io.apicurio.registry.rest.v2.GroupsResourceImpl_ClientProxy.testUpdateArtifact(Unknown Source)
2024-06-10T17:44:51.211193752Z  at jdk.internal.reflect.GeneratedMethodAccessor62.invoke(Unknown Source)
2024-06-10T17:44:51.211197452Z  at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2024-06-10T17:44:51.211201052Z  at java.base/java.lang.reflect.Method.invoke(Method.java:568)
2024-06-10T17:44:51.211204652Z  at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:154)
2024-06-10T17:44:51.211208252Z  at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:118)
2024-06-10T17:44:51.211211852Z  at org.jboss.resteasy.core.ResourceMethodInvoker.internalInvokeOnTarget(ResourceMethodInvoker.java:560)
2024-06-10T17:44:51.211215552Z  at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTargetAfterFilter(ResourceMethodInvoker.java:452)
2024-06-10T17:44:51.211219652Z  at org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invokeOnTarget$2(ResourceMethodInvoker.java:413)
2024-06-10T17:44:51.211223552Z  at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:321)
2024-06-10T17:44:51.211227252Z  at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:415)
2024-06-10T17:44:51.211231052Z  at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:378)
2024-06-10T17:44:51.211234752Z  at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:356)
2024-06-10T17:44:51.211238452Z  at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:70)
2024-06-10T17:44:51.211242152Z  at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:429)
2024-06-10T17:44:51.211245852Z  at org.jboss.resteasy.core.SynchronousDispatcher.lambda$invoke$4(SynchronousDispatcher.java:240)
2024-06-10T17:44:51.211249652Z  at org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:154)
2024-06-10T17:44:51.211253352Z  at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:321)
2024-06-10T17:44:51.211257152Z  at org.jboss.resteasy.core.SynchronousDispatcher.preprocess(SynchronousDispatcher.java:157)
2024-06-10T17:44:51.211276952Z  at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:229)
2024-06-10T17:44:51.211280452Z  at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:222)
2024-06-10T17:44:51.211284052Z  at io.quarkus.resteasy.runtime.ResteasyFilter.doFilter(ResteasyFilter.java:35)
2024-06-10T17:44:51.211287452Z  at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
2024-06-10T17:44:51.211290952Z  at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
2024-06-10T17:44:51.211298052Z  at io.apicurio.registry.ui.servlets.HSTSFilter.doFilter(HSTSFilter.java:62)
2024-06-10T17:44:51.211301752Z  at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
2024-06-10T17:44:51.211305153Z  at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
2024-06-10T17:44:51.211308653Z  at io.apicurio.registry.ui.servlets.ResourceCacheControlFilter.doFilter(ResourceCacheControlFilter.java:92)
2024-06-10T17:44:51.211312253Z  at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
2024-06-10T17:44:51.211315653Z  at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
2024-06-10T17:44:51.211319153Z  at io.apicurio.registry.rest.RegistryApplicationServletFilter.doFilter(RegistryApplicationServletFilter.java:155)
2024-06-10T17:44:51.211322753Z  at io.apicurio.registry.rest.RegistryApplicationServletFilter_ClientProxy.doFilter(Unknown Source)
2024-06-10T17:44:51.211326353Z  at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
2024-06-10T17:44:51.211329853Z  at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
2024-06-10T17:44:51.211333353Z  at io.apicurio.registry.ui.servlets.RedirectFilter.doFilter(RedirectFilter.java:96)
2024-06-10T17:44:51.211336753Z  at io.apicurio.registry.ui.servlets.RedirectFilter_ClientProxy.doFilter(Unknown Source)
2024-06-10T17:44:51.211340253Z  at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
2024-06-10T17:44:51.211343753Z  at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
2024-06-10T17:44:51.211363353Z  at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
2024-06-10T17:44:51.211366853Z  at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:63)
2024-06-10T17:44:51.211370353Z  at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
2024-06-10T17:44:51.211374153Z  at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
2024-06-10T17:44:51.211377553Z  at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:67)
2024-06-10T17:44:51.211380953Z  at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:133)
2024-06-10T17:44:51.211400853Z  at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
2024-06-10T17:44:51.211404153Z  at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
2024-06-10T17:44:51.211407453Z  at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
2024-06-10T17:44:51.211410753Z  at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:65)
2024-06-10T17:44:51.211417153Z  at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
2024-06-10T17:44:51.211421953Z  at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
2024-06-10T17:44:51.211425453Z  at io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
2024-06-10T17:44:51.211428854Z  at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
2024-06-10T17:44:51.211432254Z  at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
2024-06-10T17:44:51.211435754Z  at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
2024-06-10T17:44:51.211439154Z  at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:247)
2024-06-10T17:44:51.211442454Z  at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:56)
2024-06-10T17:44:51.211445854Z  at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:111)
2024-06-10T17:44:51.211449154Z  at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:108)
2024-06-10T17:44:51.211452554Z  at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
2024-06-10T17:44:51.211455954Z  at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
2024-06-10T17:44:51.211459554Z  at io.quarkus.undertow.runtime.UndertowDeploymentRecorder$9$1.call(UndertowDeploymentRecorder.java:626)
2024-06-10T17:44:51.211463954Z  at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:227)
2024-06-10T17:44:51.211467354Z  at io.undertow.servlet.handlers.ServletInitialHandler.handleRequest(ServletInitialHandler.java:152)
2024-06-10T17:44:51.211471054Z  at io.undertow.server.handlers.CanonicalPathHandler.handleRequest(CanonicalPathHandler.java:49)
2024-06-10T17:44:51.211474354Z  at io.quarkus.undertow.runtime.UndertowDeploymentRecorder$1.handleRequest(UndertowDeploymentRecorder.java:125)
2024-06-10T17:44:51.211477754Z  at io.undertow.server.Connectors.executeRootHandler(Connectors.java:284)
2024-06-10T17:44:51.211481054Z  at io.undertow.server.DefaultExchangeHandler.handle(DefaultExchangeHandler.java:18)
2024-06-10T17:44:51.211484354Z  at io.quarkus.undertow.runtime.UndertowDeploymentRecorder$5$2.run(UndertowDeploymentRecorder.java:441)
2024-06-10T17:44:51.211487754Z  at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
2024-06-10T17:44:51.211491154Z  at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
2024-06-10T17:44:51.211497754Z  at io.quarkus.vertx.core.runtime.VertxCoreRecorder$14.runWith(VertxCoreRecorder.java:576)
2024-06-10T17:44:51.211501354Z  at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
2024-06-10T17:44:51.211504654Z  at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
2024-06-10T17:44:51.211507954Z  at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
2024-06-10T17:44:51.211511154Z  at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
2024-06-10T17:44:51.211514354Z  at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
2024-06-10T17:44:51.211517754Z  at java.base/java.lang.Thread.run(Thread.java:840)
2024-06-10T17:44:51.211520954Z Caused by: java.net.MalformedURLException: no protocol: com.Cart2.externalSkuDto
2024-06-10T17:44:51.211524254Z  at java.base/java.net.URL.<init>(URL.java:674)
2024-06-10T17:44:51.211527554Z  at java.base/java.net.URL.<init>(URL.java:569)
2024-06-10T17:44:51.211530854Z  at java.base/java.net.URL.<init>(URL.java:516)
apicurio-bot[bot] commented 3 weeks ago

Thank you for reporting an issue!

Pinging @jsenko to respond or triage.