|
From: <tho...@tr...> - 2004-04-05 18:10:57
|
I downloaded the new Sun Java System Application Server Platform Edition 8 (who names these things?) and did deploy my sample apps succesfully. I did run in to problems though, when I turned on transaction proxying using CGLIB. It's a security issue that I know was discussed earlier for some other environment. I think that there was some changes made to CGLIB to deal with this issue, but I don't recall the details. If this app server platform ever takes off, I'm sure we will encounter this problem more frequently and we should probably come up with either a fix or some instructions for how to avoid it. Thomas P.S. Here is the stack trace: [#|2004-04-05T13:55:20.924-0400|SEVERE|sun-appserver-pe8.0|org.springframework.web.context.ContextLoader|_ThreadID=19;|Context initialization failed java.lang.ExceptionInInitializerError at net.sf.cglib.core.KeyFactory$Generator.generateClass(KeyFactory.java:199) at net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:63) at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:190) at net.sf.cglib.core.KeyFactory$Generator.create(KeyFactory.java:177) at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:149) at net.sf.cglib.proxy.Enhancer.<clinit>(Enhancer.java:96) at org.springframework.aop.framework.Cglib2AopProxy.getProxy(Cglib2AopProxy.java:224) at org.springframework.aop.framework.Cglib2AopProxy.getProxy(Cglib2AopProxy.java:213) at org.springframework.aop.framework.ProxyFactory.getProxy(ProxyFactory.java:63) at org.springframework.transaction.interceptor.TransactionProxyFactoryBean.afterPropertiesSet(TransactionProxyFactoryBean.java:230) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:707) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:202) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:159) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:172) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:265) at org.springframework.web.context.support.XmlWebApplicationContext.refresh(XmlWebApplicationContext.java:125) at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:154) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:95) at org.springframework.web.context.ContextLoaderServlet.init(ContextLoaderServlet.java:80) at javax.servlet.GenericServlet.init(GenericServlet.java:261) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:289) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileged(Subject.java:500) at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:311) at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:205) at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:158) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1044) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:892) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3852) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4154) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:873) at org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:171) at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:193) at java.security.AccessController.doPrivileged(Native Method) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:855) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:623) at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:947) at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:729) at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:147) at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:224) at com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:488) at com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:475) at com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:302) at com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:107) at com.sun.enterprise.admin.server.core.mbean.config.ManagedServerInstance.multicastEvent(ManagedServerInstance.java:3880) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sun.enterprise.admin.server.core.jmx.Introspector.invokeMethodOn(Introspector.java:181) at com.sun.enterprise.admin.server.core.mbean.config.AdminBase.invoke(AdminBase.java:86) at com.sun.enterprise.admin.server.core.mbean.config.ConfigMBeanBase.invoke(ConfigMBeanBase.java:680) at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:221) at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:228) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:823) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54) at $Proxy1.invoke(Unknown Source) at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:282) at com.sun.enterprise.deployment.phasing.DeploymentService.multicastEvent(DeploymentService.java:341) at com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent(ServerDeploymentTarget.java:284) at com.sun.enterprise.deployment.phasing.StartPhase.runPhase(StartPhase.java:115) at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:74) at com.sun.enterprise.deployment.phasing.DeploymentService.executePhases(DeploymentService.java:233) at com.sun.enterprise.deployment.phasing.DeploymentService.deploy(DeploymentService.java:150) at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.deploy(ApplicationsConfigMBean.java:275) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:287) at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:280) at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:221) at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:228) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:823) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54) at $Proxy1.invoke(Unknown Source) at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:282) at com.sun.enterprise.tools.admingui.util.MBeanUtil.invoke(MBeanUtil.java:105) at com.sun.enterprise.tools.admingui.util.MBeanUtil.invoke(MBeanUtil.java:35) at com.sun.enterprise.tools.admingui.handlers.DeploymentHandler.deploy(DeploymentHandler.java:98) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sun.enterprise.tools.guiframework.view.DescriptorViewHelper.invokeHandler(DescriptorViewHelper.java:785) at com.sun.enterprise.tools.guiframework.view.DescriptorViewHelper.dispatchEvent(DescriptorViewHelper.java:731) at com.sun.enterprise.tools.guiframework.view.DescriptorViewHelper.execute(DescriptorViewHelper.java:250) at com.sun.enterprise.tools.guiframework.view.DescriptorViewBeanBase.execute(DescriptorViewBeanBase.java:187) at com.iplanet.jato.view.RequestHandlingViewBase.handleRequest(RequestHandlingViewBase.java:308) at com.iplanet.jato.view.ViewBeanBase.dispatchInvocation(ViewBeanBase.java:822) at com.iplanet.jato.view.ViewBeanBase.invokeRequestHandlerInternal(ViewBeanBase.java:760) at com.iplanet.jato.view.ViewBeanBase.invokeRequestHandlerInternal(ViewBeanBase.java:780) at com.iplanet.jato.view.ViewBeanBase.invokeRequestHandler(ViewBeanBase.java:590) at com.iplanet.jato.ApplicationServletBase.dispatchRequest(ApplicationServletBase.java:951) at com.iplanet.jato.ApplicationServletBase.processRequest(ApplicationServletBase.java:622) at com.sun.enterprise.tools.guiframework.view.BaseServlet.processRequest(BaseServlet.java:186) at com.iplanet.jato.ApplicationServletBase.doPost(ApplicationServletBase.java:480) at javax.servlet.http.HttpServlet.service(HttpServlet.java:768) at javax.servlet.http.HttpServlet.service(HttpServlet.java:861) at sun.reflect.GeneratedMethodAccessor51.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:289) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAsPrivileged(Subject.java:500) at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:311) at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:205) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:283) at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:102) at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:192) at java.security.AccessController.doPrivileged(Native Method) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:156) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:569) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:261) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:215) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:156) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:583) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:154) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:569) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:200) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:156) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:180) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:154) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:582) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:154) at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceValve.java:134) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:154) at com.sun.enterprise.security.web.SingleSignOn.invoke(SingleSignOn.java:305) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:154) at com.sun.enterprise.web.VirtualServerValve.invoke(VirtualServerValve.java:209) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:154) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:569) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:161) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:156) at com.sun.enterprise.web.VirtualServerMappingValve.invoke(VirtualServerMappingValve.java:166) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:154) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:569) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:979) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:211) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:692) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:647) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:589) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:691) at java.lang.Thread.run(Thread.java:534) Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission getProtectionDomain) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:269) at java.security.AccessController.checkPermission(AccessController.java:401) at java.lang.SecurityManager.checkPermission(SecurityManager.java:524) at java.lang.Class.getProtectionDomain(Class.java:1384) at net.sf.cglib.core.ReflectUtils$1.run(ReflectUtils.java:79) at java.security.AccessController.doPrivileged(Native Method) at net.sf.cglib.core.ReflectUtils.<clinit>(ReflectUtils.java:75) ... 158 more |#] |