我知道这不是一个特别的编程问题,但程序员经常需要做这项工作.
如何使用Liferay门户网站创建一个网站 - 文档在这个基本问题上非常清楚,并且都适用于4.4版本.我使用的是5.2版,文档似乎并不相关.
你知道基本步骤是什么吗?到目前为止,我已经以bruno用户身份登录,可以看到7cogs网站并对其进行编辑.但我现在需要创建自己的网站(对于我的公司)并能够开发portlet以添加到页面的各个部分.
此外,我注意到文档谈论在Eclipse中工作.如果我们的网站都是静态HTML,(我们希望liferay的主要原因是我们可以使用其内容管理工具编辑内容项),那么是否需要Java dev,或者全部都是拖放和点击得到安装.任何指导将不胜感激.
我正在尝试在谷歌应用程序引擎上构建一些"portlet服务器".(作为开源)
我想使用JSR168/286标准,但我认为应用引擎的限制将使它介于棘手和不可能之间.
有没有人试图在谷歌应用引擎上运行jetspeed或内部使用pluto的应用程序?
根据我目前对portlet和谷歌应用程序引擎的了解,我预计会出现以下问题:
带有portlet的war文件从部署的角度来看或多或少是一个完整的webapp(是的,我知道没有门户服务器它真的不起作用).war文件可能包含它自己的web.xml等.这使得在app引擎上的部署相当困难,因为这些应用程序彼此不可见,因此所有包含存档的portlet都需要包含在已部署的"app"的war文件中基于引擎的门户服务器".
"portlet"(至少在liferay中)作为永久servlet进程启动,基于它们的portlet.xmls和web.xmls,它们位于加载的每个portlet存档的相同位置.我想这可能是在应用程序引擎有问题的,因为一切都在一个大的"Web应用程序",因此它可能会非常棘手,从每个归档访问portlet.xmls.
这可以防止我认为100%的兼容性.
在这里有人对portlet和app引擎的组合有任何经验吗?
你认为修改jetspeed,pluto或任何其他portlet容器以便能够在app引擎上运行它是否可行?
我正在Tomcat 6上的Liferay 5.2.3上部署Portlets.我只为其中一个portlet收到此错误.
java.lang.IllegalStateException: Root context attribute is not of type WebApplicationContext
Run Code Online (Sandbox Code Playgroud)
我做了一些研究,发现Spring在需要web时实例化portlet应用程序上下文.但在我的web.xml中,我只定义了contextLoaderListner
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
Run Code Online (Sandbox Code Playgroud)
最重要的是,如果Spring正在查找不同的*.jar文件,为什么我的其他portlet会被部署,除了一个?
经过几次重新部署后,我得到了解决方案.有人能说点什么吗?
我正在改变Liferay Intallation附带的本地Liferay portlet.如何通过钩子或类似的方法将函数更改为我自己的实现?
我已经阅读了如何制作前置条件和后置条件以及如何创建接口的新实现,但我不知道如何在一个我希望保留的portlet中替换随机类中的随机函数,否则就像它最初一样.
我有一个项目,我的客户端要求我使用portlets 1.0规范和Websphere Portal Server 6.0.我之前没有使用过portlet,但是我听说过它们总是受到不好的批评.除了显而易见的使用它们之外还有什么原因?如果没有原因,我可以使用哪些参数来避免它们?
我为Liferay创建了一个JSR-268 portlet,它使用服务与数据库进行交互.我可以没有问题或错误部署portlet,但是没有创建服务定义的表!
我测试portlet时没有收到"table not found"错误.我完全没有错误!该表不在数据库中.我在网上发现其他东西说我应该使用Liferay Service Builder创建的生成的"create.sql"文件,但我没有在任何地方看到该文件.
有人可以帮我吗?
我在我的portlet中使用了几个jar,例如c3p0.现在我想避免将jar放在我的每个portlet lib文件夹中.如何在多个portlet中共享一个jar文件?我应该如何将它们集成到Eclipse IDE中?添加一个外部jar或将它们放在一个专用项目中并从那里包含它们?
我必须为我的portlet使用一些JavaScript和CSS.我使用一些数据jQuery进行排序和一些交互式显示,但它不起作用.
任何人都可以指导我到哪里犯错误吗?
这是我的目录结构docroot,其中保存了我的JS和CSS.

这是我的view.jsp文件,其中动态填充数据.
<%@page import="com.video.util.VideoActionUtil"%>
<%@page import="com.video.database.model.Video"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"
import="com.video.database.model.Video.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Applying JQuery DataTables plugin in the Java Server application</title>
<link href="docroot/js/jquery-1.2.6.min.js" type="text/javascript">
<link href="docroot/css/demo_page.css" rel="stylesheet" type="text/css" />
<link href="docroot/css/demo_table.css" rel="stylesheet" type="text/css" />
<link href="docroot/css/demo_table_jui.css" rel="stylesheet" type="text/css" />
<link href="docroot/css/jquery-ui.css" rel="stylesheet" type="text/css" media="all" />
<link href="docroot/css/jquery-ui-1.7.2.custom.css" rel="stylesheet" type="text/css" media="all" />
<script src="docroot/js/query.js" type="text/javascript"></script>
<script src="docroot/js/jquery.dataTables.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#companies").dataTable({
"sPaginationType": "full_numbers",
"bJQueryUI": true …Run Code Online (Sandbox Code Playgroud) 当我开发我的portlet时,当我编写我的jsp页面时,我使用了:
<%@ taglib prefix="portlet" uri="http://java.sun.com/portlet_2_0"%>
Run Code Online (Sandbox Code Playgroud)
但是eclipse告诉我一个错误,告诉我它找不到http://java.sun.com/portlet_2_0的标签lib描述符.
如何使用tld文件解决此问题?
我想SearchContainer在我的liferay应用程序中使用.目前我要使用JSP Scriplets 在标签中设置结果<liferay-ui:search-container-results>.这是到目前为止的片段:
<liferay-ui:search-container emptyResultsMessage="there-are-no-courses" delta="5">
<liferay-ui:search-container-results>
<%
List<Course> tempResults = ActionUtil.getCourses(renderRequest);
results = ListUtil.subList(tempResults,
searchContainer.getStart(),
searchContainer.getEnd());
total = tempResults.size();
pageContext.setAttribute("results", results);
pageContext.setAttribute("total", total);
%>
</liferay-ui:search-container-results>
<liferay-ui:search-container-row ...></liferay-ui:search-container-row>
<liferay-ui:search-iterator />
</liferay-ui:search-container>
Run Code Online (Sandbox Code Playgroud)
现在,我想将这些划线改为EL.我发现了一篇关于同一问题的帖子,但那是在使用Spring MVC.而且我不知道在portlet中,在该问题的答案中给出了下面这一行:
SearchContainer<Book> searchContainer = new SearchContainer<Book>(renderRequest, renderResponse.createRenderURL(), null, "there are no books");
Run Code Online (Sandbox Code Playgroud)
在我的portlet操作中无法写入它,因为我的操作中的参数是ActionRequest和ActionResponse,它没有定义方法createRenderURL().我怎么会得到的PortletURL?
我应该在哪里写上述声明?目前我正在写同一个动作,我将返回此页面.我做得对吗?这是我从同一页面触发的动作,如下所示search-container:
public void addCourse(ActionRequest request, ActionResponse response)
throws Exception {
ThemeDisplay themeDisplay =
(ThemeDisplay) …Run Code Online (Sandbox Code Playgroud)