【问题标题】:How to add properties to the WEB.XML file using Grails WebXmlConfig Plugin?如何使用 Grails WebXmlConfig 插件向 WEB.XML 文件添加属性?
【发布时间】:2013-05-28 13:03:16
【问题描述】:

我正在使用 Grails 的 WebXmlConfig Plugin。我使用插件的 1.4.1 版本。我做到了:

grails create-web-xml-config

生成 grails-app/conf/WebXmlConfig.groovy 文件。当我尝试添加一个简单的属性时:

sessionConfig.sessionTimeout = 30

我收到以下错误:

 java.lang.IllegalArgumentException: <session-config> element is limited to 1 occurrence
at org.apache.catalina.startup.SetSessionConfig.begin(WebRuleSet.java:769)
at org.apache.tomcat.util.digester.Digester.startElement(Digester.java:1276)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537)
at org.apache.catalina.startup.ContextConfig.parseWebXml(ContextConfig.java:1890)
at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1259)
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:878)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:369)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5269)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)

当我执行 grails install-templates 并从生成的 web.xml 文件中删除会话超时时,它就可以工作了。如何在不修改原始 web.xml 的情况下配置 WebXmlConfig.groovy?

【问题讨论】:

  • 您使用的是哪个版本的插件?
  • 我使用的是 1.4.1 版本的插件。
  • 由于this JIRA issue。查看解决方法和 Burt 的评论。

标签: grails web.xml grails-plugin grails-2.0


【解决方案1】:

为什么不直接使用 grails install-templates 并修改默认的 web.xml 文件,作为一种解决方法?

【讨论】:

  • 不再在 grails 3.x 中工作。那里鼓励使用 Spring Boot。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-12-04
  • 1970-01-01
  • 1970-01-01
  • 2014-09-18
  • 2021-06-26
  • 1970-01-01
  • 2013-10-19
相关资源
最近更新 更多