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/08/27 15:58:32 UTC
[jira] Created: (MEJB-49) ejb-client: Transitive EJB Dependencies
should be of type ejb-client
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
[jira] Issue Comment Edited: (MEJB-49) ejb-client: Transitive EJB
Dependencies should be of type ejb-client
Posted by "Roland Schneider (JIRA)" <ji...@codehaus.org>.
[ 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
[jira] Commented: (MEJB-49) ejb-client: Transitive EJB Dependencies
should be of type ejb-client
Posted by "Dennis Lundberg (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/MEJB-49?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=235296#action_235296 ]
Dennis Lundberg commented on MEJB-49:
-------------------------------------
I'm not sure I understand your request. This is the output I get when I run 'mvn dependency:tree' in the client module:
{noformat}
[INFO] ------------------------------------------------------------------------
[INFO] Building Unnamed - testcase:testcase-client:jar:1.0.0-SNAPSHOT
[INFO] task-segment: [dependency:tree]
[INFO] ------------------------------------------------------------------------
[INFO] [dependency:tree {execution: default-cli}]
[INFO] testcase:testcase-client:jar:1.0.0-SNAPSHOT
[INFO] \- testcase:testcase-ejb2:ejb-client:client:1.0.0-SNAPSHOT:compile
[INFO] \- testcase:testcase-ejb1:ejb:1.0.0-SNAPSHOT:compile
[INFO] ------------------------------------------------------------------------
{noformat}
But the type of testcase-ejb1 (ejb) is to be expected, because thtat is what you specified in the POM of testcase-ejb2.
How is the plugin supposed to know that you want another type?
> 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
[jira] Commented: (MEJB-49) ejb-client: Transitive EJB Dependencies
should be of type ejb-client
Posted by "Roland Schneider (JIRA)" <ji...@codehaus.org>.
[ http://jira.codehaus.org/browse/MEJB-49?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=235300#action_235300 ]
Roland Schneider commented on MEJB-49:
--------------------------------------
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