Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-6273

DMN OAS to report details on naming collisions

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Done
    • Icon: Major Major
    • None
    • None
    • dmn engine
    • None
    • 2021 Week 13-15 (from Mar 29)
    • 2
    • Undefined
    • NEW
    • NEW

      On naming collisions, for instance same ItemDef name defined in 2 DMN models having the same namespace (which is wrong), to report more details than:

      java.lang.IllegalStateException: Couldn't determine unique naming policy
              at org.kie.dmn.openapi.impl.DMNOASGeneratorImpl.determineNamingPolicy(DMNOASGeneratorImpl.java:94)
              at org.kie.dmn.openapi.impl.DMNOASGeneratorImpl.build(DMNOASGeneratorImpl.java:61)
              at org.kie.kogito.codegen.decision.DecisionCodegen.generateAndStoreRestResources(DecisionCodegen.java:127)
              at org.kie.kogito.codegen.decision.DecisionCodegen.generate(DecisionCodegen.java:115)
              at org.kie.kogito.codegen.decision.DecisionCodegen.generate(DecisionCodegen.java:63)
      

      This enhancement will report something similar to:

      java.lang.IllegalStateException: Couldn't determine unique naming policy.
      Ensure all DMN models are defined in their own namespace.
      Naming collision for types named: [DMNType{ https://kiegroup.org/dmn/_4B5AD433-0A08-4D69-A91F-89ECD6C2546F : tItemCollection }, DMNType{ https://kiegroup.org/dmn/_4B5AD433-0A08-4D69-A91F-89ECD6C2546F : tItemCollection }] defined in the DMN models: Model 'processItemCollidingNS' (namespace 'https://kiegroup.org/dmn/_4B5AD433-0A08-4D69-A91F-89ECD6C2546F'), Model 'processItem' (namespace 'https://kiegroup.org/dmn/_4B5AD433-0A08-4D69-A91F-89ECD6C2546F') (colliding on 'ns2tItemCollection')
      	at org.kie.dmn.openapi.impl.DMNOASGeneratorImpl.reportCollisions(DMNOASGeneratorImpl.java:112)
      	at org.kie.dmn.openapi.impl.DMNOASGeneratorImpl.determineNamingPolicy(DMNOASGeneratorImpl.java:97)
      	at org.kie.dmn.openapi.impl.DMNOASGeneratorImpl.build(DMNOASGeneratorImpl.java:64)
      

              mmortari@redhat.com Matteo Mortari
              mmortari@redhat.com Matteo Mortari
              Daniel Rosa Daniel Rosa
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: