Spring 3.0.5 / Tiles 2.2错误

时间:2011-08-11 23:10:04

标签: spring-mvc tiles

我在生产环境中使用了大量应用程序。我的瓷砖设置很复杂,每页有很多瓷砖。除了一件事外,该应用程序运行良好。启动服务器后,第一页加载会引发异常,

中的错误
apache.commons.digester.Digester at line 789/Digester.getParser

它抛出了这个:

UnsupportedOperationException:: This parser does not support specification "null" version null" 

令人惊奇的是,这个错误只发生在第一页加载,所有后续加载工作正常。寻求帮助,让我知道您需要什么信息。提前谢谢。

这是嵌套的堆栈跟踪:

ERROR 08-12-11 15:30:05 (apache.commons.digester.Digester:789) ***Digester.getParser: ***
java.lang.UnsupportedOperationException: This parser does not support specification "null" version "null"
    at javax.xml.parsers.SAXParserFactory.setXIncludeAware(SAXParserFactory.java:448)
    at org.apache.commons.digester.Digester.getFactory(Digester.java:534)
    at org.apache.commons.digester.Digester.getParser(Digester.java:786)
    at org.apache.commons.digester.Digester.getXMLReader(Digester.java:1058)
    at org.apache.commons.digester.Digester.parse(Digester.java:1887)
    at org.apache.tiles.definition.digester.DigesterDefinitionsReader.read(DigesterDefinitionsReader.java:329)
    at org.apache.tiles.definition.dao.BaseLocaleUrlDefinitionDAO.loadDefinitionsFromURL(BaseLocaleUrlDefinitionDAO.java:276)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(CachingLocaleUrlDefinitionDAO.java:251)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(ResolvingLocaleUrlDefinitionDAO.java:65)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadParentDefinitions(ResolvingLocaleUrlDefinitionDAO.java:58)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(CachingLocaleUrlDefinitionDAO.java:239)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(ResolvingLocaleUrlDefinitionDAO.java:65)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadParentDefinitions(ResolvingLocaleUrlDefinitionDAO.java:58)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(CachingLocaleUrlDefinitionDAO.java:239)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(ResolvingLocaleUrlDefinitionDAO.java:65)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitions(CachingLocaleUrlDefinitionDAO.java:222)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.checkAndloadDefinitions(CachingLocaleUrlDefinitionDAO.java:204)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.getDefinitions(CachingLocaleUrlDefinitionDAO.java:154)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.getDefinition(CachingLocaleUrlDefinitionDAO.java:123)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.getDefinition(CachingLocaleUrlDefinitionDAO.java:54)
    at org.apache.tiles.definition.UnresolvingLocaleDefinitionsFactory.getDefinition(UnresolvingLocaleDefinitionsFactory.java:105)
    at org.apache.tiles.impl.BasicTilesContainer.getDefinition(BasicTilesContainer.java:364)
    at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:618)
    at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:321)
    at org.springframework.web.servlet.view.tiles2.TilesView.renderMergedOutputModel(TilesView.java:124)
    at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1047)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:817)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3498)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
    at weblogic.servlet.security.internal.AuthFilterChain$LastFilter.doFilter(AuthFilterChain.java:45)
    at weblogic.servlet.security.internal.AuthFilterChain.doFilter(AuthFilterChain.java:37)
    at com.bea.common.security.internal.service.NegotiateIdentityAsserterServiceImpl.callChain(NegotiateIdentityAsserterServiceImpl.java:145)
    at com.bea.common.security.internal.service.NegotiateIdentityAsserterServiceImpl.process(NegotiateIdentityAsserterServiceImpl.java:132)
    at sun.reflect.GeneratedMethodAccessor679.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.bea.common.security.internal.utils.Delegator$ProxyInvocationHandler.invoke(Delegator.java:57)
    at $Proxy19.process(Unknown Source)
    at weblogic.security.providers.authentication.NegotiateIdentityAsserterServletAuthenticationFilter.doFilter(NegotiateIdentityAsserterServletAuthenticationFilter.java:35)
    at weblogic.servlet.security.internal.AuthFilterChain.doFilter(AuthFilterChain.java:37)
    at weblogic.servlet.security.internal.SecurityModule$ServletAuthenticationFilterAction.run(SecurityModule.java:612)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    at weblogic.servlet.security.internal.SecurityModule.invokeAuthFilterChain(SecurityModule.java:501)
    at weblogic.servlet.security.internal.CertSecurityModule.checkUserPerm(CertSecurityModule.java:97)
    at weblogic.servlet.security.internal.SecurityModule.checkAccess(SecurityModule.java:106)
    at weblogic.servlet.security.internal.ServletSecurityManager.checkAccess(ServletSecurityManager.java:82)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2116)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

