有没有人能帮我把OpenCMS和一个Java Spring Web Application.Already集成在一起呢?我搜索了很多网站,但是没有use.So,请帮我。
发布于 2013-04-17 08:41:46
我认为有两种方法可以将SpringMVC与OpenCMS集成:
1)两个独立的应用程序,一个SpringMVC应用程序和一个标准OpenCMS安装。SpringMVC应用程序通过在OpenCMS中实现的via服务从OpenCMS获取内容。更多细节可以在这里找到:http://lists.opencms.org/pipermail/opencms-dev/2012q3/037154.html。如果您正在开始一个新项目或扩展现有的SpringMVC站点以添加内容管理,这种方法是很好的。它允许在SpringMVC和内容管理之间进行清晰的分离。
2)将SpringMVC与标准OpenCMS安装集成。这意味着在部署opencms.war之后,将修改web.xml以添加SpringMVC dispatcher servlet和自定义视图解析器。控制器是SpringMVC,视图是OpenCMS资源。如果您已经有一个现有的OpenCMS站点,并且想要扩展该站点以具有MVC功能,那么这种方法是很好的。有关此方法的详细描述,请查看http://blog.shinetech.com/2013/04/09/integrating-springmvc-with-opencms/
发布于 2013-08-12 14:31:18
将REST-API添加到Spring应用程序中,并通过该API直接从OpenCms jsps获取数据。
下面是一个如何使用Jackson获取数据将JSON转换为对象的示例:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" session="true"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="cms" uri="http://www.opencms.org/taglib/cms" %>
<%@ page import="org.codehaus.jackson.map.ObjectMapper" %>
<%@ page import="org.codehaus.jackson.type.TypeReference" %>
<%@ page import="java.util.*, java.net.*" %>
<%
ObjectMapper mapper = new ObjectMapper();
List<Map<String, Object>> result = mapper.readValue(new URL("https://server/api/rest/employeesOrderedByDepartment"), new TypeReference<List<Map<String, Object>>>() {} );
pageContext.setAttribute("result", result);
%>
<div class="span10">
<table class="table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Department</th>
<th>Function</th>
<th>Phone & Email</th>
</tr>
</thead>
<tbody id="staffbody">
<c:forEach items="${result}" var="person" varStatus="status">
<tr>
<td>${person.lastName} ${person.firstName}</td>
<td>${person.department.name}</td>
<td>${person.function}</td>
<td>${person.phone}<br /><a href='mailto:${person.email}'>${person.email}</a></td>
</tr>
</c:forEach>
</tbody>
</table>
</div>https://stackoverflow.com/questions/14576416
复制相似问题