Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

JBoss 4.2.2 Probleme mit Deploy

Empfohlene Antworten

Veröffentlicht

Hallo,

ich habe mir einen virtual host "meinedomäne.de" über die server.xml des JBoss angelget. Dort soll dann auch das Document Root für meine Webanwendung sein. Habe mir dafür Apache2 und mod_jk eingerichtet, um über meine Domäne aus dem Internaet auf den Tomcat zugreifen zu können.

Mein Problem:

Wenn ich eine Webanwendung (z.b. myweb.ear) deploye, erscheint in allen Unterverzeichnissen meiner Anwendung work/jboss.web/meinedomäne.de/myweb/* jeweils nur eine tldCache.ser - Datei auf.

Frage:

Wohin verweisen eigentlich diese tldCache-Dateien und was muss ich wohl tun, damit mir das .war - Archiv aus meiner Anwendung dorthin entpackt wird, damit ich darauf zugreifen kann?

Vielen Dank

Gruß Jan

Servus,

wohin deployst Du denn Deine Anwendung? In der default-Konfiguration oder einer davon abgeleiteten solltest Du Dein WAR einfach in das Verzeichnis deploy/ legen. Wenn Du am DeploymentScanner nichts verändert hast, deployed der Server nach spätestens 5 Sekunden Deine Anwendung. Das sollte auch aus dem log/server.log hervorgehen.

In work wird meines Wissens nur geschrieben, wenn Du wirklich auf Inhalte der Webanwendung zugreifst, da der Tomcat nicht die komplette Anwendung vorkompiliert, sondern nur die zugegriffenen Inhalte.

Peter

Hallo kingofbrain,

vielen Dank erst mal.

Vollkommen richtig, ich deploye ins default-Verzeichnis.

Nur wie kann ich jetzt auf meine Startseite zugreifen?

Meine Seam-Anwendung hat grob folgende Struktur.

myweb.ear

+ META-INF

+ app.war / - index.xhtml und andere

+ app.jar

+ jboss-seam.jar

Meine Vorstellung ist, ich komme also über den Apache über Port 80 vom Internet aus rein und der Apache leitet mich per mod_jk an den Tomcat zu Port 8009 weiter, so dass ich mich in der Engine "jboss.work" auf dem Host "meinedomäne.de" befinde.

Und von dort aus würde ich gern die Webanwendung aufrufen aber ich finde irgendwie kein Startverzeichnis, weil in allen Unterverzeichnissen immer nur tldCache.ser steht.

Irgend etwas habe ich da grundsätzlich noch nicht verstanden.

Viele Grüße

Jan

Servus,

Du sollst nicht ins default-Verzeichnis deployen (ich machs mal deutlicher: "default/"), sondern ins Verzeichnis "default/deploy/". Da Du ein .ear hast, gibt es in diesem EAR unter META-INF eine application.xml und dort wird unter module -> web -> context-root der Startpfad der Anwendung angegeben. Dieser ist z.B. "webapp", dann wäre Dein Pfad http://<HOST>:<PORT>/webapp/ und danach der interne Pfad Deiner Ressourcen im WAR (also z.B. index.html oder index.jsp).

Du kannst ja im JBoss über http://<HOST>:<PORT>/jmx-console auf den internen Zustand des JBoss schauen. Schau doch mal dort unter jboss.web, welche Anwendungen deployt sind.

Peter

Hallo kingofbrain,

deployed habe ich es natürlich ins /default/deploy.

Sorry, wollte nur andeuten, dass ich es nicht ins minimal oder all deployed habe.

Meine application.xml im META-INF sieht wie folgt aus:

<application>

<module>

<web>

<web-uri>app.war</web-uri>

<context-root>/myweb</context-root>

</web>

</module>

<module>

<ejb>app.jar</ejb>

</module>

<module>

<java>jboss-seam.jar</java>

</module>

</application>

Wenn ich auf dem Rechner, der die Webapplikation enthält, http://www.mainedomäne.de/myweb aufrufe, funktioniert alles.

Wenn ich von einem anderen Rechner die Webapplikation http://www.mainedomäne.de/myweb aufrufe, wahrscheinlich gehe ich dann tatsächlich über meinen Router, dann erscheint im Browser:

Seiten-Titel: JBossWeb/2.0.1 GA-Error report:

description The requested resource (/webapp) is not available

Viele Grüße

Jan

PS: Kann man hier irgendwie Text einrücken, um ihn verständlicher zu machen?

Servus,

ab dem Zeitpunkt ist es kein JBoss-Thema mehr, sondern ein Routing-Thema. Da wissen die Netzwerker bestimmte besser Bescheid als ich. :)

Als Anhaltspunkt: Woher weiß denn der Quellrechner, wohin er meinedomäne stecken soll? Kann er das auflösen? Geht es, wenn Du direkt die IP-Adresse des Zielrechners statt des Namens angibst?

Peter

Hallo kingofbrain,

zu allen 3 Anhaltspunkten habe ich keine Ahnung.

Da fehlen mir die Grundlagen.

Ich habe eine eigene Domäne(meinedomäne.de) und mit einer HTTP-Anfrage gelange ich vom Internet aus zu meinem Router, der auf Port 80 lauscht und die Anfrage weiter leitet. So habe ich es bisher verstanden.

Gebe ich nun http://www.meinedomäne.de ein (ohne /webapp) erreiche ich problemlos die index.html, die ich als Route Document des virtual host angegeben haben. (korrekt)

Wenn ich meine Webanwendung erreichen möchte, gebe ich http://www.meinedomäne.de/webapp ein und erhalte die eben genannte Fehlermeldung.

Irgendwas scheine ich noch falsch konfiguriert zu haben.

Sorry, es ist immer schwer sich schriftlich verständlich auszudrücken.

Viele Grüße

Jan

Servus,

und genau da kann ich Dir leider auch nicht weiterhelfen, da meine Netzwerkkenntnisse sich wahrscheinlich mit Deinen ganz gut decken. :)

Du kannst ja mal einen der Moderatoren bitten, diesen Thread ins Netzwerkforum zu verschieben, dann werden die Kollegen dort aufmerksam, die sicher helfen können.

Peter

Nochmals vielen Dank kingofbrain, auch für Deine Geduld.

Es hat mir trotzdem alles sehr viel weiter geholfen.

Viele Grüße

Jan

Frage:

Funktioniert http://www.meinedomäne.de/webapp/

(also mit einem / am ende?)

wenn nicht: poste doch mal deine vhost-datei und deine worker.properties....

Gruß

Dom

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.