Kuali Rice Development
  1. Kuali Rice Development
  2. KULRICE-5927

Rice Dev: Role Create Document Permissions and Responsibilities lookups not working an

    Details

    • Type: Bug Fix Bug Fix
    • Status: Closed Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0.0-b4, 2.0
    • Component/s: Unit Testing
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Similar issues:
      KULRICE-8125Permission Lookup by Role Name not working
      KULRICE-12299Unable to create new role with a permission OR create/edit a role with a responsibility
      KULRICE-6826Role Lookup throws SQLException when using non-role (Permission, Group, Permission Template, Responsibility, Responsibility Template) criteria
      KULRICE-2408create Role Lookup and Inquiry
      KULRICE-5550Rice Dev: Group or Role lookup not returning values on Create Person
      KULRICE-5458Rice Dev: Role/Group/Permission/Responsibility Type throws HTTP500 Error
      KULRICE-5524Rice Dev: Permission & Responsibility Lookups bomb if Group Name is added
      KULRICE-7182Permission lookup by Attribute Value doesn't seem to work
      KULRICE-5922Rice Dev: Role Create Document Formatting Issues
      KULRICE-11841"Granted to Roles" column on responsibility lookup is broken
    • Rice Module:
      KIM
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required

      Description

      From the Create Role document if you search for a Permission or Responsibility and hit return value, none is returned. If you know a ID by chance (rarer than rare I'm guessing) and type it in by hand, you still get an error that you need to "Select..." a role or responsibility. Lastly if you do a blank Responsibility search from the lookup you get an error message...

      2011-11-07 20:29:10,638 [http-bio-8081-exec-13] u:admin/d:3069 ERROR org.kuali.rice.kns.web.struts.form.pojo.StrutsExceptionIncidentHandler - Exception being handled by Exception Handler
      java.lang.RuntimeException: error getting property value for  class org.kuali.rice.kim.impl.responsibility.UberResponsibilityBo.responsibilityId Unknown property 'responsibilityId' on class 'class org.kuali.rice.kim.impl.responsibility.UberResponsibilityBo'
      	at org.kuali.rice.krad.util.ObjectUtils.getPropertyValue(ObjectUtils.java:307)
      	at org.kuali.rice.kns.lookup.AbstractLookupableHelperServiceImpl.getParameters(AbstractLookupableHelperServiceImpl.java:853)
      	at org.kuali.rice.kns.lookup.AbstractLookupableHelperServiceImpl.getReturnUrl(AbstractLookupableHelperServiceImpl.java:780)
      	at org.kuali.rice.kns.lookup.AbstractLookupableHelperServiceImpl.performLookup(AbstractLookupableHelperServiceImpl.java:1124)
      	at org.kuali.rice.kns.lookup.KualiLookupableImpl.performLookup(KualiLookupableImpl.java:305)
      	at org.kuali.rice.kns.web.struts.action.KualiLookupAction.search(KualiLookupAction.java:207)
      	at sun.reflect.GeneratedMethodAccessor907.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:269)
      	at org.kuali.rice.kns.web.struts.action.KualiAction.dispatchMethod(KualiAction.java:168)
      	at org.kuali.rice.kns.web.struts.action.KualiAction.execute(KualiAction.java:129)
      	at org.kuali.rice.kns.web.struts.action.KualiLookupAction.execute(KualiLookupAction.java:157)
      	at org.kuali.rice.kns.web.struts.action.KualiRequestProcessor.processActionPerform(KualiRequestProcessor.java:527)
      	at org.kuali.rice.kns.web.struts.action.KualiRequestProcessor$1.doInTransaction(KualiRequestProcessor.java:248)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:130)
      	at org.kuali.rice.kns.web.struts.action.KualiRequestProcessor.processFormActionAndForward(KualiRequestProcessor.java:209)
      	at org.kuali.rice.kns.web.struts.action.KualiRequestProcessor.strutsProcess(KualiRequestProcessor.java:202)
      	at org.kuali.rice.kns.web.struts.action.KualiRequestProcessor.process(KualiRequestProcessor.java:89)
      	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
      	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      	at org.kuali.rice.kew.web.UserPreferencesFilter.doFilter(UserPreferencesFilter.java:78)
      	at org.kuali.rice.kew.web.UserPreferencesFilter.doFilter(UserPreferencesFilter.java:62)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      	at org.kuali.rice.kew.web.UserLoginFilter.doFilter(UserLoginFilter.java:88)
      	at org.kuali.rice.kew.web.UserLoginFilter.doFilter(UserLoginFilter.java:76)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      	at org.kuali.rice.kew.web.BootstrapFilterChain.doFilter(BootstrapFilter.java:271)
      	at org.kuali.rice.kew.web.DummyLoginFilter.doFilter(DummyLoginFilter.java:96)
      	at org.kuali.rice.kew.web.DummyLoginFilter.doFilter(DummyLoginFilter.java:55)
      	at org.kuali.rice.kew.web.BootstrapFilterChain.doFilter(BootstrapFilter.java:264)
      	at org.kuali.rice.kew.web.BootstrapFilter.doFilter(BootstrapFilter.java:162)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      	at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      	at org.kuali.rice.krad.web.filter.HideWebInfFilter.doFilter(HideWebInfFilter.java:69)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
      	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
      	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
      	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:964)
      	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
      	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:304)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: java.lang.NoSuchMethodException: Unknown property 'responsibilityId' on class 'class org.kuali.rice.kim.impl.responsibility.UberResponsibilityBo'
      	at org.apache.commons.beanutils.PropertyUtilsBean.getSimpleProperty(PropertyUtilsBean.java:1329)
      	at org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:770)
      	at org.kuali.rice.kns.web.struts.form.pojo.PojoPropertyUtilsBean.getNestedProperty(PojoPropertyUtilsBean.java:87)
      	at org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:846)
      	at org.kuali.rice.kns.web.struts.form.pojo.PojoPropertyUtilsBean.getProperty(PojoPropertyUtilsBean.java:55)
      	at org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:426)
      	at org.kuali.rice.krad.util.ObjectUtils.getPropertyValue(ObjectUtils.java:297)
      	... 59 more

        Issue Links

          Activity

          Hide
          Sona Sona (Inactive) added a comment -

          I tried the following things to replicate the issue with permission and responsibility lookup:
          1. Ran the local code against the dev database/tomcat 6.
          2. Checked out the latest tagged build and ran it against the dev database/tomcat 6.
          3. Checked with two other developers and it works on their m/c.
          4. Cleaned up the .m2 repo and ran against dev db/tomcat 6.
          5. Cleaned up the local db and ran on tomcat 6.
          All of the above worked and I could not replicate the issue.
          I then tried to run against dev db as well as local db and tomcat 7 and I could replicate the issue with Responsibility lookup but Permission lookup still works for my local m/c.
          UberResponsibilityBo)businessObject).getTemplate().getName() gives a null pointer exception in tomcat 7 since Template. create(TemplateContract contract) does not get called in tomcat 7 but it does in tomcat 6.

          Show
          Sona Sona (Inactive) added a comment - I tried the following things to replicate the issue with permission and responsibility lookup: 1. Ran the local code against the dev database/tomcat 6. 2. Checked out the latest tagged build and ran it against the dev database/tomcat 6. 3. Checked with two other developers and it works on their m/c. 4. Cleaned up the .m2 repo and ran against dev db/tomcat 6. 5. Cleaned up the local db and ran on tomcat 6. All of the above worked and I could not replicate the issue. I then tried to run against dev db as well as local db and tomcat 7 and I could replicate the issue with Responsibility lookup but Permission lookup still works for my local m/c. UberResponsibilityBo)businessObject).getTemplate().getName() gives a null pointer exception in tomcat 7 since Template. create(TemplateContract contract) does not get called in tomcat 7 but it does in tomcat 6.
          Hide
          Sona Sona (Inactive) added a comment -

          PropertyUtils.copyProperties(responsibilityCopy, responsibilityImpl); in ResponsibilityLookupableHelperServiceImpl.getResponsibilitiesSearchResultsCopy() does not copy the template from responsibilityImpl to responsibilityCopy which is causing Responsibility Lookup to break on tomcat 7. This works fine with tomcat 6.

          Show
          Sona Sona (Inactive) added a comment - PropertyUtils.copyProperties(responsibilityCopy, responsibilityImpl); in ResponsibilityLookupableHelperServiceImpl.getResponsibilitiesSearchResultsCopy() does not copy the template from responsibilityImpl to responsibilityCopy which is causing Responsibility Lookup to break on tomcat 7. This works fine with tomcat 6.
          Hide
          Sona Sona (Inactive) added a comment -

          Here is what I have figured out so far about the tomcat7 issue. Introspector.getBeanInfo is not able find a writeMethod for 'template' in UberResponsibility. 'template' is of type ResponsibilityTemplateBo which implements TemplateContract. ResponsibilityBo has
          ResponsibilityTemplateBo getTemplate()
          and it implements ResponsibilityContract which has
          TemplateContract getTemplate();
          I found the following bug listed online which seems related to the issue here.
          http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6852569

          Show
          Sona Sona (Inactive) added a comment - Here is what I have figured out so far about the tomcat7 issue. Introspector.getBeanInfo is not able find a writeMethod for 'template' in UberResponsibility. 'template' is of type ResponsibilityTemplateBo which implements TemplateContract. ResponsibilityBo has ResponsibilityTemplateBo getTemplate() and it implements ResponsibilityContract which has TemplateContract getTemplate(); I found the following bug listed online which seems related to the issue here. http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6852569
          Hide
          Matt Sargent added a comment -

          Verified in Dev1 this morning, looks good now. Thanks for all your work!

          -Matt

          Show
          Matt Sargent added a comment - Verified in Dev1 this morning, looks good now. Thanks for all your work! -Matt
          Hide
          Jessica Coltrin (Inactive) added a comment -

          Closing since these items are now in the release notes.

          Show
          Jessica Coltrin (Inactive) added a comment - Closing since these items are now in the release notes.

            People

            • Assignee:
              Sona Sona (Inactive)
              Reporter:
              Matt Sargent
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Structure Helper Panel