Thanks for the suggestion Roland, it seems there is no good solution to my problem, its 6 of one 1/2 dozen of the other sort of thing. We prefer the automatic inclusion of our business logic via transitive dependencies, we simply use remote stateless EJBs and a means or remoting and clustering. So as a result we have
EJB --> POJO business --> Transitive dependencies Where an EJB can depend on more than one POJO business implementation, as a result, we could no longer simply include the EJB in the EAR POM and have all of the transitive dependencies included if we used the 'provided' scope. However this would get rid of our problem with the client needing to exclude, we would simply add the dependency in the EAR as well. If we set the dependency to 'provided' will my transitive dependencies of the provided dependencies till be included in the generated manifest? We're using JBoss with an EAR scoped class loader, so our EJB must declare all required dependencies in the EJB's Manifest file. Thanks, Todd On 6/9/06, Roland Asmann <[EMAIL PROTECTED]> wrote:
Thinking about it some more (and especially about what I meant when I wrote that reply!), you could also do the following: webapp: ... <dependency> <groupId>ejb.groupId</groupId> <artifactId>ejb-name<artifactId> <type>ejb-client</type> </dependency> <dependency> <groupId>something.group</groupId> <artifactId>something-else<artifactId> <scope>provided</provided> </dependency> ... That case you are 100% sure the library will not be in the webapp. The <exclude> has a disadvantage that it excludes the version of the defined dependency, but another transitive dependency that has another version WILL make it into the jar! Roland On Friday 09 June 2006 15:45, Todd Nine wrote: > Thanks for the excludes and provided suggestion, but I'm not sure they'll > help. The jars I want excluded aren't part of the EJB,they're dependencies > and transitive dependencies of the EJB, not classes in the EJB project. > Roland, I'm not sure I understand your 'provided' method, can you > elaborate? > > Thanks, > Todd > > On 6/7/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> > > wrote: > > The EJB 2.1-SNAPSHOT (not sure if it's been released) includes a > > 'clientExcludes' directive that can be added as a subelement of the > > generateClient element... > > > > ... > > <generateClient>true</generateClient> > > <clientExcludes> > > <clientExclude>**/appversion.properties</clientExclude> > > <clientExclude>**/test/**/*.*</clientExclude> > > </clientExcludes> > > ... > > > > > > > > -----Original Message----- > > From: Todd Nine [mailto:[EMAIL PROTECTED] > > Sent: Wednesday, June 07, 2006 11:49 AM > > To: [email protected] > > Subject: EJB Client dependencies > > > > Hi all, > > I'm declaring an EJB client with the following decencies in a webapp, > > and the common interfaces and beans for parameters and return values > > > > > > <dependency> > > <groupId>ata.partnership</groupId> > > <artifactId>partnershipCommon</artifactId> > > <version>1.0.0-SNAPSHOT</version> > > </dependency> > > <dependency> > > <groupId>ata.partnership</groupId> > > <artifactId>partnershipEJB</artifactId> > > <version>1.0.0-SNAPSHOT</version> > > <type>ejb-client</type> > > </dependency> > > > > This works for requiring the EJB client, however, I'm also receiving > > partnershipBusiness, partnershipDataAccess, etc etc. These are all > > required in my EJB, but I don't want these transitive dependencies to be > > deployed on the remote client (The webapp). Short of an excludes > > directive in the webapp when I declare the ejb client dependency, is > > there any parameter I can use in the EJB plugin to exclude all decencies > > of the EJB on the client side when I build the ejb client? > > > > Thanks, > > Todd > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
