Forums

Home » Liferay Portal » Deutsch

Combination View Flat View Tree View
Threads [ Previous | Next ]
toggle
Michael Jerger
Hot-Deploment funktioniert in meiner Server-Umgebung nicht
February 27, 2012 11:02 AM
Answer

Michael Jerger

Rank: New Member

Posts: 17

Join Date: March 15, 2011

Recent Posts

Hallo zusammen,

ich bin gerade mit dem Portieren von layouttpl und themes von 6.0 -> 6.1 (fast) fertig ...
Die War-Files funktionieren im SDK einwandfrei - aber leider nicht auf meinem Server.

Als Server setzte ich auf Ubuntu 04.10 LTE, 64bit, jdk1.6.19.
Die Serverinstallation beschränkt sich auf 2 Änderungen zum Standard-Deployment::
* Download Liferay 6.1.0 CE & unpack
* (memsize auf 2GB gesetzt in tomcat/bin/setenv.sh)
* portal-ext.properties in das frische Portal kopieren
* portal starten
* Nachdem der Server oben ist, dann kopiere ich tpl & theme ins portal/deployment dir

Im folgenden hab ich mal die Logfiles angehängt - im Bereich in dem die Unterschiede zwischen IDE und Server anfangen::

IDE:
16:44:46,145 DEBUG [ThemeExplodedTomcatListener:36] Invoking deploy for /home/mje/code/jerger.org/liferayPortal/deploy/jerger-layouttpl-6.1.0.1.war
16:44:46,146 DEBUG [BaseExplodedTomcatListener:136] /home/mje/code/jerger.org/liferayPortal/deploy/jerger-layouttpl-6.1.0.1.war does not have a matching extension
Feb 27, 2012 4:44:53 PM org.apache.catalina.startup.HostConfig checkResources
Information: Reloading context [/jerger-layouttpl]
16:44:53,377 DEBUG [PluginPackageHotDeployListener:141] Invoking deploy for jerger-layouttpl
16:44:53,378 INFO [PluginPackageUtil:1099] Reading plugin package for jerger-layouttpl

Server:
17:48:48,526 DEBUG [ThemeExplodedTomcatListener:36] Invoking deploy for /opt/liferay_prod/deploy/jerger-layouttpl-6.1.0.1.war
17:48:48,526 DEBUG [BaseExplodedTomcatListener:136] /opt/liferay_prod/deploy/jerger-layouttpl-6.1.0.1.war does not have a matchin
g extension
Feb 27, 2012 5:48:51 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /opt/liferay_prod_6.1/apache-tomcat-7.0.26/webapps/jerger-layouttpl


Nach der Meldung "HostConfig deployDirectory" sagt der server nichts mehr - insbesondere fehlt also die Registrierung des tpl / themes ...
Hat jemand eine Idee, wo ich suchen könnte?

Viele Grüße,
Michael
Olaf Kock
RE: Hot-Deploment funktioniert in meiner Server-Umgebung nicht
February 27, 2012 3:05 PM
Answer

Olaf Kock

LIFERAY STAFF

Rank: Liferay Legend

Posts: 1892

Join Date: September 23, 2008

Recent Posts

Wem gehören die Verzeichnisse und welcher Benutzer wird für den Server (Tomcat) verwendet? Wie sind die Verzeichnisrechte?

1ls -la /opt/liferay_prod/deploy/
2ls -la /opt/liferay_prod_6.1/apache-tomcat-7.0.26/webapps/
3ps aux | grep atalina
Michael Jerger
RE: Hot-Deploment funktioniert in meiner Server-Umgebung nicht
February 27, 2012 11:34 PM
Answer

Michael Jerger

Rank: New Member

Posts: 17

Join Date: March 15, 2011

Recent Posts

Hi,

/opt/liferay_prod ist ein symbolischer link auf liferay_prod_6.1. Da ich im Moment 6.1 nicht am lauffen habe zeigt er auf 6.0.
Die Logik ist ansonsten bei 6.0 gleich wie bei 6.1.

jsvc ist ein zuverlässiger java-service starter.

