このページではLiferayに関するTipsを提供します。
*このページはLiferay5.0.1RCをベースに書かれています。
最新バージョンをお使いの方はご注意ください。
before
<portlet> <portlet-name>3</portlet-name> <icon>/html/portlet/search/icon.png</icon> <struts-path>search</struts-path> <!--<open-search-class>com.liferay.portal.search.PortalOpenSearchImpl</open-search-class>--> <use-default-template>false</use-default-template> <restore-current-view>false</restore-current-view> <private-request-attributes>false</private-request-attributes> <private-session-attributes>false</private-session-attributes> <render-weight>0</render-weight> <css-class-wrapper>portlet-search</css-class-wrapper> <add-default-resource>true</add-default-resource> </portlet>after
<portlet> <portlet-name>3</portlet-name> <icon>/html/portlet/search/icon.png</icon> <struts-path>search</struts-path> <!--<open-search-class>com.liferay.portal.search.PortalOpenSearchImpl</open-search-class>--> <use-default-template>false</use-default-template> <restore-current-view>false</restore-current-view> <instanceable>true</instanceable> <private-request-attributes>false</private-request-attributes> <private-session-attributes>false</private-session-attributes> <render-weight>0</render-weight> <css-class-wrapper>portlet-search</css-class-wrapper> <add-default-resource>true</add-default-resource> </portlet>
<form action="<liferay-portlet:actionURL portletConfiguration="true"/>" method="post" name="<portlet:namespace />fm"> </form>
javax.portlet.title.xpath=XPath
PortletConfigImpl configImpl = (PortletConfigImpl)config; String portletId = configImpl.getPortletId();
String portletId = ParamUtil.getString(request, "portletResource");
String portletId = ParamUtil.getString(req, "portletResource");
User user = UserLocalServiceUtil.getUserById(getUserId());
String userName = req.getRemoteUser();
long loginUser = (ThemeDisplay)request.getAttribute(WebKeys.THEME_DISPLAY).getUserId();
User user = UserLocalServiceUtil.getUserById(getUserId()); String screenName = user.getScreenName();
* com.liferay.portal.model.implにgetJobTitle()が実装されていないので、このままでは取得できません。
JobTitleはUserと関連するContactから取得できる。
User user = UserLocalServiceUtil.getUserById(getUserId()); String jobTitle = user.getContact().getJobTitle();
List<Role> roles = RoleLocalServiceUtil.getUserRoles(userId);
Iterator<Role> iterator = roles.iterator();
while (iterator.hasNext()) {
Role item = iterator.next();
if (item != null) {
System.out.println(item.getName());
}
}
Company company = com.liferay.portal.util.PortalUtil.getCompany(req);
String password = ParamUtil.getString(req, "password");
if (Validator.isNull(password)) {
return mapping.findForward("/portal/portlet/error");
}
参考:http://sastruts.seasar.org/portlet.html
| Administrator | システム管理ポートレットを利用できるロール |
| Power User | ユーザよりも多くのポートレットを利用できるロール |
| User | 一般的なポートレットを利用できるユーザロール |
| Guest | ログイン前のユーザロール |
| ユーザオブジェクト | 説明 | 子要素 |
| ユーザ | システムを利用する1ユーザ | なし |
| ユーザグループ | 複数のユーザのグループ化 | ユーザ |
| 組織 | 複数のユーザのグループ化 複数組織のグループ化 | ユーザ、組織 |
| コミュニティ | 複数のユーザのグループ化 複数組織のグループ化 複数ユーザグループのグループ化 | ユーザ、組織、ユーザグループ |
# # 初期ページの名前を指定 # default.user.layout.name=Home # # レイアウトテンプレートの名前を指定 # #default.user.layout.template.id=1_2_1_columns #default.user.layout.template.id=1_column #default.user.layout.template.id=2_2_columns #default.user.layout.template.id=2_columns_i default.user.layout.template.id=2_columns_ii #default.user.layout.template.id=2_columns_iii #default.user.layout.template.id=3_columns # # レイアウトのカラムにあわせてポートレットを配置。 # ポートレットはポートレットIDで指定。 # default.user.layout.column-1=71_INSTANCE_OY0d,82,23,61,65, default.user.layout.column-2=11,29,8,19 default.user.layout.column-3= default.user.layout.column-4=
# # デフォルトテーマのIDを指定 # default.regular.theme.id=classic
## ##プロキシの設定 ## http.proxyHost=192.168.0.200 http.proxyPort=4480 ## ##プロキシを使わないサイトの設定 ## #http.nonProxyHosts=192.168.0.250
## ## Default Landing Page ## default.landing.page.path=/web/guest/home
##Keeps system from returning to last path. auth.forward.by.last.path=trueちなみに、
login.events.post=com.liferay.portal.events.LoginPostAction,com.liferay.portal.events.DefaultLandingPageActionとして、com.liferay.portal.events.LoginPostAction,com.liferay.portal.events.DefaultLandingPageActionで制御することもできる
## ## Default Landing Page ## default.landing.page.path=
##Keeps system from returning to last path. auth.forward.by.last.path=false
public String getFullName(String languageId) {
if(languageId.equals("ja_JP"))
return getFullName(getLastName(), getMiddleName(), getFirstName());
else
return getFullName(getFirstName(), getMiddleName(), getLastName());
}
public String getFullName() {
return getContact().getFullName(getLanguageId());
}
public java.lang.String getFullName(String languageId);
# # The portal can authenticate users based # on their email address, screen # name, or user id. # company.security.auth.type=emailAddress #company.security.auth.type=screenName #company.security.auth.type=userId
auth.pipeline.pre=com.liferay.portal.security.auth.LDAPAuth
<filter-mapping> <filter-name>Ntlm Filter</filter-name> <url-pattern>/c/portal/login</url-pattern> </filter-mapping>変更後:
<filter-mapping> <filter-name>Ntlm Filter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
企業の管理ポートレット -> 「>>」タブで最大化 -> 設定タブ -> 認証タブ -> 自動ログインを許可しますか?のチェックを外す
user.timezone=JST
# # デフォルトロゴ画像のファイル名を指定 # image.default.company.logo=/com/liferay/portal/dependencies/company_logo.png
lportal.portletpreferences:open.sso.auth.enabled
#mysqldump -uliferay -p lportal portletpreferences > lportal_portletpreferences.dump
<name>open.sso.auth.enabled</name><value>true</value> ↓ <name>open.sso.auth.enabled</name><value>false</value>
#mysql -uliferay -p lportal < lportal_portletpreferences.dump
lportal.portletpreferences:ldap.auth.enabled lportal.portletpreferences:ldap.auth.required
#mysqldump -uliferay -p lportal portletpreferences > lportal_portletpreferences.dump
<name>ldap.auth.enabled</name><value>true</value> ↓ <name>ldap.auth.enabled</name><value>false</value> <name>ldap.auth.required</name><value>true</value> ↓ <name>ldap.auth.required</name><value>false</value>
#mysql -uliferay -p lportal < lportal_portletpreferences.dump
#set ($show_my_places = $user.hasMyPlaces()) ↓ #set ($show_my_places = false)
* ユーザ名(ScreenName)での禁止文字
ユーザID以外の数字のみ、または.(PERIOD) と -(DASH)以外の記号が含まれているとNG Liferay5.2.xからは、FriendlyURLNormalizer.normalizeで変換される。 portal-impl\src\com\liferay\portal\security\auth\ScreenNameValidator.java
* フォルダ・ファイル名での禁止文字
/ のみまたは, \\,//,:,*,?,",<,>,|,&,[,],' が含まれているとNG portal-impl\src\com\liferay\documentlibrary\service\impl\DLServiceImpl.java
* ユーザーグループの名前
数字のみ、または, (COMMA) *(STAR)が含まれているとNG portal-impl\src\com\liferay\portal\service\impl\UserGroupLocalServiceImpl.java
* ロールの名前
数字のみ、または, (COMMA) *(STAR)が含まれているとNG portal-impl\src\com\liferay\portal\service\impl\RoleLocalServiceImpl.java
*パスワードポリシーの名前
数字のみ、または, (COMMA) *(STAR)が含まれているとNG portal-impl\src\com\liferay\portal\service\impl\PasswordPolicyLocalServiceImpl.java
*コミュニティの名前
数字のみ、または, (COMMA) *(STAR)が含まれているとNG portal-impl\src\com\liferay\portal\service\impl\GroupLocalServiceImpl.java
・Wikiのノードの名前
文字以外はNG。 文字の定義は以下。 0x41 - 0x7a まで(A-Z [\]^_`a-z)
[javac] コンパイラで例外が発生しました (1.5.0_16)。Bug Parade に同じバグが登録されていないことをご確認の上、
Java Developer Connection (http://java.sun.com/webapps/bugreport) にてバグの登録をお願いいたします。
レポートには、そのプログラムと下記の診断内容を含めてください。ご協力ありがとうございます。
[javac] java.nio.BufferOverflowException
[javac] at java.nio.Buffer.nextPutIndex(Buffer.java:419)
[javac] at java.nio.HeapCharBuffer.put(HeapCharBuffer.java:145)
[javac] at com.sun.tools.javac.parser.Scanner.decode(Scanner.java:405)
[javac] at com.sun.tools.javac.parser.Scanner.<init>(Scanner.java:304)
[javac] at com.sun.tools.javac.parser.Scanner.<init>(Scanner.java:238)
[javac] at com.sun.tools.javac.parser.Scanner$Factory.newScanner(Scanner.java:72)
[javac] at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:254)
[javac] at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:281)
[javac] at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:399)
[javac] at com.sun.tools.javac.main.Main.compile(Main.java:592)
[javac] at com.sun.tools.javac.main.Main.compile(Main.java:544)
[javac] at com.sun.tools.javac.Main.compile(Main.java:67)
[javac] at com.sun.tools.javac.Main.main(Main.java:52)