org.apache.cxf.interceptor.Fault: DocumentType Authorizer 'org.kuali.kra.KcAuthorizer' configured for document type 'ProposalDevelopmentDocument does not implement org.kuali.rice.kew.framework.document.security.DocumentTypeAuthorizer

Kuali JIRA | Gayathri Athreya | 4 years ago
  1. 0

    In order to reproduce, in an embedded client app, create a custom authorizer for roleQualifiers and add to the documentType. Add the super user panel to the document and open it (Or start up KC in embedded mode. Navigate to Researcher tab > Create a proposal > fill in required fields {code} * Sponsor Code:000340 * Proposal Type:New * Project Start Date:01/01/2013 * Lead Unit:000001 * Project End Date:03/31/2013 * Activity Type: Clnical Trial * Project Title: Test {code} and navigate to the proposal actions tab in the proposal Development document). The super user panel will not load fully and in the error logs you see the following stack trace. I have verified that the custom authorizer class does implement the DocumentTypeAuthorizer. {code} 2013-03-13 08:01:42,243 [qtp1675553600-66] D: U: WARN  org.apache.cxf.phase.PhaseInterceptorChain :: Application {http://rice.kuali.org/kew/v2_0}documentTypeService#{http://rice.kuali.org/kew/v2_0}canSuperUserApproveSingleActionRequest has thrown exception, unwinding now org.apache.cxf.interceptor.Fault: DocumentType Authorizer 'org.kuali.kra.KcAuthorizer' configured for document type 'ProposalDevelopmentDocument does not implement org.kuali.rice.kew.framework.document.security.DocumentTypeAuthorizer at org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:162) at org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.createFault(AbstractJAXWSMethodInvoker.java:213) at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:128) at org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWSMethodInvoker.java:178) at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:64 {code} This DocumentAuthorizer implementation to build custom role qualifiers works well in all situations except when called from the super user action tab. The problem occurs when the superUserAction.tab calls the DocumentTypeServiceImpl methods canSuperUser*. These methods try to authorize using the following code {code} boolean isSuperUser = KEWServiceLocator.getDocumentTypePermissionService().canSuperUserApproveDocument( principalId, documentType, currentNodeInstances, routeStatusCode); {code} The DocumentTypePermissionServiceAuthorizerImpl tries to get the custom implementation but cannot because the isAssignableFrom(extension.getClass()) of the getDocumentTypeAuthorizer returns false in this particular scenario. I have confirmed that this methods returns the right authorizer correctly in other situations when testing for canSave, canRecall etc. The issue also seems to happen only when the authorizer implementation is on the KC end. I tested this by adding "org.kuali.rice.kew.doctype.service.impl.KimDocumentTypeAuthorizer" to the authorizer element of the document type and that works. Let me know if you want to do a screenshare and debug through it.

    Kuali JIRA | 4 years ago | Gayathri Athreya
    org.apache.cxf.interceptor.Fault: DocumentType Authorizer 'org.kuali.kra.KcAuthorizer' configured for document type 'ProposalDevelopmentDocument does not implement org.kuali.rice.kew.framework.document.security.DocumentTypeAuthorizer
  2. 0

    In order to reproduce, in an embedded client app, create a custom authorizer for roleQualifiers and add to the documentType. Add the super user panel to the document and open it (Or start up KC in embedded mode. Navigate to Researcher tab > Create a proposal > fill in required fields {code} * Sponsor Code:000340 * Proposal Type:New * Project Start Date:01/01/2013 * Lead Unit:000001 * Project End Date:03/31/2013 * Activity Type: Clnical Trial * Project Title: Test {code} and navigate to the proposal actions tab in the proposal Development document). The super user panel will not load fully and in the error logs you see the following stack trace. I have verified that the custom authorizer class does implement the DocumentTypeAuthorizer. {code} 2013-03-13 08:01:42,243 [qtp1675553600-66] D: U: WARN  org.apache.cxf.phase.PhaseInterceptorChain :: Application {http://rice.kuali.org/kew/v2_0}documentTypeService#{http://rice.kuali.org/kew/v2_0}canSuperUserApproveSingleActionRequest has thrown exception, unwinding now org.apache.cxf.interceptor.Fault: DocumentType Authorizer 'org.kuali.kra.KcAuthorizer' configured for document type 'ProposalDevelopmentDocument does not implement org.kuali.rice.kew.framework.document.security.DocumentTypeAuthorizer at org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:162) at org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.createFault(AbstractJAXWSMethodInvoker.java:213) at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:128) at org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWSMethodInvoker.java:178) at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:64 {code} This DocumentAuthorizer implementation to build custom role qualifiers works well in all situations except when called from the super user action tab. The problem occurs when the superUserAction.tab calls the DocumentTypeServiceImpl methods canSuperUser*. These methods try to authorize using the following code {code} boolean isSuperUser = KEWServiceLocator.getDocumentTypePermissionService().canSuperUserApproveDocument( principalId, documentType, currentNodeInstances, routeStatusCode); {code} The DocumentTypePermissionServiceAuthorizerImpl tries to get the custom implementation but cannot because the isAssignableFrom(extension.getClass()) of the getDocumentTypeAuthorizer returns false in this particular scenario. I have confirmed that this methods returns the right authorizer correctly in other situations when testing for canSave, canRecall etc. The issue also seems to happen only when the authorizer implementation is on the KC end. I tested this by adding "org.kuali.rice.kew.doctype.service.impl.KimDocumentTypeAuthorizer" to the authorizer element of the document type and that works. Let me know if you want to do a screenshare and debug through it.

    Kuali JIRA | 4 years ago | Gayathri Athreya
    org.apache.cxf.interceptor.Fault: DocumentType Authorizer 'org.kuali.kra.KcAuthorizer' configured for document type 'ProposalDevelopmentDocument does not implement org.kuali.rice.kew.framework.document.security.DocumentTypeAuthorizer
  3. 0

    CONNECT Users - problem

    connectopensource.org | 11 months ago
    org.apache.cxf.interceptor.Fault: Could not initialize class gov.hhs.fha.nhinc.event.persistence.HibernateUtil
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Cannot resolve reference to bean 'entityManagerFactory' while setting bean property 'entityManagerFactory';

    Stack Overflow | 2 years ago | Manjunath b
    org.apache.cxf.interceptor.Fault: Error creating bean with name 'control' defined in class path resource [beans.xml]: Cannot resolve reference to bean 'entityManagerFactory' while setting bean property 'entityManagerFactory'; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean] for bean with name 'entityManagerFactory' defined in class path resource [beans.xml]; nested exception is java.lang.ClassNotFoundException: org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean
  6. 0

    spring | Apache Help Blog | Page 5

    filegala.com | 1 year ago
    org.apache.cxf.interceptor.Fault: Error creating bean with name 'control' defined in class path resource [beans.xml]: Cannot resolve reference to bean 'entityManagerFactory' while setting bean property 'entityManagerFactory'; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean] for bean with name 'entityManagerFactory' defined in class path resource [beans.xml]; nested exception is java.lang.ClassNotFoundException: org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean

    4 unregistered visitors
    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. org.apache.cxf.interceptor.Fault

      DocumentType Authorizer 'org.kuali.kra.KcAuthorizer' configured for document type 'ProposalDevelopmentDocument does not implement org.kuali.rice.kew.framework.document.security.DocumentTypeAuthorizer

      at org.apache.cxf.service.invoker.AbstractInvoker.createFault()
    2. Apache CXF Core
      AbstractInvoker.createFault
      1. org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:162)
      1 frame
    3. Apache CXF Runtime JAX-WS Frontend
      AbstractJAXWSMethodInvoker.createFault
      1. org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.createFault(AbstractJAXWSMethodInvoker.java:213)
      1 frame
    4. Apache CXF Core
      AbstractInvoker.invoke
      1. org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:128)
      1 frame
    5. Apache CXF Runtime JAX-WS Frontend
      AbstractJAXWSMethodInvoker.invoke
      1. org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWSMethodInvoker.java:178)
      1 frame