Wenn Classloader isolation dann keine JNDI Verbindung mit Webapp in Jboss

minimike

Mitglied
Hi

Als Javaeinsteiger habe ich mir den Jboss 5.1 aus verschiedenen Gründen ausgesucht. Auch wenn er für mich als Anfänger manchmal etwas schwer zu händeln ist.
Vorrausgegangen war folgender Wunsch, EAR und WAR Dateien von Projekten oder kommerziellen Herstellern für den Betrieb in Jboss am besten gar nicht abändern zu müssen.
Da kommt man dann aber hier und da nicht um eine jboss-classloading.xml nicht herum. Um zum Beispiel die Apps zu isolieren damit diese nicht die selben Klassen aus Jboss laden und es dann anschliessend Probleme gibt. Oder es gibt dann Probleme mit Versionsunterschieden wenn Jboss neuere oder ältere Klassen liefert und diese anstatt geladen werden.

Jetzt habe ich mir den stabielen Brunch von Apache Jetspeed per SVN gezogen und ein daraus EAR gebaut. Es handelt sich um eine EAR und sechs WAR Dateien in der EAR. Zuzüglich noch JAR's usw.

Mittlerweile scheine ich das mit dem isolieren von Webapps ansatzweise zu begreifen.

jboss-classloading.xml from my EAR
[XML]
<?xml version="1.0" encoding="UTF-8"?>
<classloading xmlns="urn:jboss:classloading:1.0"
name="jetspeed-enterprise-full-2.2.1.ear"
domain="jetspeed-enterprise-full-2.2.1.ear"
parent-domain="DefaultDomain"
export-all="NON_EMPTY"
import-all="false">
</classloading>
[/XML]
jboss-web.xml one of one from my WAR's
[XML]
<jboss-web>
<security-domain flushOnSessionInvalidation="true">java:/jaas/Jetspeed</security-domain>
<resource-ref>
<res-ref-name>jdbc/jetspeed</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<jndi-name>java:/JetspeedDS</jndi-name>
</resource-ref>
</jboss-web>
[/XML]
jboss-classloading.xml one of one from my WAR's
[XML]
<?xml version="1.0" encoding="UTF-8"?>
<classloading xmlns="urn:jboss:classloading:1.0"
name="jetspeed-demo-2.2.1.war"
domain="jetspeed-demo-2.2.1.war"
parent-domain="jetspeed-enterprise-full-2.2.1.ear"
export-all="NON_EMPTY"
import-all="true">
</classloading>[/XML]

Damit kann ich zumindest ohne Konflikte mein Ear starten auch wenn zum Beispiel xercesImpl.jar mehrmals vorhanden ist. Nur ich komm von dem WAR im EAR nicht an die JNDI Dataresource mit einer PostgreSQL Datenbank heran. Die JNDI Datasource ist korrekt konfiguriert.

Welche Möglichkeiten habe ich zum Debuggen? Und wenn es wirklich daran liegt, wie kann ich das Beheben?
 
T

thorty.w

Gast
Hallo,

habe ein ähnliches Problem! Hast du diesbezüglich eine Lösung gefunden?

MfG
Thorty
 

minimike

Mitglied
Leider nein. Das hat mich gezwungen die Applikation in die Ecke zu stellen.
Derzeit Arbeite ich nun mit GateIn dem Nachfolger von Jboss Portal
 

Neue Themen


Oben