# MAVEN + CDI + JSF + TomEE



## pl4gu33 (18. Sep 2012)

Hey,...

ich teste gerade CDI,JSF,PrimeFaces & TomEE .... wenn ich alles in einem normalen DynamicWebProject mache, funktioniert alles ohne Probleme, ich kann Injection machen und JSF benutzen etc. 

Nun ist es so, dass ich in Maven mehrere Projekte habe und ich will CDI projektübergreifend machen. Dazu hab ich in meinem DynamicWebProject die Dependencies des Projektes geaddet und dann ganz normal injected. Wenn ich nun mein Server starte bekomme ich 


```
java.lang.NoClassDefFoundError: ... Klasse aus dem anderen Projekt;
....
Caused by: java.lang.ClassNotFoundException...Klasse aus dem anderen Projekt:
```

Also liegt es wohl daran, dass der Server die Klasse nicht findet,... aber ich hab keine Ahnung, wie ich dem Server das sagen kann, ich hab schon das Projekt beim Server geaddet nix hat geholfen,.... 

Nun meine Frage geht das überhaupt so in Maven, was genau mach ich falsch ... weil wie gesagt in einem Projekt funktioniert alles ohne Probleme... projektübergreifend nicht


----------



## kama (18. Sep 2012)

Hallo,

OHNE POM files und die Projekt Struktur etc. wird das schwierig hier zu raten ;-(

Dass eine Abhängigkeit nicht da ist sieht man Anhand der NoClassDefFound Exception aber ansonsten ?

Gruß
Karl-Heinz Marbaise


----------



## pl4gu33 (18. Sep 2012)

also auf die Klasse kann ich zugreifen, also das andere Projekt etc. sind in der POM drin. Ich kann auf alle Klasse und Methoden des "anderen" Projekts zugreifen.... nur wenn ich Run As -> Server mache krachts halt, da der Server die Klasse des anderen Projekts nicht kennt ... das Projekt ansich kennt das andere Projekt und da funzt auch alles ohne Probleme, bloß nicht mit dem Server ... wenn ich z.b. ne Main Methode einbaue und auf andere Klassen des Projekts zugreife keine Probleme,... auch mit einer WELD SE Bootstrap CDI klappt alles projektübergreifend  .... bloß nicht mit dem Server daher denke ich, dass der Server irgendwie nur das eine Projekt im "Path" hat

[WR]Ich kanns gerade nicht posten da ich gerade unterwegs bin, daher versuch ichs mal zu erklären,... vll. hilft das  [/WR]


----------



## kama (18. Sep 2012)

Hi,

sorry aber OHNE pom.xml files etc. wird das nichts...

Gruß
Karl-Heinz Marbaise


----------



## pl4gu33 (19. Sep 2012)

okay verstehe ich  ich werde heute abend die POMs etc. posten 

vorab noch eine andere Frage.... aber gehen tut das schon mit MAVEN ein "Dynamic Web Projekt" zu starten, welches dann innerhalb Eclipse ohne irgendwelche Komprimierungen oder Änderungen auf andere Projekte zugreift... ganz normal über Run As -> Server


----------



## Sym (19. Sep 2012)

existiert die beans.xml in den jeweiligen Modulen?


----------



## pl4gu33 (21. Sep 2012)

Sorry, dass ich mich jetzt erst wieder melde  

ich hab das Problem inzwischen gelöst,... 

Project 1 (Normales Java Project)

Project 2 (Dynamic Web Project)

beide kannten sich durch die Dependencies in der POM das ging ja wie gesagt, bloß wenn man es ausführt kam die Exception, dass eine Klasse P1 nicht gefunden wurde. 

Lösung: P1 mit Maven install ausführen, dann hat man im Target Ordner ein JAR ... dieses dann mittels Build Path -> Jar in P2 hinzufügen und schon kann mans starten


----------



## Sym (21. Sep 2012)

Wieso BuildPath?

Die Dependency solltest Du ja mit Maven einfach ranziehen können.

Ohne pom.xml ist dies aber schwer zu analysieren. Wenn es so für Dich funktioniert ists ja gut. Richtig liest sich das allerdings nicht.


----------



## pl4gu33 (21. Sep 2012)

okay das Problem war nicht gelöst  es wurde nur verdeckt 

aber nun ist es gelöst und es ist schon fast peinlich ein Serializable hat gefehlt -.- 
trotzdem danke an alle


----------

