Skip to Content.
Sympa Menu

grouper-users - RE: [grouper-users] remove Type with required field for a group

Subject: Grouper Users - Open Discussion List

List archive

RE: [grouper-users] remove Type with required field for a group


Chronological Thread 
  • From: Chris Hyzer <>
  • To: Wallaert-Taquet Brigitte <>, "" <>
  • Subject: RE: [grouper-users] remove Type with required field for a group
  • Date: Wed, 20 Jul 2011 13:29:52 +0000
  • Accept-language: en-US

I made a jira for this.  Let me know which version you are using

 

Thanks,

Chris

 

From: [mailto:] On Behalf Of Wallaert-Taquet Brigitte
Sent: Wednesday, July 20, 2011 5:45 AM
To:
Subject: [grouper-users] remove Type with required field for a group

 

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



Archive powered by MHonArc 2.6.16.

Top of Page