Uploaded image for project: 'Grouper'
  1. Grouper
  2. GRP-620

cant delete required type

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • None
    • 1.6.3
    • API
    • None

    Description

      Hello,

      I try to remove a type (of name "GroupType") that I associated with a group (sifac:missions) but I obtain this error :

      2011-07-20 11:29:49,369 DEBUG hib3.Hib3GroupDAO: < wallaert CD4E75CDB22C15ABDC72C9A7159F7C99-0015 f3870e6465ae4ac9a0092669b89472b0 wallaert lille1:ldap > deleting attribute: cnLDAP from group: lille1:groupesdetravail:sifac:missions since the type was removed
      2011-07-20 11:29:49,373 ERROR actions.GrouperCapableAction: < wallaert CD4E75CDB22C15ABDC72C9A7159F7C99-0015 f3870e6465ae4ac9a0092669b89472b0 wallaert lille1:ldap > java.lang.RuntimeException: Exception removing field: cnLDAP, from group: lille1:groupesdetravail:sifac:missions,
      Problem in HibernateSession: HibernateSession: isNew: false, isReadonly: false, grouperTransactionType: READ_WRITE_NEW,
      Problem with type: GroupLDAP,
      Problem in HibernateSession: HibernateSession: isNew: false, isReadonly: false, grouperTransactionType: READ_WRITE_NEW
      at edu.internet2.middleware.grouper.internal.dao.hib3.Hib3GroupDAO$3.callback(Hib3GroupDAO.java:231)
      at edu.internet2.middleware.grouper.hibernate.HibernateSession.callbackHibernateSession(HibernateSession.java:500)
      at edu.internet2.middleware.grouper.internal.dao.hib3.Hib3GroupDAO.deleteType(Hib3GroupDAO.java:209)
      at edu.internet2.middleware.grouper.Group$8.callback(Group.java:1825)
      at edu.internet2.middleware.grouper.hibernate.HibernateSession.callbackHibernateSession(HibernateSession.java:500)
      at edu.internet2.middleware.grouper.Group.deleteType(Group.java:1803)
      at edu.internet2.middleware.grouper.ui.actions.SaveGroupAction.doTypes(Unknown Source)
      at edu.internet2.middleware.grouper.ui.actions.SaveGroupAction.grouperExecute(Unknown Source)
      at edu.internet2.middleware.grouper.ui.actions.GrouperCapableAction$1.callback(Unknown Source)
      at edu.internet2.middleware.grouper.internal.dao.hib3.Hib3TransactionDAO$1.callback(Hib3TransactionDAO.java:51)
      at edu.internet2.middleware.grouper.hibernate.HibernateSession.callbackHibernateSession(HibernateSession.java:500)
      at edu.internet2.middleware.grouper.internal.dao.hib3.Hib3TransactionDAO.transactionCallback(Hib3TransactionDAO.java:41)
      at edu.internet2.middleware.grouper.hibernate.GrouperTransaction.callbackGrouperTransaction(GrouperTransaction.java:72)
      at edu.internet2.middleware.grouper.hibernate.GrouperTransaction.callbackGrouperTransaction(GrouperTransaction.java:91)
      at edu.internet2.middleware.grouper.ui.actions.GrouperCapableAction.grouperTransactionExecute(Unknown Source)
      at edu.internet2.middleware.grouper.ui.actions.GrouperCapableAction.execute(Unknown Source)
      at org.apache.struts.action.RequestProcessor.processActionPerform(Unknown Source)
      at org.apache.struts.action.RequestProcessor.process(Unknown Source)
      at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
      at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at edu.internet2.middleware.grouper.ui.LoginCheckFilter$1.callback(Unknown Source)
      at edu.internet2.middleware.grouper.GrouperSession.callbackGrouperSession(GrouperSession.java:644)
      at edu.internet2.middleware.grouper.ui.LoginCheckFilter.doFilter(Unknown Source)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at edu.internet2.middleware.grouper.ui.LoginCheckFilter$1.callback(Unknown Source)
      at edu.internet2.middleware.grouper.GrouperSession.callbackGrouperSession(GrouperSession.java:644)
      at edu.internet2.middleware.grouper.ui.LoginCheckFilter.doFilter(Unknown Source)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter.java:209)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at uk.ac.bris.is.grouper.ui.PreCASFilter.doFilter(Unknown Source)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at edu.internet2.middleware.grouper.ui.ErrorFilter.doFilter(Unknown Source)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at edu.internet2.middleware.grouper.ui.GrouperUiFilter.doFilter(Unknown Source)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
      at java.lang.Thread.run(Thread.java:636)
      Caused by: edu.internet2.middleware.grouper.exception.GroupModifyException: cannot delete required attribute: cnLDAP,
      Problem in HibernateSession: HibernateSession: isNew: false, isReadonly: false, grouperTransactionType: READ_WRITE_NEW
      at edu.internet2.middleware.grouper.Group$5.callback(Group.java:1273)
      at edu.internet2.middleware.grouper.hibernate.HibernateSession.callbackHibernateSession(HibernateSession.java:500)
      at edu.internet2.middleware.grouper.Group.deleteAttribute(Group.java:1255)
      at edu.internet2.middleware.grouper.internal.dao.hib3.Hib3GroupDAO$3.callback(Hib3GroupDAO.java:229)
      ... 56 more

      I have to say that I modify the type GroupLDAP to rename the fields "cn" and "owner" in "cnLDAP" and "ownerLDAP" to avoid collision with internal field of grouper.

      So, type "GroupLDAP" is now :
      GroupLDAP

      Field Type Required Nullable Read privilege Write privilege
      cnLDAP attribute true false read admin
      ownerLDAP attribute false true read admin
      PubLDAPGroup attribute true false read admin

      When I want to modify or delete a type of group (for exemple, to delete a field of the type or to delete the type itself), I have to put all fields required of the type in not required before modify or delete.

      I don't see a rename command for the fields of a type.

      I think that use required attribut in a type is very difficult and dangerous for the update, isn't it ?

      Thanks.

      Brigitte Wallaert-Taquet
      Ingénieure d'études
      Chargée d'étude
      Espace collaboratif de Documents
      Université Lille1
      Sciences et Technologies

      Attachments

        Activity

          People

            chris.hyzer@at.internet2.edu Chris Hyzer (upenn.edu)
            chris.hyzer@at.internet2.edu Chris Hyzer (upenn.edu)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated: