You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Roland Schneider (JIRA)" <ji...@codehaus.org> on 2010/09/15 10:11:33 UTC

[jira] Issue Comment Edited: (MEJB-49) ejb-client: Transitive EJB Dependencies should be of type ejb-client

    [ http://jira.codehaus.org/browse/MEJB-49?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=235300#action_235300 ] 

Roland Schneider edited comment on MEJB-49 at 9/15/10 3:09 AM:
---------------------------------------------------------------

I think that you do understand the request as I meant it. I would expect all transient ejb-dependencies of an _ejb_ project to be _ejb-client_ if this project is added as a dependency with {{<type>ejb-client</type>}}. The reason for this is, that it would not make sense for a client to add an _ejb-client_ for the one project but _ejb_ for any other.

After thinking about it, I have noticed that this behavior might break things at runtime because it would be possible, that the _testcase-ejb2:ejb-client_ depends on classes in _testcase-ejb1:ejb_. That is why I think this is not the way to solve my problem.

The problem I have is that I only want _ejb-client_-dependencies in my Swing client app and only _ejb_-dependencies for my EAR file. But from what I have found out so far is that I can have only one of these configurations but not both simultaneously: When I set the type of the inter-ejb-dependencies to _ejb-client_ the transient ejb-projects are added to the EAR as a lib file. If I set it to type _ejb_ the transient dependencies to other ejb-project will be of type _ejb_.

Maybe I should discuss this issue in a forum or mailing list and not by directly creating an jira issue...

      was (Author: roland):
    I think that you do understand the request as I meant it. I would expect all transient ejb-dependencies of an _ejb_ project to be _ejb-client_ if this project is added as a dependency with {{<type>ejb-client</ejb>}}. The reason for this is, that it would not make sense for a client to add an _ejb-client_ for the one project but _ejb_ for any other.

After thinking about it, I have noticed that this behavior might break things at runtime because it would be possible, that the _testcase-ejb2:ejb-client_ depends on classes in _testcase-ejb1:ejb_. That is why I think this is not the way to solve my problem.

The problem I have is that I only want _ejb-client_-dependencies in my Swing client app and only _ejb_-dependencies for my EAR file. But from what I have found out so far is that I can have only one of these configurations but not both simultaneously: When I set the type of the inter-ejb-dependencies to _ejb-client_ the transient ejb-projects are added to the EAR as a lib file. If I set it to type _ejb_ the transient dependencies to other ejb-project will be of type _ejb_.

Maybe I should discuss this issue in a forum or mailing list and not by directly creating an jira issue...
  
> ejb-client: Transitive EJB Dependencies should be of type ejb-client
> --------------------------------------------------------------------
>
>                 Key: MEJB-49
>                 URL: http://jira.codehaus.org/browse/MEJB-49
>             Project: Maven 2.x EJB Plugin
>          Issue Type: Improvement
>    Affects Versions: 2.2.1
>            Reporter: Roland Schneider
>         Attachments: ejb-testcase.zip
>
>
> When setting a dependency to an ejb-client jar that has dependencies to other ejb projects, these transitive dependencies are resolved as type ejb. It would be better when those transient dependencies would be referenced as ejb-client as well.
> I have not found any solution to this problem other than to manually exclude every single transient "ejb" dependency and instead add the ejb-client version of it directly. However this is cumbersome and error-prone for really complex projects.
> I have included a test-project-setup (no junit test) that demonstrates the described behavior. When you execute dependency:tree in the client project, you can see that the testcase-ejb1 dependency is of type "ejb".

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira