Witam. Mam takie pytanie: jak robie projekt z servletami, to jako zaleznosc dodaje javax.servlet:servlet-api.jar, ktore sie znajduje w repo mavena. Jednakze nie wiem jak zrobic projekt ejb3. Znalazlem stronke http://maven.apache.org/guides/mini/guide-coping-with-sun-jars.html, ale tam jest javax.persistence jako zaleznosc dla ejb3, nie wiem czy to jest poprawne? Linkuja tam tez do repo java.net, ale tam sa nowe wersje api, np javaee-6.
Czy jedynym sposobem w tej chwili jest sciagniecie ejb.jar ze specyfikacji, zainstalowanie w jakims wlasnym repo, i dodanie tego jako zaleznosci? Jak wy to zalatwiacie?
No chyba nie ;):
<dependency>
<groupId>javax.javaee</groupId>
<artifactId>javaee</artifactId>
<version>5.0</version>
</dependency>
Względnie w mvn archetype:generate masz projekt EJB3 maven-archetype-j2ee-simple.
Ok, dzieki za podpowiedz.
Jak uzyje archetype:maven-j2ee-simple to mi wygeneruje co prawda projekt j2ee z modulami, ale nie widze nigdzie zaleznosci do ejb-api, ani jta itd.
Jak wygeneruje sobie webappa, to np web.xml ma wersje 2.3 - da sie to jakos konfigurowac? To samo dla application.xml - wersja 1.3.
Teraz troche marudzenia - wygenerowalem j2ee-simple, i nawet sie nie da zbudowac bo zawiera modul site ktorego nie ma wsrod modulow. I co to jest w ogole modul projects? ejbs servlets to rozumiem, ale projects? ejb-jar.xml i web.xml mam pusciutkie - to nie jest nawet zgodny ze specyfikacja projekt. Troche zaczynam rozumiec dlaczego tak wiele osob marudzi na maveny.
Pozdrawiam.
Aha nie moge znalezc a centralnym repo mavena javax.javaee:javaee:5.0, gdzie to znalazles?
http://bin.thinkpond.org/repo/javax/javaee/javaee/5.0/
Wiele rzeczy w tych domyślnych konfiguracjach jest dość stare. Trzeba ręcznie przestawić w pom.xml. Niestety ekipa od Mavena jest głucha na prośby o aktualizację archetypów.
Ok, dzieki.
A jeszcze takie pytanie - Ty zdaje sie uzywasz netbeansa, jak tam wyglada dzialanie projektow mavenowych? Jak np zrobisz projekt war, to sa dostepne sa specyficzne opcje dla projektow webowych? To samo w eclipse - da sie jakos to tak skonfigurowac zeby projekt webowy pod eclipsem umial korzystac z wtp, projekt jpa mial facet jpa, i to samo dla ejb?
da się. Jeżeli dasz eclipse:eclipse, albo nbm:nbm (jednak używam Eclipse, a z NB mam tylko pierwsza certyfikację) to wszystko się powinno samo skonfigurować. Względnie można dodać "na chama" odpowiednią konfigurację poprzez skonfigurowanie pluginu. Jest to dość upierdliwe, bo np. w przypadku eclipse trzeba znać klasy faces.
Witam,
może zadam podobne pytanie...jak tworzycie projekty ear tzn projekty zwierające pare projektów jar. Uzywacie
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/${project.build.finalName}/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ear-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<finalName>
XXX
</finalName>
<defaultLibBundleDir>
lib
</defaultLibBundleDir>
<displayName>
XXXEAR
</displayName>
<generateApplicationXml>
true
</generateApplicationXml>
<modules>
<ejbModule>
<groupId>pl.XXX</groupId>
<artifactId>XXXEJB</artifactId>
</ejbModule>
<webModule>
<groupId>pl.XXX</groupId>
<artifactId>XXXWEB</artifactId>
<contextRoot>XXX</contextRoot>
</webModule>
</modules>
</configuration>
</plugin>
Można tak w osobnym projekcie EAR.
Jeszcze tylko bym dodal element <version>5</version> coby wygenerowany application.xml byl poprawny (no chyba ze pisze sie dla starszej wersji, no ale domyslnie jest to 1.3 co jest troche masochizmem).