【问题标题】:Jruby rails application on Tomcat. War generated through warblerTomcat 上的 Jruby 轨道应用程序。通过莺产生的战争
【发布时间】:2011-07-08 10:59:28
【问题描述】:

我正在使用 warbler 来创建我的 Jruby 应用程序的战争。它毫无问题地引发了一场战争,但是当我将它部署在 tomcat (webapps) 中时,它给了我以下异常:

SEVERE: Parse error in application web.xml file at jndi:/localhost/POC_Rails_1_3_1_/WEB-INF/web.xml
org.xml.sax.SAXParseException: Comment must start with "<!--".
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231)

生成的(WEB-INF/web.xml)如下。如果我忘记配置某些内容,请告诉我。

    <!DOCTYPE web-app PUBLIC
  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
  "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>

  <context-param>
    <param-name>public.root</param-name>
    <param-value>/</param-value>
  </context-param>

  <context-param>
    <param-name>rails.env</param-name>
    <param-value>developement</param-value>
  </context-param>


  <filter>
    <filter-name>RackFilter</filter-name>
    <filter-class>org.jruby.rack.RackFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>RackFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

  <listener>
    <listener-class>org.jruby.rack.rails.RailsServletContextListener</listener-class>
  </listener>


</web-app>
<!DOCTYPE web-app PUBLIC
  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
  "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>

  <context-param>
    <param-name>public.root</param-name>
    <param-value>/</param-value>
  </context-param>

  <context-param>
    <param-name>rails.env</param-name>
    <param-value>developement</param-value>
  </context-param>


  <filter>
    <filter-name>RackFilter</filter-name>
    <filter-class>org.jruby.rack.RackFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>RackFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

  <listener>
    <listener-class>org.jruby.rack.rails.RailsServletContextListener</listener-class>
  </listener>


</web-app>

【问题讨论】:

  • 如果它是您的 web.xml 的精确副本,那么显然它是重复的,因此是无效的 xml。删除 之后的所有内容,然后重试。

标签: ruby-on-rails tomcat jruby warbler


【解决方案1】:

正如第一个评论者提到的那样,由于duplicate &lt;web-app&gt; and &lt;!DOCTYPE,xml 无效。解析器错误与&lt;! 有关。 &lt;! 用于声明文档类型,它只能出现在根元素的开始之前。任何后续出现都将被视为评论的开始。还有评论needs -- after &lt;!

【讨论】:

    猜你喜欢
    • 2017-05-26
    • 2015-10-03
    • 1970-01-01
    • 2015-12-16
    • 2012-01-17
    • 2014-04-28
    • 1970-01-01
    • 2015-04-24
    • 2017-12-21
    相关资源
    最近更新 更多