4.2.5.2.5. ScriptingManagerMBean

ScriptingManagerMBean является JMX-фасадом для интерфейса инфраструктуры Scripting .

JMX ObjectName: app-core.cuba:type=ScriptingManager

JMX атрибуты:

JMX операции:

  • runGroovyScript() - выполнить скрипт Groovy в контексте Middleware и вернуть результат. В скрипт передаются следующие переменные:

    Для отображения в JMX-интерфейсе результат должен быть типа String. В остальном аналогичен методу Scripting.runGroovyScript().

    Пример скрипта, создающего набор тестовых пользователей:

    import com.haulmont.cuba.core.*
    import com.haulmont.cuba.core.global.*
    import com.haulmont.cuba.security.entity.*
    
    PasswordEncryption passwordEncryption = AppBeans.get(PasswordEncryption.class)
    
    Transaction tx = persistence.createTransaction()
    try {
      EntityManager em = persistence.getEntityManager()
      Group group = em.getReference(Group.class, UUID.fromString('0fa2b1a5-1d68-4d69-9fbd-dff348347f93'))
      for (i in (1..250)) {
          User user = new User()
          user.setGroup(group)
          user.setLogin("user_${i.toString().padLeft(3, '0')}")
          user.setName(user.login)
          user.setPassword(passwordEncryption.getPasswordHash(user.id, '1'));
          em.persist(user)
      }
      tx.commit()
    } finally {
      tx.end()
    }