2 Replies Latest reply: Jul 24, 2014 9:58 PM by Luz Mestre-Oracle RSS

    NoClassDefFoundError: oracle/security/jps/JpsException

    DominionSpy

      I have a web service developed in JDeveloper 12c (12.1.2) using the Generate Web Service from WSDL option. Inside the service implementation class I create a root application module like so:

       

      ApplicationModule am = Configuration.createRootApplicationModule("xxx.model.XXX_AppModule", "XXX_AppModuleLocal");
      
      

       

      When I test it in the integrated WebLogic server through JDeveloper, the web service works fine. However when I deploy the application (including the web service) to a production WebLogic server, I get the following error in the logs when testing it:

      ####<22-Jul-2014 14:51:09 o'clock BST> <Notice> <StdErr> <XXXXXXXXXXXX> <Engineering> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1406037069434> <BEA-000000> <Jul 22, 2014 2:51:09 PM oracle.adf.share.ADFContext getCurrent

      WARNING: Automatically initializing a DefaultContext for getCurrent.

      Caller should ensure that a DefaultContext is proper for this use.

      Memory leaks and/or unexpected behaviour may occur if the automatic initialization is performed improperly.

      This message may be avoided by performing initADFContext before using getCurrent().

      For more information please enable logging for oracle.adf.share.ADFContext at FINEST level.>

      ####<22-Jul-2014 14:51:10 o'clock BST> <Error> <com.sun.xml.ws.server.sei.TieHandler> <XXXXXXXXXXXX> <Engineering> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1406037070692> <BEA-000000> <oracle/security/jps/JpsException

      java.lang.NoClassDefFoundError: oracle/security/jps/JpsException

        at java.lang.Class.forName0(Native Method)

        at java.lang.Class.forName(Class.java:270)

        at oracle.adf.share.common.ClassUtils.forName(ClassUtils.java:53)

        at oracle.adf.share.security.credentialstore.CredentialStoreContext.getCredentialStorage(CredentialStoreContext.java:186)

        at oracle.adf.share.security.credentialstore.CredentialStoreContext.getCredentialProvisioner(CredentialStoreContext.java:109)

        at oracle.adf.share.security.credentialstore.CredentialProvisioner.<init>(CredentialProvisioner.java:44)

        at oracle.adf.share.jndi.CredentialStoreHelper.<init>(CredentialStoreHelper.java:54)

        at oracle.adf.share.jndi.CredentialStoreHelper.<init>(CredentialStoreHelper.java:48)

        at oracle.adf.share.jndi.ReferenceStoreHelper.loadCredentials(ReferenceStoreHelper.java:1082)

        at oracle.adf.share.jndi.ReferenceStoreHelper.createReference(ReferenceStoreHelper.java:726)

        at oracle.adf.share.jndi.ReferenceStoreHelper.getReferencesMapEx(ReferenceStoreHelper.java:331)

        at oracle.adf.share.jndi.ContextImpl.load(ContextImpl.java:850)

        at oracle.adf.share.jndi.ContextImpl.init(ContextImpl.java:480)

        at oracle.adf.share.jndi.ContextImpl.<init>(ContextImpl.java:78)

        at oracle.adf.share.jndi.InitialContextFactoryImpl.getInitialContext(InitialContextFactoryImpl.java:17)

        at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:684)

        at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:307)

        at javax.naming.InitialContext.init(InitialContext.java:242)

        at javax.naming.InitialContext.<init>(InitialContext.java:216)

        at oracle.adf.share.jndi.AdfInitialContext.<init>(AdfInitialContext.java:93)

        at oracle.adf.share.jndi.AdfInitialContext.newAdfInitialContext(AdfInitialContext.java:74)

        at oracle.adf.share.jndi.AdfJndiConfig.getDefaultConnectionsContext(AdfJndiConfig.java:79)

        at oracle.adf.share.config.FallbackConfigImpl.getDefaultConnectionsContext(FallbackConfigImpl.java:306)

        at oracle.adf.share.config.ADFConfigImpl.getConnectionsContext(ADFConfigImpl.java:755)

        at oracle.jbo.client.CADatabaseConnectionProvider.getDatabaseProvider(CADatabaseConnectionProvider.java:177)

        at oracle.jbo.client.CADatabaseConnectionProvider.loadConnectionProperties(CADatabaseConnectionProvider.java:151)

        at oracle.jbo.client.Configuration.initializeFromConnectionName(Configuration.java:1109)

        at oracle.jbo.client.config.ConfigurationProviderManager.resolveConfiguration(ConfigurationProviderManager.java:113)

        at oracle.jbo.client.config.ConfigurationProviderManager.getConfiguration(ConfigurationProviderManager.java:54)

        at oracle.jbo.common.ampool.PoolMgr.findPool(PoolMgr.java:534)

        at oracle.jbo.client.Configuration.createRootApplicationModule(Configuration.java:1393)

        at xxx.service.util.ServiceUtils.getApplicationModule(ServiceUtils.java:28)

        at com.baesystems.wdms.ELKITInterfaceImpl.getLoomDetail(ELKITInterfaceImpl.java:85)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:606)

        at weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:117)

        at weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:91)

        at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:149)

        at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:88)

        at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:1136)

        at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:1050)

        at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:1019)

        at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:877)

        at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:420)

        at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:687)

        at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:266)

        at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:169)

        at weblogic.wsee.jaxws.WLSServletAdapter.handle(WLSServletAdapter.java:205)

        at weblogic.wsee.jaxws.HttpServletAdapter$AuthorizedInvoke.run(HttpServletAdapter.java:634)

        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)

        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)

        at weblogic.wsee.util.ServerSecurityHelper.authenticatedInvoke(ServerSecurityHelper.java:108)

        at weblogic.wsee.jaxws.HttpServletAdapter$3.run(HttpServletAdapter.java:278)

        at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:287)

        at weblogic.wsee.jaxws.JAXWSServlet.doRequest(JAXWSServlet.java:134)

        at weblogic.servlet.http.AbstractAsyncServlet.service(AbstractAsyncServlet.java:99)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)

        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)

        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)

        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)

        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:341)

        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:238)

        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3363)

        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3333)

        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)

        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)

        at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)

        at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2220)

        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2146)

        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2124)

        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1564)

        at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:254)

        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:295)

        at weblogic.work.ExecuteThread.run(ExecuteThread.java:254)

      Caused By: java.lang.ClassNotFoundException: oracle.security.jps.JpsException

        at java.net.URLClassLoader$1.run(URLClassLoader.java:366)

        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

        at java.lang.Class.forName0(Native Method)

        at java.lang.Class.forName(Class.java:270)

        at oracle.adf.share.common.ClassUtils.forName(ClassUtils.java:53)

        at oracle.adf.share.security.credentialstore.CredentialStoreContext.getCredentialStorage(CredentialStoreContext.java:186)

        at oracle.adf.share.security.credentialstore.CredentialStoreContext.getCredentialProvisioner(CredentialStoreContext.java:109)

        at oracle.adf.share.security.credentialstore.CredentialProvisioner.<init>(CredentialProvisioner.java:44)

        at oracle.adf.share.jndi.CredentialStoreHelper.<init>(CredentialStoreHelper.java:54)

        at oracle.adf.share.jndi.CredentialStoreHelper.<init>(CredentialStoreHelper.java:48)

        at oracle.adf.share.jndi.ReferenceStoreHelper.loadCredentials(ReferenceStoreHelper.java:1082)

        at oracle.adf.share.jndi.ReferenceStoreHelper.createReference(ReferenceStoreHelper.java:726)

        at oracle.adf.share.jndi.ReferenceStoreHelper.getReferencesMapEx(ReferenceStoreHelper.java:331)

        at oracle.adf.share.jndi.ContextImpl.load(ContextImpl.java:850)

        at oracle.adf.share.jndi.ContextImpl.init(ContextImpl.java:480)

        at oracle.adf.share.jndi.ContextImpl.<init>(ContextImpl.java:78)

        at oracle.adf.share.jndi.InitialContextFactoryImpl.getInitialContext(InitialContextFactoryImpl.java:17)

        at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:684)

        at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:307)

        at javax.naming.InitialContext.init(InitialContext.java:242)

        at javax.naming.InitialContext.<init>(InitialContext.java:216)

        at oracle.adf.share.jndi.AdfInitialContext.<init>(AdfInitialContext.java:93)

        at oracle.adf.share.jndi.AdfInitialContext.newAdfInitialContext(AdfInitialContext.java:74)

        at oracle.adf.share.jndi.AdfJndiConfig.getDefaultConnectionsContext(AdfJndiConfig.java:79)

        at oracle.adf.share.config.FallbackConfigImpl.getDefaultConnectionsContext(FallbackConfigImpl.java:306)

        at oracle.adf.share.config.ADFConfigImpl.getConnectionsContext(ADFConfigImpl.java:755)

        at oracle.jbo.client.CADatabaseConnectionProvider.getDatabaseProvider(CADatabaseConnectionProvider.java:177)

        at oracle.jbo.client.CADatabaseConnectionProvider.loadConnectionProperties(CADatabaseConnectionProvider.java:151)

        at oracle.jbo.client.Configuration.initializeFromConnectionName(Configuration.java:1109)

        at oracle.jbo.client.config.ConfigurationProviderManager.resolveConfiguration(ConfigurationProviderManager.java:113)

        at oracle.jbo.client.config.ConfigurationProviderManager.getConfiguration(ConfigurationProviderManager.java:54)

        at oracle.jbo.common.ampool.PoolMgr.findPool(PoolMgr.java:534)

        at oracle.jbo.client.Configuration.createRootApplicationModule(Configuration.java:1393)

        at xxx.service.util.ServiceUtils.getApplicationModule(ServiceUtils.java:28)

        at com.baesystems.wdms.ELKITInterfaceImpl.getLoomDetail(ELKITInterfaceImpl.java:85)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:606)

        at weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:117)

        at weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:91)

        at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:149)

        at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:88)

        at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:1136)

        at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:1050)

        at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:1019)

        at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:877)

        at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:420)

        at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:687)

        at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:266)

        at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:169)

        at weblogic.wsee.jaxws.WLSServletAdapter.handle(WLSServletAdapter.java:205)

        at weblogic.wsee.jaxws.HttpServletAdapter$AuthorizedInvoke.run(HttpServletAdapter.java:634)

        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)

        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)

        at weblogic.wsee.util.ServerSecurityHelper.authenticatedInvoke(ServerSecurityHelper.java:108)

        at weblogic.wsee.jaxws.HttpServletAdapter$3.run(HttpServletAdapter.java:278)

        at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:287)

        at weblogic.wsee.jaxws.JAXWSServlet.doRequest(JAXWSServlet.java:134)

        at weblogic.servlet.http.AbstractAsyncServlet.service(AbstractAsyncServlet.java:99)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)

        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)

        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)

        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)

        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:341)

        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:238)

        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3363)

        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3333)

        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)

        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)

        at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)

        at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2220)

        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2146)

        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2124)

        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1564)

        at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:254)

        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:295)

        at weblogic.work.ExecuteThread.run(ExecuteThread.java:254)

       

      I thought that maybe I needed to include the jsp-api.jar in the WEB-INF/lib directory in the web service WAR file, but that didn't make any difference.

      Any ideas?

       

      For reference, this is the structure of the EAR file that I deployed to the server:

      Application.ear

      /adf

        /META-INF

          /adf-config.xml

          /connections.xml

          /wsm-policy.xml

      /lib

        /adf-loc.jar

      /META-INF

        /application.xml

        /cwallet.sso

        /weblogic-application.xml

      /View.war (contains Trinidad pages and ADF BC classes)

      ...

      /WebService.war (contains web service and ADF BC classes)

        /WEB-INF

          /classes

          ...

          /lib

            ...

            /jps-api.jar

            ...

          /wsdl

            /XXXService.wsdl

            /xxx.xsd

          /web.xml

          /weblogic.xml