title: Grails 4.0 cannot save Domain to DB
body: <p>i am not very familiar with grails but this case is strange to me.
  I have create Domain object name Product and wanted to save some basic data in Bootstrap.groovy but product.save() is not saved in my DB.
  When i try to get all product with Product.getAll() i get empty array.
  But when i scaffolded everything for this domain object grails use ProductService in order to perform save operation and they are visible in DB
  Am i doing something wrong or Save with Product.save() is not supported?</p>
  
  <pre><code>class Product {
      UUID id
      String name
  
      static constraints = {
      }
  
      static mapping = {
          id generator : 'uuid2', type: 'pg-uuid' // pg-uuid because I use postgresql
      }
  }
  </code></pre>
  
  <pre><code>class BootStrap {
  
      def init = { servletContext -&gt;
  
          def product = new Product(name: 'Launch day 1')
          product.save()
  
          def product1 = new Product(name: 'Launch day 2')
          product1.save()
          def product2 = new Product(name: 'Launch day 3')
          product2.save()
      }
      def destroy = {
      }
  }
  
  </code></pre>
  
  <pre><code>
  @Service(Product)
  interface ProductService {
  
      Product get(Serializable id)
  
      List&lt;Product&gt; list(Map args)
  
      Long count()
  
      void delete(Serializable id)
  
      Product save(Product product)
  
  }
  </code></pre>
  
  <pre><code>dataSource:
    pooled: true
    driverClassName: org.postgresql.Driver
    dialect: org.hibernate.dialect.PostgreSQLDialect
    username: "postgres"
    password: "postgres"
    dbCreate: create-drop
    url: jdbc:postgresql://localhost:6543/grails_t
    properties:
      jmxEnabled: true
      initialSize: 5
      maxActive: 50
      minIdle: 5
      maxIdle: 25
      maxWait: 10000
      maxAge: 10 * 60000
      timeBetweenEvictionRunsMillis: 5000
      minEvictableIdleTimeMillis: 60000
      validationQuery: "SELECT 1"
      validationQueryTimeout: 3
      validationInterval: 15000
      testOnBorrow: true
      testWhileIdle: true
      testOnReturn: false
      jdbcInterceptors: "ConnectionState;StatementCache(max=200)"
      defaultTransactionIsolation: java.sql.Connection.TRANSACTION_READ_COMMITTED
  </code></pre>