完整堆栈跟踪(上述错误嵌套在此异常中):

GET /*****_Cust_Search/CustomerDetail?customerId=9 HTTP/1.1
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.107 Safari/535.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: nde-textsize=16px; JSESSIONID_CUSTDETAIL=Bnx0TByHMyvvyDBGb0p9TgCDy1h0n2hlzpckxhdYTsCQ5nJLVSzB!1674277528; ADMINCONSOLESESSION=Gh8nTD9Zpcn26tJBNLVl6q1ZqpQ1jrKTT27ZDL6yLvvvLLC2gjwZ!-975699351; JSESSIONID_CUST=l6GGTGKFYQV1cZ8cnJs2G2891JWclP6FnsDr1vL8bPXvTQpJjn9H!-975699351; JSESSIONID_INSURANCEDETAIL=J1lvTGKQ9G13SM8vYMzG1QPB2R939HQDMgHyJM1GpLG6fyvTJHVX!-975699351; JSESSIONID=gpGtTGYfTKwqh9dG6Q1T305LnbHpGJr6WVNHbx6TQwglXc9lPqgL!-975699351

]] Root cause of ServletException.
java.lang.NullPointerException
    at org.apache.commons.digester.Digester.getXMLReader(Digester.java:1058)
    at org.apache.commons.digester.Digester.parse(Digester.java:1887)
    at org.apache.tiles.definition.digester.DigesterDefinitionsReader.read(DigesterDefinitionsReader.java:329)
    at org.apache.tiles.definition.dao.BaseLocaleUrlDefinitionDAO.loadDefinitionsFromURL(BaseLocaleUrlDefinitionDAO.java:276)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(CachingLocaleUrlDefinitionDAO.java:251)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(ResolvingLocaleUrlDefinitionDAO.java:65)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadParentDefinitions(ResolvingLocaleUrlDefinitionDAO.java:58)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(CachingLocaleUrlDefinitionDAO.java:239)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(ResolvingLocaleUrlDefinitionDAO.java:65)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadParentDefinitions(ResolvingLocaleUrlDefinitionDAO.java:58)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(CachingLocaleUrlDefinitionDAO.java:239)
    at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadDefinitionsFromURLs(ResolvingLocaleUrlDefinitionDAO.java:65)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitions(CachingLocaleUrlDefinitionDAO.java:222)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.checkAndloadDefinitions(CachingLocaleUrlDefinitionDAO.java:204)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.getDefinitions(CachingLocaleUrlDefinitionDAO.java:154)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.getDefinition(CachingLocaleUrlDefinitionDAO.java:123)
    at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.getDefinition(CachingLocaleUrlDefinitionDAO.java:54)
    at org.apache.tiles.definition.UnresolvingLocaleDefinitionsFactory.getDefinition(UnresolvingLocaleDefinitionsFactory.java:105)
    at org.apache.tiles.impl.BasicTilesContainer.getDefinition(BasicTilesContainer.java:364)
    at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:618)
    at org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:321)
    at org.springframework.web.servlet.view.tiles2.TilesView.renderMergedOutputModel(TilesView.java:124)
    at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1047)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:817)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3498)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

这是root-context.xml。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

    <!-- Root Context: defines shared resources visible to all other web components -->

    <bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
        <property name="definitions">
            <list>
                <value>/WEB-INF/tiles/Templates.xml</value>
            </list>
        </property>
        <property name="preparerFactoryClass" value="org.springframework.web.servlet.view.tiles2.SpringBeanPreparerFactory"/>
    </bean>
</beans>

这是servlet-context.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/mvc"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:beans="http://www.springframework.org/schema/beans"
    xsi:schemaLocation="
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

    <!-- DispatcherServlet Context: defines this servlet's request-processing infrastructure -->

    <!-- Enables the Spring MVC @Controller programming model -->
    <annotation-driven />

    <!-- Resolves views selected for rendering by @Controllers to .jsp resources in the /WEB-INF/views directory -->
<!--    <beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">-->
<!--        <beans:property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>-->
<!--        <beans:property name="prefix" value="/WEB-INF/views/" />-->
<!--        <beans:property name="suffix" value=".jsp" />-->
<!--    </beans:bean>-->

    <!-- Imports user-defined @Controller beans that process client requests -->
    <beans:import resource="controllers.xml" />
        <beans:bean class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
        <beans:property name="basename" value="tiles"/>
    </beans:bean>

    <beans:bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
        <beans:property name="basenames">
            <beans:list>
                <beans:value>customer</beans:value> 
            </beans:list>
        </beans:property>
    </beans:bean>

</beans:beans>

controllers.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd  
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">

    <!-- Scans within the base package of the application for @Components to configure as beans -->
    <context:component-scan base-package="redacted.controllers" />

</beans>

tiles.properties

CustomerTile.(class)=org.springframework.web.servlet.view.tiles2.TilesView
CustomerTile.url=CustomerTile
CustomerSearchForm.(class)=org.springframework.web.servlet.view.tiles2.TilesView
CustomerSearchForm.url=CustomerSearchForm
CustomerSearchResults.(class)=org.springframework.web.servlet.view.tiles2.TilesView
CustomerSearchResults.url=CustomerSearchResults
EditCustomer.(class)=org.springframework.web.servlet.view.tiles2.TilesView
EditCustomer.url=EditCustomer
NewCustomer.(class)=org.springframework.web.servlet.view.tiles2.TilesView
NewCustomer.url=NewCustomer

(我的平铺模板)templates.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tiles-definitions PUBLIC
       "-//Apache Software Foundation//DTD Tiles Configuration 2.1//EN"
       "http://tiles.apache.org/dtds/tiles-config_2_1.dtd">
<tiles-definitions>
    <definition name="baseLayout" template="/WEB-INF/tiles/main-container-tile.jsp">
        <put-attribute name="title" value="AMHOM" />
        <put-attribute name="header" value="normalheader" />
        <put-attribute name="body" value="/WEB-INF/tiles/body.jsp" />
        <put-attribute name="footer" value="/WEB-INF/tiles/footer-tile.jsp" />
    </definition>

    <definition name="baseLayout2" template="/WEB-INF/tiles/main-container-tile.jsp">
        <put-attribute name="title" value="AMHOM" />
        <put-attribute name="header" value="custdetailheader" />
        <put-attribute name="body" value="/WEB-INF/tiles/body.jsp" />
        <put-attribute name="footer" value="/WEB-INF/tiles/footer-tile.jsp" />
    </definition>

    <definition name="baseLayout3" template="/WEB-INF/tiles/main-container-tile.jsp">
        <put-attribute name="title" value="AMHOM" />
        <put-attribute name="header" value="editcustheader" />
        <put-attribute name="body" value="/WEB-INF/tiles/body.jsp" />
        <put-attribute name="footer" value="/WEB-INF/tiles/footer-tile.jsp" />
    </definition>

    <definition name="normalheader" template="/WEB-INF/tiles/header-tile.jsp">
        <put-attribute name="menutabs" value="/WEB-INF/tiles/tabs.jsp" />
    </definition>

    <definition name="notabsheader" template="/WEB-INF/tiles/header-tile.jsp">
        <put-attribute name="menutabs" value="/WEB-INF/tiles/notabs.jsp" />
    </definition>

    <definition name="custdetailheader" template="/WEB-INF/tiles/header-tile.jsp">
        <put-attribute name="menutabs" value="/WEB-INF/tiles/custdetail_tabs-tile.jsp" />
    </definition>

    <definition name="editcustheader" template="/WEB-INF/tiles/header-tile.jsp">
        <put-attribute name="menutabs" value="/WEB-INF/tiles/editcust_tabs-tile.jsp" />
    </definition>

    <definition name="completecust" template="/WEB-INF/tiles/custdetail_complete-tile.jsp">
        <put-attribute name="navigation" value="/WEB-INF/tiles/custdetail_cpapnav-tile.jsp" />
        <put-attribute name="customertile" value="/WEB-INF/tiles/custdetail_content-tile.jsp" />
        <put-attribute name="diagtile" value="/WEB-INF/tiles/custdetail_diagnosis-tile.jsp" />
        <put-attribute name="resptile" value="/WEB-INF/tiles/custdetail_responsibleparty-tile.jsp" />
        <put-attribute name="doctortile" value="/WEB-INF/tiles/custdetail_doctor-tile.jsp" />
        <put-attribute name="insurancetile" value="/WEB-INF/tiles/custdetail_insurance-tile.jsp" />
    </definition>

    <definition name="customersearch" template="/WEB-INF/tiles/customersearch_complete-tile.jsp">
        <put-attribute name="errors-tile" value="/WEB-INF/tiles/customersearchform_errors-tile.jsp" />
        <put-attribute name="content-tile" value="/WEB-INF/tiles/customersearchform_content-tile.jsp" />
    </definition>

    <definition name="custsearchresults" template="/WEB-INF/tiles/custsearchresults_complete-tile.jsp">
        <put-attribute name="errors-tile" value="/WEB-INF/tiles/customersearchform_errors-tile.jsp" />
        <put-attribute name="content-tile" value="/WEB-INF/tiles/custsearchresults_content-tile.jsp" />
    </definition>

    <definition name="editcust" template="/WEB-INF/tiles/editcust_complete-tile.jsp">
        <put-attribute name="navigation" value="/WEB-INF/tiles/custdetail_cpapnav-tile.jsp" />
        <put-attribute name="editcustomertile" value="/WEB-INF/tiles/editcust_content-tile.jsp" />
    </definition>

    <definition name="newcust" template="/WEB-INF/tiles/newcust_complete-tile.jsp">
        <put-attribute name="navigation" value="" />
        <put-attribute name="newcustomertile" value="/WEB-INF/tiles/newcust_content-tile.jsp" />
    </definition>

    <definition name="CustomerSearchForm" extends="baseLayout">
        <put-attribute name="title" value="" />
        <put-attribute name="appName" value="Customer Search" />
        <put-attribute name="body" value="customersearch" />
    </definition>
    <definition name="CustomerSearchResults" extends="baseLayout">
        <put-attribute name="title" value="" />
        <put-attribute name="appName" value="Customer Search" />
        <put-attribute name="body" value="custsearchresults" />
    </definition>
    <definition name="CustomerTile" extends="baseLayout2">
        <put-attribute name="title" value="Customer Display" />
        <put-attribute name="appName" value="Customer Display" />
        <put-attribute name="body" value="completecust" />
    </definition>
    <definition name="EditCustomer" extends="baseLayout3">
        <put-attribute name="title" value="Edit Customer" />
        <put-attribute name="appName" value="Edit Customer" />
        <put-attribute name="body" value="editcust" />
    </definition>
    <definition name="NewCustomer" extends="baseLayout3">
        <put-attribute name="title" value="New Customer" />
        <put-attribute name="appName" value="New Customer" />
        <put-attribute name="body" value="newcust" />
    </definition>

</tiles-definitions>

6 个答案:

答案 0 :(得分:9)

今天我遇到了这个问题,所以我想添加一个帖子,问题是因为AppSensor(实际上是它的ESAPI 2.0GA依赖),它的包括两个不同版本的xerces(来自xom depenency的2.6.1) ,以及2.8.1来自antisamy依赖),但2.6.1出现在2.8.1之前,因此不包括2.8.1并且发生异常。

通过在我的POM中的AppSensor依赖项之前添加一个2.8.1依赖项来修复:

<dependency>
    <groupId>xerces</groupId>
    <artifactId>xercesImpl</artifactId>
    <version>2.8.1</version>
</dependency>
<dependency>
    <groupId>org.owasp.appsensor</groupId>
    <artifactId>AppSensor</artifactId>
    <version>${appsensor.version}</version>
</dependency>       

答案 1 :(得分:4)

weblogic windows安装存在一些问题。 在setDomainEnv.cmd中设置此值并重新启动服务器。

set JAVA_OPTIONS=%JAVA_OPTIONS% -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl

答案 2 :(得分:2)

我遇到了同样的问题。它与my xerces version有关。

答案 3 :(得分:2)

我遇到了与提到before完全相同的问题。将xercesImpl包更新到最新版本(2.9.1为我工作)。如果您正在使用maven处理依赖项,请覆盖pom.xml文件的dependencyManagement部分中的版本。

答案 4 :(得分:2)

Spring 3.2.1与tile 2.2.2引起了同样的错误。它是通过更新xerxesimpl来解决的。这是pom.xml的片段

        <properties>        
    <java-version>1.6</java-version>            
    <org.slf4j.version>1.5.8</org.slf4j.version>
    <log4j.version>1.2.16</log4j.version>
    <xercesImpl.version>2.9.1</xercesImpl.version>
    <org.springframework-version>3.1.2.RELEASE</org.springframework-version>
    <tiles.core.api.servlet.jsp.version>2.2.2</tiles.core.api.servlet.jsp.version>
    </properties>

答案 5 :(得分:0)

如果您执行愚蠢的操作(例如复制文件顶部的标记),也会出现此错误:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC
    "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN"
    "http://tiles.apache.org/dtds/tiles-config_3_0.dtd">
<tiles-definitions>
<tiles-definitions>
    <definition name="base.page.definition" template="/WEB-INF/layout/basePageLayout.jsp">
...

希望你的眼睛比我的眼睛更清晰,你不必一路走到SO那里去实现你的眼睛......:)