【问题标题】:Caught exception while loading file struts-default.xml加载文件 struts-default.xml 时捕获异常
【发布时间】:2010-01-06 22:34:58
【问题描述】:

我对 Java 并不陌生。我以前用它做过很多事情。但我正在从 PHP 迁移到 Java Servlet/JSP(我是 am 新手),我无法找出这个错误来挽救我的生命。我使用 Ubuntu 9.04 的 Synaptic 包管理器安装了 Tomcat6,它的运行就像一个魅力。但是当我将 struts 放入我的 WEB-INF/lib 目录并尝试制作一个 struts 应用程序时,我在日志文件中得到以下内容。

我使用struts-blank.war启动项目,所以web.xml和struts 2.1.8.1中提供的一样。

读取 struts-default.xml 文件似乎存在一些问题。

提前致谢

严重:异常启动过滤器 struts2 无法加载配置。 - 类:java.security.AccessControlContext 文件:AccessControlContext.java 方法:检查权限 行:342 - java/security/AccessControlContext.java:342:-1 在 org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:431) 在 org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69) 在 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51) 在 org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275) 在 org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397) 在 org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:108) 在 org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709) 在 org.apache.catalina.core.StandardContext.start(StandardContext.java:4359) 在 org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) 在 org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:123) 在 org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:145) 在 java.security.AccessController.doPrivileged(本机方法) 在 org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:769) 在 org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) 在 org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:926) 在 org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:889) 在 org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) 在 org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149) 在 org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) 在 org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) 在 org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) 在 org.apache.catalina.core.StandardHost.start(StandardHost.java:719) 在 org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) 在 org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) 在 org.apache.catalina.core.StandardService.start(StandardService.java:516) 在 org.apache.catalina.core.StandardServer.start(StandardServer.java:710) 在 org.apache.catalina.startup.Catalina.start(Catalina.java:578) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:616) 在 org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:616) 在 org.apache.commons.daemon.support.DaemonLoader.start(DaemonLoader.java:177) 原因:无法加载配置。 - 类:java.security.AccessControlContext 文件:AccessControlContext.java 方法:检查权限 行:342 - java/security/AccessControlContext.java:342:-1 在 com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58) 在 org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:374) 在 org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:418) ... 36 更多 原因:加载文件 struts-default.xml 时捕获异常 - 类:java.security.AccessControlContext 文件:AccessControlContext.java 方法:检查权限 行:342 - java/security/AccessControlContext.java:342:-1 在 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:902) 在 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadDocuments(XmlConfigurationProvider.java:143) 在 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.init(XmlConfigurationProvider.java:110) 在 com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:168) 在 com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55) ... 38 更多 引起:java.security.AccessControlException:访问被拒绝(java.util.PropertyPermission xwork.saxParserFactory 读取) 在 java.security.AccessControlContext.checkPermission(AccessControlContext.java:342) 在 java.security.AccessController.checkPermission(AccessController.java:553) 在 java.lang.SecurityManager.checkPermission(SecurityManager.java:549) 在 java.lang.SecurityManager.checkPropertyAccess(SecurityManager.java:1302) 在 java.lang.System.getProperty(System.java:669) 在 com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:78) 在 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:893) ... 42 更多

【问题讨论】:

    标签: exception ubuntu filter struts tomcat6


    【解决方案1】:

    我有一个头脑风暴,我自己想通了。虽然我不认为这是最安全的解决方案,但它适用于我的目的,我并不担心,因为它是一个本地开发服务器,只侦听环回接口 (127.0.0.1)。

    反正解决办法就是把这个加到/etc/tomcat6/policy.d/50local.policy的底部

    grant codeBase "file:${catalina.base}/webapps/-" { 权限 java.security.AllPermission; };

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-30
      • 2012-05-12
      • 2011-03-05
      • 1970-01-01
      • 1970-01-01
      • 2016-05-28
      • 1970-01-01
      • 2020-08-13
      相关资源
      最近更新 更多