Я пытаюсь заставить плитки 2 работать с JSP. Я получаю исключение нулевого указателя. У меня проблемы с поиском хорошей документации, которая объясняет, как получить настройки. У меня довольно простой вариант использования. У меня есть шаблон с атрибутом «контент». Затем я пытаюсь использовать шаблон, вставив JSP в атрибут «содержимого». Я не уверен, нужно ли мне что-то настраивать в моем файле web.xml? Я вставил свой шаблон и jsp, который пытается использовать шаблон.
Вот шаблон:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="http://tiles.apache.org/tags-tiles" prefix="template" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" href="${pageContext.request.contextPath}/css/jquery-ui-1.8.5.custom.css" type="text/css" />
<link rel="stylesheet" href="${pageContext.request.contextPath}/css/app.css" type="text/css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js" type="text/javascript"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js" type="text/javascript"></script>
<title>Cheetah Home</title>
</head>
<body>
<div id="wrapper">
<jsp:include page="${pageContext.request.contextPath}/jsp/layout/top.jsp"></jsp:include>
<template:insertAttribute name="content"></template:insertAttribute>
</div>
</body>
</html>
Вот страница, которая пытается использовать шаблон:
<%@taglib uri="http://tiles.apache.org/tags-tiles" prefix="template" %>
<template:insertTemplate template="/templates/homeTemplate.jsp">
<template:putAttribute name="content" value="test.jsp">
</template:putAttribute>
</template:insertTemplate>
Я использую Maven для сборки приложения, и у меня указаны следующие зависимости:
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-servlet</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-template</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-jsp</artifactId>
<version>2.2.2</version>
</dependency>
Все хорошо, но когда я запускаю приложение, я получаю:
javax.servlet.ServletException: com.sun.jersey.api.container.ContainerException: org.apache.jasper.JasperException: java.lang.NullPointerException
У кого-нибудь есть идеи, как заставить это работать?
Спасибо!