2015-09-05 2 views
0

Я сначала использую плитки apache, и у меня небольшая проблема, потому что веб-сайт не может видеть заголовки apache. Ниже приведены источники. Я сделал, как здесь enter link description hereПлитки apache не работают с Spring MVC

CarController.java

@Controller 
public class HomeController { 
    @RequestMapping(value = "/index") 
    public String index() { 
     return "index"; 
    } 
} 

general.xml

<?xml version="1.0" encoding="ISO-8859-1" ?> 
<!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> 
    <definition name="common" template="/WEB-INF/layout/classic.jsp"> 
     <put-attribute name="footer" value="/WEB-INF/layout/footer.jsp" /> 
    </definition> 

    <definition name="index" extends="common"> 
     <put-attribute name="title" value="Java Blog agragator" /> 
     <put-attribute name="body" value="/WEB-INF/views/index.jsp" /> 
    </definition> 
</tiles-definitions> 

classic.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" 
    pageEncoding="UTF-8"%> 
<%@taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%> 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title><tiles:getAsString name="title"></tiles:getAsString></title> 
</head> 
<body> 
    <tiles:insertAttribute name="body" /> 
    <center><tiles:insertAttribute name="footer" /> 
    </center> 
</body> 
</html> 

footer.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" 
    pageEncoding="UTF-8"%> 

&copy; Author 

servler-context.xml

<bean id="tilesConfigurer" 
    class="org.springframework.web.servlet.view.tiles3.TilesConfigurer"> 
    <property name="definitions"> 
     <list> 
      <value>/WEB-INF/defs/general.xml</value> 
     </list> 
    </property> 
</bean> 

<bean id="viewResolver" 
    class="org.springframework.web.servlet.view.UrlBasedViewResolver"> 
    <property name="viewClass" 
     value="org.springframework.web.servlet.view.tiles3.TilesView" /> 
</bean> 

pom.xml

<dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-context</artifactId> 
      <version>4.0.3.RELEASE</version> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-webmvc</artifactId> 
      <version>4.0.3.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-orm</artifactId> 
      <version>4.0.3.RELEASE</version> 
      <type>jar</type> 
      <scope>compile</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-test</artifactId> 
      <version>4.2.0.RELEASE</version> 
     </dependency> 

    <dependency> 
      <groupId>org.apache.tiles</groupId> 
      <artifactId>tiles-core</artifactId> 
      <version>3.0.5</version> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.tiles</groupId> 
      <artifactId>tiles-jsp</artifactId> 
      <version>3.0.5</version> 
     </dependency> 
     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-api</artifactId> 
      <version>1.7.12</version> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.tiles</groupId> 
      <artifactId>tiles-request-api</artifactId> 
      <version>1.0.6</version> 
     </dependency> 

ответ

0

Изменение сервлет-context.xml в

<bean id="tilesViewResolver" 
     class="org.springframework.web.servlet.view.tiles3.TilesViewResolver"> 
    </bean> 
    <bean id="tilesConfigurer" 
     class="org.springframework.web.servlet.view.tiles3.TilesConfigurer"> 
     <property name="definitions"> 

      <list> 
       <value>/WEB-INF/defs/general.xml</value> 
      </list> 
     </property> 
    </bean> 

В ПОМ удалить другие плитки зависимостей и добавьте ТОЛЬКО ниже

<dependency> 
    <groupId>org.apache.tiles</groupId> 
    <artifactId>tiles-extras</artifactId> 
    <version>3.0.5</version> 
</dependency> 

classic.jsp

<%@ taglib prefix="tiles" uri="http://tiles.apache.org/tags-tiles"%> 

<!DOCTYPE html> 
<html lang="en"> 


<head> 
    <title> 
     <tiles:insertAttribute name="title"> 
     </tiles:insertAttribute> 
    </title> 

</head> 
<body> 
    <div> 
     <tiles:insertAttribute name="body" /> 
    </div> 
    <footer> 
     <tiles:insertAttribute name="footer" /> 
    </footer> 

</body> 

</html> 

general.xml

<?xml version="1.0" encoding="ISO-8859-1" ?> 
<!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> 
    <definition name="common" template="/WEB-INF/layout/classic.jsp"> 
     <put-attribute name="title" value="Not Found" /> 
     <put-attribute name="footer" value="/WEB-INF/layout/footer.jsp" /> 
    </definition> 

    <definition name="index" extends="common"> 
     <put-attribute name="title" value="Java Blog agragator" /> 
     <put-attribute name="body" value="/WEB-INF/views/index.jsp" /> 
    </definition> 
</tiles-definitions> 

Надеюсь, это поможет

Смежные вопросы