标签: portlet

简单的portlet jsp页面流问题

我是Java portlets的新手,我正在尝试处理这些东西在相当基本的水平上如何工作.

我现在很困惑如何在我的portlet中拥有多个"视图".假设我的portlet将用于CRUD操作.为了简单起见,我想象当用户第一次查看portlet时,他们会看到一个包含数据库中所有记录的表.然后,用户可以单击将在portlet中显示包含用于更新记录的表单的新页面的记录.添加记录的方式大致相同.这里没有什么令人震惊的......

我在哪里控制用户在不同视图之间导航的方式,以及在何处切换用户可能执行的不同操作(更新,添加,删除等)?

我已经在网上找到了大量的"hello world"portlet教程,但这些教程并没有多大帮助.我发现许多其他教程更先进,适合我正在做的事情,但他们似乎都使用一些底层框架,如Struts,JSF等.

我想知道如何使用JSP来渲染视图,只使用一个基本的portlet来完成这项工作.

java jsp portlet jsr168

3
推荐指数
1
解决办法
3369
查看次数

将变量传递给jsp

我有一个java类

public void doView(
        RenderRequest renderRequest, RenderResponse renderResponse)
        throws IOException, PortletException {

//I need to pass the string variable over to my jsp
ThemeDisplay themeDisplay = (ThemeDisplay) renderRequest.getAttribute(WebKeys.THEME_DISPLAY);
String sLang_Id = themeDisplay.getLanguageId();

include("/html/mypackage/view.jsp", renderRequest, renderResponse);

}
Run Code Online (Sandbox Code Playgroud)

我怎么读sLang_Id我的jsp

 <c:out value="${sLang_Id}" /> ???
Run Code Online (Sandbox Code Playgroud)

java jsp portlet cout liferay

3
推荐指数
1
解决办法
2548
查看次数

Liferay Web内容portlet中使用了哪种技术?

为了创建Web内容,使用Web内容portlet.这个portlet背后有什么技术?用于开发此portlet的是什么?JSP,JSF,Struts,Icefaces还是其他任何东西?

此外,是否有单独下载它的链接.

portlet liferay webcontent

3
推荐指数
1
解决办法
1072
查看次数

我可以在WAR文件中打包多个Liferay portlet和主题吗?

我可以使用Liferay插件SDK轻松创建Liferay portlet和主题.我已经设法将多个portlet组合成一个WAR文件,这对于在客户端站点部署非常方便.

我还为Liferay安装创建了多个主题,我想知道是否可以将所有portlet(5)和主题(2)(可能是钩子等)组合到一个WAR文件中?

java portlet liferay liferay-6 liferay-theme

3
推荐指数
1
解决办法
926
查看次数

在Liferay中将Portlet共享的库放在何处?

我需要在portlet之间共享一个库(内部构建),我更喜欢将它放在一个公共位置,而不是将它作为依赖项添加到需要它的每个portlet,因为我想更新一次库.我可以构建一个portlet可以引用并访问库的钩子或插件吗?我知道您可以将它添加到公共库目录并将其添加到liferay-plugin-package.properties每个portlet,但位置取决于应用程序服务器.我想知道,有一个标准或更清洁的方法来做到这一点?提前致谢.

portlet liferay

3
推荐指数
1
解决办法
1164
查看次数

了解Liferay中的子页面层次结构

我将通过4个简单的问题总结逻辑:

  1. 私有页面可以/应该有公共子页面吗?(似乎私人页面正在为任何组/用户使用其他网站或上下文)
  2. 可以/应该公共页面是否有私人子页面?
  3. 可以/应该隐藏的页面是否有非隐藏的子页面?
  4. 可以/应该某个用户不允许进入VIEW的页面是否有允许某个用户看到的子页面?

以前的一些场景是否会改变父页面的行为?我的意思是,允许您对子页面的权限会使您自动获得查看父页面的权限.

此外,hidden和*non-hidde*n页面之间有什么区别?我可以通过链接浏览!

portlet private liferay

3
推荐指数
1
解决办法
1824
查看次数

使用EL在`<portlet:param>`中传递值

我正在尝试将参数传递给<portlet:actionURL>liferay中的portlet,但事实证明,使用EL传递值不工作,但是,使用JSP表达式标记工作正常.

这是我的相关代码:

<%
    ResultRow row = (ResultRow)request.getAttribute(WebKeys.SEARCH_CONTAINER_RESULT_ROW);

    Course course = (Course) row.getObject();
    long groupId = themeDisplay.getLayout().getGroupId();
    String name = Course.class.getName();
    String primaryKey = String.valueOf(course.getPrimaryKey());

%>

<liferay-ui:icon-menu>

    <c:if test="<%= permissionChecker.hasPermission(groupId, name, primaryKey, ActionKeys.UPDATE)%>">
        <portlet:actionURL name="editCourse" var="editURL">
            <portlet:param name="resourcePrimaryKey" value="${primaryKey}"/>
        </portlet:actionURL>

        <liferay-ui:icon image="edit" message="Edit" url="${editURL}" />
    </c:if>
</liferay-ui:icon-menu>
Run Code Online (Sandbox Code Playgroud)

如您所见,在<portlet:param>标记中,我使用EL来传递属性.但它不工作,我得到的价值作为0"resourcePrimaryKey"我的操作方法,当我这样做:

long courseId = ParamUtil.getLong(request, "resourcePrimaryKey");
// courseId is 0 here
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用JSP表达式标签代替EL,它可以正常工作:

<portlet:actionURL name="editCourse" var="editURL">
    <portlet:param name="resourcePrimaryKey" value="<%= primaryKey %>"/>
</portlet:actionURL>
Run Code Online (Sandbox Code Playgroud)

现在,我得到了所需的值"resourcePrimaryKey". …

java jsp portlet el liferay

3
推荐指数
1
解决办法
5110
查看次数

Liferay Portlet响应:如何设置状态代码?

我有一个简单的方法接受我的liferay portlet中的PortletResponse和PortletRequest

public void remove(PortletResponse response, PortletRequest request) {

}
Run Code Online (Sandbox Code Playgroud)

我想将响应状态设置为404,就像我可以用HttpServletResponse做的那样 httpResponse.sendError(HttpServletResponse.SC_BAD_REQUEST)

你能告诉我怎么做吗?

portlet liferay

3
推荐指数
1
解决办法
3643
查看次数

liferay 6.2中设置参数和设置属性有什么区别?

我非常困惑何时使用什么,以及使用这些参数的优点和缺点是什么。

谁能帮我澄清一下吗?

portlet liferay

3
推荐指数
1
解决办法
1917
查看次数

如何从 Liferay 7 取消部署 portlet?

我正在学习如何在 Liferay 7 CE GA 3 门户平台上创建 portlet。

为此,我按照 liferay 站点中给出的教程,使用 maven、gradle 创建了一些测试 portlet。

但现在,我需要从服务器中删除这些 portlet。每当我启动 Liferay 捆绑包中提供的 tomcat 服务器时,那些先前部署的 portlet 就会出现在网页上。我已经尝试过,但找不到部署在tomcat内部的war文件,无法删除它们。

我尝试删除 liferay 工作目录中的 portlet 文件夹并清除临时目录,但这没有帮助。

PS:我通过将 war 文件复制到 liferay 包的“部署”目录来手动部署 portlet。

tomcat portlet maven spring-portlet-mvc liferay-7

3
推荐指数
1
解决办法
4301
查看次数