ps -ef | grep java
1root     11899     1  0 19:38 ?        00:00:00 /usr/bin/jsvc -user prod -cp /usr/share/java/commons-daemon.jar:/opt/liferay_prod/tomcat/bin/bootstrap.jar:/opt/liferay_prod/tomcat/bin/tomcat-juli.jar -outfile /opt/liferay_prod/tomcat/logs/catalina.out -errfile &1 -pidfile /var/run/tomcat-prod.pid -Djava.awt.headless=true -Dfile.encoding=UTF8 -Xms512M -Xmx1280M -XX:MaxPermSize=256m -Djava.endorsed.dirs=/opt/liferay_prod/tomcat/endorsed -Dcatalina.base=/opt/liferay_prod/tomcat -Dcatalina.home=/opt/liferay_prod/tomcat -Djava.io.tmpdir=/tmp/prod-temp -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=/opt/liferay_prod/tomcat/conf/logging.properties org.apache.catalina.startup.Bootstrap
2prod     11900 11899  4 19:38 ?        00:01:20 /usr/bin/jsvc -user prod -cp /usr/share/java/commons-daemon.jar:/opt/liferay_prod/tomcat/bin/bootstrap.jar:/opt/liferay_prod/tomcat/bin/tomcat-juli.jar -outfile /opt/liferay_prod/tomcat/logs/catalina.out -errfile &1 -pidfile /var/run/tomcat-prod.pid -Djava.awt.headless=true -Dfile.encoding=UTF8 -Xms512M -Xmx1280M -XX:MaxPermSize=256m -Djava.endorsed.dirs=/opt/liferay_prod/tomcat/endorsed -Dcatalina.base=/opt/liferay_prod/tomcat -Dcatalina.home=/opt/liferay_prod/tomcat -Djava.io.tmpdir=/tmp/prod-temp -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=/opt/liferay_prod/tomcat/conf/logging.properties org.apache.catalina.startup.Bootstrap


