As we all know, Liferay's core framework consists of a set of velocity template files located in the $liferay_home\liferay-portal-6.1.0-ce-ga1\tomcat-7.0.23\webapps\root\ Html\themes\classic\templates Directory, some colleagues today asked me where the variables in these templates are defined.
In order to solve this problem, we found the Portal-impl.jar in the Velocityvariableimpl class file, so at a glance. Because the first line in PORTAL-NORMAL.VM
We can develop theme to let the system not use the default style.
When we create a theme project with the wizard and compile it, the project structure is shown in the following illustration:
where all the docroot below the _diffs directory are liferay from the default copy of the resource file. All we need to change is to build a parallel directory under the _diffs directory.
Example 1, change the page or style sheet:
For changes to the page and
Conclusion:
When you log in with an administrator in Liferay, navigate to Control Panel->documents and Media, and add basicdocument under the specified folder, the server does the following things:
(1) Add a record to the Dlfileentry table to represent the added document.
(2) Add a record in the Dlfileentryversion table and associate it to the Dlfileentry table through the Fileentryid foreign key to record the version information of the newly added
Document directory
1. Determine whether the user has logged on to liferay. The corresponding model user _
2. Load the static resource file barebone. jsp, everything. jsp
3. i18n
1. Determine whether the user has logged on to liferay. The corresponding model user _
User user = portalutil.Getuser(Request );2. Load the static resource file barebone. jsp, everything. jsp
When loading JS files,
Introduction:
You may not be familiar with UrlRewriteFilter. Especially those who have done SEO (Search Engine Optimization) know that it will rewrite a url to another URL. Why? Because the search engine looks at dynamic URLs very uncomfortable. What is dynamic URLs? Associate queryParameter, associate parameters with such URLs, suchHttp: // 1.2.3.4: 3333/badurltest? A = 1 B = 2 c = 3This url. We will change it to a static url after rewriting, suchHttp: // 1.2.3.4: 3333/badurltest_1_2_3.htmlI
Introduction:
The project team asked me if A Portlet has multiple modes, for example, a previously developed portlet has both the view mode and the config mode), and the front-end uses the extjs mvc Architecture, and the main file is main. js, the main. js is defined in liferay-portlet.xml with the following
650) this. width = 650; "src =" http://www.bkjia.com/uploads/allimg/131228/11140J4b-0.png "title =" 31.png" alt = "091752436.png"/>
So it is imp
In the portlet, the request is divided into two types of Renderrequet and actionrequest and the portlet needs to get the instance ID when it is renderrequest to be taken, the following examplePortletpreferences preferences = Renderrequest.getpreferences (); String Portletresource = paramutil.getstring (Request, "Portletresource"), if (Validator.isnotnull (Portletresource)) { Preferences = Portletpreferencesfactoryutil.getportletsetup (request, Portletresource);} Where Portletresource is the ID o
In Liferay, if we want to have permission control on the page, such as if only the user with the specified permission can see something, we can use the Liferay predefined user object to get the permissions that the object has, and then control the display of the page.
In order to use the user object on the Liferay page, we must join the tag library:
We can th
By default, a portlet can have only one page, and if you need more than one portlet on a page, you need to instantiate the portlet. After instantiation, Liferay assigns to each instantiated portlet a instance ID to differentiate the same functionality. The instance IDs of multiple identical portlets in a page are different, and the same portlet's instance ID is not the same for different pages. This makes it possible to develop implementations with th
Liferay's own database is very mini, generally is to play.In the real development process, we often need to connect it to our local database.There are 3 ways, and I'm just going to introduce my favorite method here. Even MySQL.1. Create the portal-ext.properties file in the root directory of the Liferay portal, where the contents are Jdbc. default. driverclassname=com.mysql.jdbc.Driver jdbc. default. Url=jdbc:mysql://Localhost/lportal?useunicode
In Liferay the request is divided into renderrequest and actionrequest the two kinds of requests, Portletrequest subclass has three 1renderRequest, 2eventrequest3clientdatarequest. Is there no actionrequest? , not the Actionrequest inherited is clientdatarequest this interface.The scope of Actionrequest is the portlet during the action processing phase, at which point the portlet does not know what it is going to display or how to display it.The scope
There are many ways to implement Single-point login (SSO). Here we use cas, which is also the method adopted in liferay. As for what cas is and how single-point login is implemented, I will not explain it here (read the article I have reproduced). I will explain the implementation method step by step, I don't need to talk about anything more.
Step 1: Create a certificate
Keytool-genkey-alias tomcat-keystore c: \ mykeystore-dname "cn = xyb, ou = localh
Please attach the original link of the great GodAdding Dependencies to JSP Fragment BundlesIn the process of developing liferay, we often use the module fragment to modify the original JSP page Liferay, while modifying the original page, we also want to add their own logic, coupled with some Java code, how to do it?Take a pit first, fill it later, enclose the code address https://github.com/JoyeLuo/jsp-frag
Liferay The default is not to turn on tuning parameters, so run slower, we can open some parameters to achieve better performance:
Today I did the following configuration:
(1) The following parameters are configured in the $liferay_home/portal-ext.properties:
Last.modified.check=false
Theme.css.fast.load=true
Javascript.fast.load=true
(2) We've disable all the filters in the $liferay_home/
(3) We disable all the infrequently used portlets in
,\
Meta-inf/ext-hbm.xml
In each node, copy the Portal-hbm-new.xml from the attachment to/root/web-inf/classes/meta-inf/folder.
Reason for this solution:
When we add "Basic Document" to created folder in Control Panel, the Liferay system'll do the following tasks:
You can read my article http://supercharles888.blog.51cto.com/609344/921761 for the very detailed analysis process.
A. Add a entry in "dlfileentry" table to stand for the
As we all know, in the Web application, in order to save network overhead, often a number of small JS files into a large JS file, bar a number of small CSS files into a large JS file, so that the original N small file request can be merged into a single network request. The most typical tool for doing this is the famous yui-compressor.
In fact, in the Liferay, we in order to achieve the purpose of merging Css,js, with a different approach to yui-comp
Today, I checked the boot. log and server. log logs of jboss and summarized the jboss startup and loading processes based on my understanding and other information;
This article takes JBoss Application Server 4.2.1 GA (hereinafter referred to as JBoss) as an example to introduce its startup process on the Windows platf
The liferay page can be implemented using a search container tag, which is very convenient.
HTML \ juneidongtaiportlet \ list_dongtai.jsp
HTML \ base \ init. jsp
/** * Copyright (c) 2000-2011 Liferay, Inc. All rights reserved. * * This library is free software; you can redistribute it and/or modify it under * the terms of the GNU Lesser General Public License as published by the Free * Software Foundation
Unconsciously, I have been in the United States for more than two months. In the face of over 120 hours of work per Sprint, I have no energy to maintain my blog, so it is not updated in 2 months. Now, on Labor Day in the United States, let's take a look at my learning experience during this time.
This topic describes how to use the tarball distribution package to automate Liferay installation and deployment.
Purpose:
As we all know, the process of d
We see this article is not very happy ah, I feel is very happy, we can finally follow their own wishes to write a code, in Liferay some basic additions and deletions of the code is automatically generated, but we want to achieve their own method, I am afraid that a little effort, You have to know that every technology is necessary to study and learning, not always feel that the automatic generation of things do not have any good research, in fact, you
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.