glassfish
  1. glassfish
  2. GLASSFISH-20692

The message "jaccfactory.notfound" in WebSecurityManager is not defined in the property File.

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 4.0_b89_RC5
    • Fix Version/s: 4.1
    • Component/s: security
    • Labels:
      None
    • Environment:

      OS
      Windows 7 Enterprise (Service Pack 1)

      JDK
      java version "1.7.0_11"
      Java(TM) SE Runtime Environment (build 1.7.0_11-b21)
      Java HotSpot(TM) 64-Bit Server VM (build 23.6-b04, mixed mode)

      Description

      Reproducible operational steps:

      asadmin set server.security-service.jacc=h.b.aaaa

      asadmin restart-domain

      You can see the message below in the server.log

      [2013-07-10T13:03:28.431+1000] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core.security] [tid: _ThreadID=83 _ThreadName=Thread-15] [timeMillis: 1373425408431] [levelValue: 1000] [[
      jaccfactory.notfound]]

      Issues:
      "jaccfactory.notfound" is not appropriate as the message logged in server.log.

      Detailed description of the issue:

      The message is logged by WebSecurityManager
      (https://svn.java.net/svn/glassfish~svn/branches/4.0/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/web/integration/WebSecurityManager.java) as shown below

      public class WebSecurityManager {
      private static final Logger logger =
      Logger.getLogger(LogDomains.SECURITY_LOGGER);
      /** lines ignored **/
      private synchronized PolicyConfigurationFactory _getPolicyFactory()
      throws PolicyContextException {
      if (pcf == null) {
      try

      { pcf = PolicyConfigurationFactory.getPolicyConfigurationFactory(); }

      catch(ClassNotFoundException cnfe)

      { logger.severe("jaccfactory.notfound"); throw new PolicyContextException(cnfe); }

      catch(PolicyContextException pce)

      { logger.severe("jaccfactory.notfound"); throw pce; }

      }
      return pcf;
      }
      /** lines ignored **/
      }

      However, the message "jaccfactory.notfound" is not defined in LogStrings.properties
      (https://svn.java.net/svn/glassfish~svn/branches/4.0/nucleus/security/core/src/main/resources/com/sun/logging/enterprise/system/core/security/LogStrings.properties) for WebSecurityManager .

      I think the message "jaccfactory.notfound" should be defined in LogStrings.properties for WebSecurityManager.

      Below is a sample from EJBSecurityManager which has situation.
      The message "jaccfactory.notfound" is defined in LogStrings.properties (https://svn.java.net/svn/glassfish~svn/branches/4.0/appserver/ejb/ejb-container/src/main/resources/com/sun/logging/enterprise/system/container/ejb/LogStrings.properties)
      for EJBSecurityManager (https://svn.java.net/svn/glassfish~svn/branches/4.0/appserver/ejb/ejb-container/src/main/java/org/glassfish/ejb/security/application/EJBSecurityManager.java).

        Activity

        Hide
        xianwu added a comment -

        Sorry, there is a typo

        "Below is a sample from EJBSecurityManager which has situation." =>
        "Below is a sample from EJBSecurityManager which has a similar situation."

        Show
        xianwu added a comment - Sorry, there is a typo "Below is a sample from EJBSecurityManager which has situation." => "Below is a sample from EJBSecurityManager which has a similar situation."
        Hide
        xianwu added a comment -

        Hi Jeff

        The problem is not fixed in 4.0.1 (b02-07_22_2013 build).

        To reproduce the problem, you need to start GF Server Admin Console. Below are modified steps.

        Reproducible operational steps:

        asadmin start-domain

        asadmin set server.security-service.jacc=h.b.aaaa

        asadmin stop-domain

        asadmin start-domain

        You can see the message below in the server.log

        [2013-07-23T13:44:01.478+1000] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core.security] [tid: _ThreadID=114 _ThreadName=Thread-18] [timeMillis: 1374551041478] [levelValue: 1000] [[
        jaccfactory.notfound]]

        [2013-07-23T13:44:01.478+1000] [glassfish 4.0] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=114 _ThreadName=Thread-18] [timeMillis: 1374551041478] [levelValue: 1000] [[
        Exception during lifecycle processing
        org.glassfish.deployment.common.DeploymentException: Error in generating security policy for __admingui – javax.security.jacc.PolicyContextException: java.lang.ClassNotFoundException: JACC:Error PolicyConfigurationFactory : cannot find class : null
        at com.sun.enterprise.security.web.integration.WebSecurityManagerFactory.createManager(WebSecurityManagerFactory.java:305)
        at com.sun.enterprise.security.ee.SecurityDeployer.loadPolicy(SecurityDeployer.java:234)
        at com.sun.enterprise.security.ee.SecurityDeployer.access$000(SecurityDeployer.java:87)
        at com.sun.enterprise.security.ee.SecurityDeployer$AppDeployEventListener.event(SecurityDeployer.java:135)
        at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
        at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:233)
        at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:313)
        at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
        at com.sun.enterprise.v3.server.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:406)
        at com.sun.enterprise.v3.admin.adapter.InstallerThread.load(InstallerThread.java:211)
        at com.sun.enterprise.v3.admin.adapter.InstallerThread.run(InstallerThread.java:100)
        ]]

        start GF Server Admin Console (http://localhost:4848/common/index.jsf)

        Can you please reopen it to further investigate?

        Regards, Xianwu

        Show
        xianwu added a comment - Hi Jeff The problem is not fixed in 4.0.1 (b02-07_22_2013 build). To reproduce the problem, you need to start GF Server Admin Console. Below are modified steps. Reproducible operational steps: asadmin start-domain asadmin set server.security-service.jacc=h.b.aaaa asadmin stop-domain asadmin start-domain You can see the message below in the server.log [2013-07-23T13:44:01.478+1000] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core.security] [tid: _ThreadID=114 _ThreadName=Thread-18] [timeMillis: 1374551041478] [levelValue: 1000] [[ jaccfactory.notfound]] [2013-07-23T13:44:01.478+1000] [glassfish 4.0] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=114 _ThreadName=Thread-18] [timeMillis: 1374551041478] [levelValue: 1000] [[ Exception during lifecycle processing org.glassfish.deployment.common.DeploymentException: Error in generating security policy for __admingui – javax.security.jacc.PolicyContextException: java.lang.ClassNotFoundException: JACC:Error PolicyConfigurationFactory : cannot find class : null at com.sun.enterprise.security.web.integration.WebSecurityManagerFactory.createManager(WebSecurityManagerFactory.java:305) at com.sun.enterprise.security.ee.SecurityDeployer.loadPolicy(SecurityDeployer.java:234) at com.sun.enterprise.security.ee.SecurityDeployer.access$000(SecurityDeployer.java:87) at com.sun.enterprise.security.ee.SecurityDeployer$AppDeployEventListener.event(SecurityDeployer.java:135) at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131) at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:233) at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:313) at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493) at com.sun.enterprise.v3.server.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:406) at com.sun.enterprise.v3.admin.adapter.InstallerThread.load(InstallerThread.java:211) at com.sun.enterprise.v3.admin.adapter.InstallerThread.run(InstallerThread.java:100) ]] start GF Server Admin Console ( http://localhost:4848/common/index.jsf ) Can you please reopen it to further investigate? Regards, Xianwu
        Hide
        xianwu added a comment -

        Hi Jeff

        Sorry, I inserted server.log in a wrong block.

        Here is the correction.

        Reproducible operational steps:

        asadmin start-domain

        asadmin set server.security-service.jacc=h.b.aaaa

        asadmin stop-domain

        asadmin start-domain

        start GF Server Admin Console (http://localhost:4848/common/index.jsf)

        You can see the message below in the server.log

        [2013-07-23T13:44:01.478+1000] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core.security] [tid: _ThreadID=114 _ThreadName=Thread-18] [timeMillis: 1374551041478] [levelValue: 1000] [[
        jaccfactory.notfound]]

        [2013-07-23T13:44:01.478+1000] [glassfish 4.0] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=114 _ThreadName=Thread-18] [timeMillis: 1374551041478] [levelValue: 1000] [[
        Exception during lifecycle processing
        org.glassfish.deployment.common.DeploymentException: Error in generating security policy for __admingui – javax.security.jacc.PolicyContextException: java.lang.ClassNotFoundException: JACC:Error PolicyConfigurationFactory : cannot find class : null
        at com.sun.enterprise.security.web.integration.WebSecurityManagerFactory.createManager(WebSecurityManagerFactory.java:305)
        at com.sun.enterprise.security.ee.SecurityDeployer.loadPolicy(SecurityDeployer.java:234)
        at com.sun.enterprise.security.ee.SecurityDeployer.access$000(SecurityDeployer.java:87)
        at com.sun.enterprise.security.ee.SecurityDeployer$AppDeployEventListener.event(SecurityDeployer.java:135)
        at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
        at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:233)
        at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:313)
        at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
        at com.sun.enterprise.v3.server.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:406)
        at com.sun.enterprise.v3.admin.adapter.InstallerThread.load(InstallerThread.java:211)
        at com.sun.enterprise.v3.admin.adapter.InstallerThread.run(InstallerThread.java:100)
        ]]

        Can you please reopen it to further investigate?

        Regards, Xianwu

        Show
        xianwu added a comment - Hi Jeff Sorry, I inserted server.log in a wrong block. Here is the correction. Reproducible operational steps: asadmin start-domain asadmin set server.security-service.jacc=h.b.aaaa asadmin stop-domain asadmin start-domain start GF Server Admin Console ( http://localhost:4848/common/index.jsf ) You can see the message below in the server.log [2013-07-23T13:44:01.478+1000] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core.security] [tid: _ThreadID=114 _ThreadName=Thread-18] [timeMillis: 1374551041478] [levelValue: 1000] [[ jaccfactory.notfound]] [2013-07-23T13:44:01.478+1000] [glassfish 4.0] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=114 _ThreadName=Thread-18] [timeMillis: 1374551041478] [levelValue: 1000] [[ Exception during lifecycle processing org.glassfish.deployment.common.DeploymentException: Error in generating security policy for __admingui – javax.security.jacc.PolicyContextException: java.lang.ClassNotFoundException: JACC:Error PolicyConfigurationFactory : cannot find class : null at com.sun.enterprise.security.web.integration.WebSecurityManagerFactory.createManager(WebSecurityManagerFactory.java:305) at com.sun.enterprise.security.ee.SecurityDeployer.loadPolicy(SecurityDeployer.java:234) at com.sun.enterprise.security.ee.SecurityDeployer.access$000(SecurityDeployer.java:87) at com.sun.enterprise.security.ee.SecurityDeployer$AppDeployEventListener.event(SecurityDeployer.java:135) at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131) at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:233) at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:313) at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493) at com.sun.enterprise.v3.server.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:406) at com.sun.enterprise.v3.admin.adapter.InstallerThread.load(InstallerThread.java:211) at com.sun.enterprise.v3.admin.adapter.InstallerThread.run(InstallerThread.java:100) ]] Can you please reopen it to further investigate? Regards, Xianwu

          People

          • Assignee:
            JeffTancill
            Reporter:
            xianwu
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated: