Ich arbeite derzeit mit Liferay Portal Enterprise Edition 6.1 EE GA1 (Paton/Build 6110/15. Februar 2012), die auf meinem lokalen Rechner (Win 7/x64) zu Entwicklungs- und Testzwecken eingesetzt wird. Es läuft im Standard 7.0.25 Tomcat und wir verwenden Spring MVC, um unsere Portlets zu entwickeln.Wie programmiere ich das Layout "Link zu Seite" in Liferay 6.1?
Ich füge ein neues Layout (Seite) zu Liferay programmatisch und ich setze den Typ des Typs als "link_to_layout" (LayoutConstants.TYPE_LINK_TO_LAYOUT). Das Layout wurde erfolgreich erstellt, aber bis jetzt habe ich noch nicht herausgefunden, wie ich einen Wert für die Verbindung einstellen kann, z. etwas wie "/ login". Unten ist der Code ich das Layout hinzufügen bin mit:
// Spring specific code for getting the Request
HttpServletRequest request = null;
ServletRequestAttributes sa = (ServletRequestAttributes)RequestContextHolder.getRequestAttributes();
if(null != sa){
request = sa.getRequest();
}
if (request == null) { break; }
// all values are usually retrieved via special methods from our code
// for better readability I have added the real values here
long userId = 10102;
int groupId = 13056;
boolean privateLayout = false;
long plid = LayoutConstants.DEFAULT_PARENT_LAYOUT_ID;
String title = "my title";
ServiceContext serviceContext = ServiceContextFactory.getInstance(request);
String layoutType = LayoutConstants.TYPE_LINK_TO_LAYOUT;
boolean hidden = false;
String friendlyURL = "/new-page";
// finally, add the layout
Layout layout = LayoutLocalServiceUtil.addLayout(userId, groupId, privateLayout, plid, title, title, StringPool.BLANK, layoutType, hidden, friendlyURL, serviceContext);
kann ich jetzt manuell überprüfen, ob die Seite erstellt wurde und der Seitentyp durch Überprüfen der Site Pages in der Systemsteuerung auf „link_to_layout“ gesetzt wurde . Dort sehe ich die neue Seite mit einem leeren Wert "Link to Page". Ich kann dies auch programmatisch überprüfen, indem Sie den folgenden Code aufrufen (das ist die Nachricht in der Konsole zeigt):
if(layout.isTypeLinkToLayout()){
log.debug("type is link to page");
}
Wenn jemand weiß, wie man den Wert der Link zu Seite zu setzen, geben Sie bitte Ihre Wissen mit mir teilen. Vielen Dank für Ihre Hilfe und Ihre Antworten :-)
Mit freundlichen Grüßen, Mathias