3.2.5.2.5. ScriptingManagerMBean

ScriptingManagerMBeanScripting 基础接口的 JMX 外观设计模式实现。

JMX 对象名: app-core.cuba:type=ScriptingManager

JMX 属性:

JMX 操作:

  • runGroovyScript() – 在中间层上下文中执行 Groovy 脚本并返回结果。会将以下变量传递给脚本:

结果类型应该是可显示 JMX 界面上的字符串类型。除此之外,此方法与 Scripting.runGroovyScript() 完全一样。

用于创建一组测试用户的示例脚本,如下所示:

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