Alle Directories gehören dem user prod (root@www:/opt# chown -R prod. * ):

root@www:/opt# ll
1total 8728
2lrwxrwxrwx 1 root root      16 Feb 27 20:06 liferay_prod -> liferay_prod_6.0/
3drwxr-xr-x 6 prod prod    4096 Feb 27 20:09 liferay_prod_6.0/
4drwxr-xr-x 7 prod prod    4096 Feb 27 17:38 liferay_prod_6.1/


root@www:/opt# ll liferay_prod_6.1/
1total 24
2drwxr-xr-x 9 prod prod 4096 Feb 27 12:51 apache-tomcat-7.0.26/
3drwxr-xr-x 7 prod prod 4096 Sep  1 17:30 data/
4drwxr-xr-x 2 prod prod 4096 Feb 27 17:52 deploy/
5drwxr-xr-x 2 prod prod 4096 Feb 26 19:34 license/
6drwxr-xr-x 2 prod prod 4096 Feb 27 13:10 logs/
7-rw-r--r-- 1 prod prod 1046 Feb 27 13:09 portal-ext.properties
8lrwxrwxrwx 1 prod prod   20 Feb 27 13:24 tomcat -> apache-tomcat-7.0.26/


root@www:/opt# ll liferay_prod_6.1/tomcat/webapps
total 48
1drwxr-xr-x  8 prod prod 4096 Feb 27 13:05 ROOT/
2drwxr-xr-x  4 prod prod 4096 Feb 27 17:48 jerger-layouttpl/
3drwxr-xr-x  7 prod prod 4096 Feb 27 17:52 jerger-theme/
4drwxr-xr-x 10 prod prod 4096 Feb 27 13:05 opensocial-portlet/
5drwxr-xr-x 13 prod prod 4096 Feb 27 13:05 social-networking-portlet/
6drwxr-xr-x  5 prod prod 4096 Feb 27 13:05 web-form-portlet/


Zur Sicherheit habe ich mein /etc/init.d/tomcat file noch angehängt.

Gruß,
Michael
Attachments: tomcat (6.1k)
Olaf Kock
RE: Hot-Deploment funktioniert in meiner Server-Umgebung nicht
February 28, 2012 2:39 AM
Answer

Olaf Kock

LIFERAY STAFF

Rank: Liferay Legend

Posts: 1892

Join Date: September 23, 2008

Recent Posts

Das sieht alles gut aus - eine vorsichtige Frage noch: Wie werden die WAR-Files auf dem Server deployed? Direkt in Tomcat oder via Liferay's "deploy" Directory?

Während des Deployments vom deploy-Directory in den Tomcat nimmt Liferay noch Änderungen vor: Einige Komponenten (Abhängigkeiten) werden aufgelöst etc. Ein WAR-File aus dem SDK ist nur dann direkt deploybar, wenn es mit diesen Optionen vorweggenommen gebaut wurde - statt "ant deploy" heisst es dann "ant direct-deploy" - die beiden Ergebnisse unterscheiden sich im Inhalt, nicht im Aussehen (mit anderen Worten: Man kann einem WAR-File von außen nicht ansehen, wie es gebaut wurde)

Das ist ein bisschen tricky, üblicherweise führt ein falsches Deployment zu ClassNotFoundExceptions im Log - zumindest für Portlet Plugins.
Michael Jerger
RE: Hot-Deploment funktioniert in meiner Server-Umgebung nicht
February 28, 2012 3:00 AM
Answer

Michael Jerger

Rank: New Member

Posts: 17

Join Date: March 15, 2011

Recent Posts

In der IDE baue ich die war-files mit dem buil.xml - default Target. Ich schau nochmals nach ob das deploy-direct oder deploy ist.

Auf dem Server kopiere ich das war file dann in das liferay/deploy Directory.
Und ja, ich hab schon erkannt, dass eine Kopie als root nicht das Wahre ist - ich mach das als "su prod" emoticon.
Olaf Kock
RE: Hot-Deploment funktioniert in meiner Server-Umgebung nicht
February 28, 2012 5:39 AM
Answer

Olaf Kock

LIFERAY STAFF

Rank: Liferay Legend

Posts: 1892

Join Date: September 23, 2008

Recent Posts

dann bleibt mir als schneller Tipp noch

1sudo chown -r prod:prod tomcat/temp tomcat/work


??
Michael Jerger
RE: Hot-Deploment funktioniert in meiner Server-Umgebung nicht
February 28, 2012 6:14 AM
Answer

Michael Jerger

Rank: New Member

Posts: 17

Join Date: March 15, 2011

Recent Posts

Das ist mit dem chown ein paar ebenen höher schon mit drin gewesen. Die tomcat tmp (aus der jsvc Konfiguration) Ordner hab ich mir auch angesehen - die sehen von den Rechten her alle gut aus.

Die Dateioperationen sehen alle schon abgeschlossen aus - das .war file ist schließlich schon in tomcat/webapp.
Dann scheint irgendein Event, der für's Registrieren in Liferay wichtig ist, aber nicht anzukommen...

So ist zumindest mein oberflächlicher Eindruck.

Ich werd heute Abend aber nochmals alle Verzeichnisse liebevoll auf Ihre Berechtigung hin durchsehen ... und falls ich was übersehen habe, dann werd ich's hier reuevoll kundtun :-))
Michael Jerger
RE: Hot-Deploment funktioniert in meiner Server-Umgebung nicht
February 29, 2012 11:54 AM
Answer

Michael Jerger

Rank: New Member

Posts: 17

Join Date: March 15, 2011

Recent Posts

ein Schritt weiter ... ein update

Die liebevolle Durchsicht hatte zwar nix gebracht - aber mir ist aufgefallen, dass ich im SDK mit JDK1.7 compiliert hatte. Sollte zwar nix ausmachen, da ich ausschließlich Ressourcen und logging.props in den war Files gepackt habe ... aber wunderbarerweise hat mich der Test mit einem jdk1.6.24 einen Schritt weitergebracht:

Der Deploy in meinem SDK sieht so aus:
 119:26:47,347 INFO  [AutoDeployDir:167] Processing jerger-layouttpl-6.1.0.1.war
 2...
 319:26:47,389 INFO  [LayoutTemplateAutoDeployListener:50] Layout templates for /home/mje/code/jerger.org/liferayPortal/deploy/jerger-layouttpl-6.1.0.1.war copied successfully. Deployment will start in a few seconds.
 4...
 529.02.2012 19:26:53 org.apache.catalina.startup.HostConfig
 6 checkResources
 7INFO: Reloading context [/jerger-layouttpl]
 8...
 919:27:05,923 DEBUG [HotDeployMessageListener:38] jerger-layouttpl was undeployed
10[b]29.02.2012 19:27:05 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
11SCHWERWIEGEND: The web application [/jerger-layouttpl] appears to have started a thread named [MultiThreadedHttpConnectionManager cleanup] but has failed to stop it. This is very likely to create a memory leak.
1219:27:06,534 DEBUG [PluginPackageHotDeployListener:91] Invoking deploy for jerger-layouttpl
13...
14[/b]


Auf meinem Server:
 120:20:41,540 DEBUG [ExtAutoDeployListener:35] Invoking deploy for /opt/liferay_prod/deploy/jerger-layouttpl-6.1.0.1.war
 2...
 320:20:41,560 INFO  [LayoutTemplateAutoDeployListener:50] Layout templates for /opt/liferay_prod/deploy/jerger-layouttpl-6.1.0
 4.1.war copied successfully. Deployment will start in a few seconds.
 5...
 6Feb 29, 2012 8:20:48 PM org.apache.catalina.startup.HostConfig checkResources
 7INFO: Reloading context [/jerger-layouttpl]
 8...
 920:20:48,669 DEBUG [HotDeployMessageListener:38] jerger-layouttpl was undeployed

Und hier endet der Deployment Vorgang leider immer noch.

Gibts hier irgendwelche Ideen?
Michael Jerger
Hot Deployment nach Migration 6.0.6 -> 6.1
March 15, 2012 5:33 AM
Answer

Michael Jerger

Rank: New Member

Posts: 17

Join Date: March 15, 2011

Recent Posts

Hi zusammen,

für alle, die irgendwann mal ein ähnliches Problem haben, Ich hab das Thema inzwischen weiter eingekreist.
Ein Bugreport dazu findet sich unter http://issues.liferay.com/browse/LPS-26099

Viele Grüße,
Michael