You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Aaron Johnson (JIRA)" <ji...@apache.org> on 2012/08/31 20:41:08 UTC

[jira] [Created] (WW-3870) Allow Package Inheritance in Plugins

Aaron Johnson created WW-3870:
---------------------------------

             Summary: Allow Package Inheritance in Plugins
                 Key: WW-3870
                 URL: https://issues.apache.org/jira/browse/WW-3870
             Project: Struts 2
          Issue Type: Improvement
          Components: XML Configuration
            Reporter: Aaron Johnson


Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Lukasz Lenart (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13446251#comment-13446251 ] 

Lukasz Lenart commented on WW-3870:
-----------------------------------

Nice, so as I understand right now the note

{note}
lugins are not loaded in any particular order. Plugins should not have dependencies on each other. A plugin may depend on classes provided by Struts Core, but it should not depend on classes loaded by another plugin.
{note}

isn't valid any more and plugins can depend on each other in case of packages ?
                
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Aaron Johnson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13446257#comment-13446257 ] 

Aaron Johnson commented on WW-3870:
-----------------------------------

The spirit of the note would no longer be correct.  The patch would allow plugins to depend on package configuration defined in other plugins.  The wording about classes is a little confusing.  Loading of classes isn't the responsibility of struts.  You can always define configuration that includes classes that aren't a part of your plugin.  As long as the class is in the class loader, the configuration would load.
                
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Comment Edited] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Lukasz Lenart (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13446251#comment-13446251 ] 

Lukasz Lenart edited comment on WW-3870 at 9/1/12 6:00 AM:
-----------------------------------------------------------

Nice, so as I understand right now the note from [1]

{panel}
Plugins are not loaded in any particular order. Plugins should not have dependencies on each other. A plugin may depend on classes provided by Struts Core, but it should not depend on classes loaded by another plugin.
{panel}

isn't valid any more and plugins can depend on each other in case of packages ?

[1] http://struts.apache.org/2.x/docs/plugins.html
                
      was (Author: lukaszlenart):
    Nice, so as I understand right now the note from [1]

{panel}
lugins are not loaded in any particular order. Plugins should not have dependencies on each other. A plugin may depend on classes provided by Struts Core, but it should not depend on classes loaded by another plugin.
{panel}

isn't valid any more and plugins can depend on each other in case of packages ?

[1] http://struts.apache.org/2.x/docs/plugins.html
                  
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13447131#comment-13447131 ] 

Hudson commented on WW-3870:
----------------------------

Integrated in Struts2 #522 (See [https://builds.apache.org/job/Struts2/522/])
    WW-3870 Adds package inheritance in plugins (Revision 1380129)

     Result = SUCCESS
lukaszlenart : 
Files : 
* /struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/config/ConfigurationUtil.java
* /struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/config/providers/CycleDetector.java
* /struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/config/providers/DirectedGraph.java
* /struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProvider.java
* /struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/config/providers/XmlConfigurationProviderPackagesTest.java
* /struts/struts2/trunk/xwork-core/src/test/resources/com/opensymphony/xwork2/config/providers/xwork-test-package-inheritance.xml

                
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>            Assignee: Lukasz Lenart
>             Fix For: 2.3.5
>
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Aaron Johnson (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aaron Johnson updated WW-3870:
------------------------------

    Attachment: package-inheritance.patch

Patch
                
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Comment Edited] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Lukasz Lenart (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13447124#comment-13447124 ] 

Lukasz Lenart edited comment on WW-3870 at 9/3/12 4:46 PM:
-----------------------------------------------------------

Patch applied, docs updated! Thanks!

https://cwiki.apache.org/confluence/display/WW/Plugins
                
      was (Author: lukaszlenart):
    Patch applied, docs updated! Thanks!
                  
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>            Assignee: Lukasz Lenart
>             Fix For: 2.3.5
>
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Aaron Johnson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13446305#comment-13446305 ] 

Aaron Johnson commented on WW-3870:
-----------------------------------

It might be slightly clearer to use the 'parent' name instead of 'depends' since 'parent' is the XML element's attribute.
{panel}Packages defined in a plugin can have parent packages that are defined in another plugin.  Plugins may define configuration elements with classes not contained in the plugin.  Any classes not included in the plugin's JAR must be on the application's classpath at runtime.{panel}

I'm not sure how you version the wiki, but it should be clear which version of Struts 2 the behavior changes.
                
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Lukasz Lenart (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13446265#comment-13446265 ] 

Lukasz Lenart commented on WW-3870:
-----------------------------------

So after applying the patch, the note should sound like this:

{panel}
Packages defined in a plugin can depend on other packages defined in different plugins. There is no issue with depending on different classes provided by different plugins as it isn't Struts 2 responsibility to handle class loading but a class loader.
{panel}
                
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Resolved] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Lukasz Lenart (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Lukasz Lenart resolved WW-3870.
-------------------------------

       Resolution: Fixed
    Fix Version/s: 2.3.5
         Assignee: Lukasz Lenart

Patch applied, docs updated! Thanks!
                
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>            Assignee: Lukasz Lenart
>             Fix For: 2.3.5
>
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Comment Edited] (WW-3870) Allow Package Inheritance in Plugins

Posted by "Lukasz Lenart (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/WW-3870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13446251#comment-13446251 ] 

Lukasz Lenart edited comment on WW-3870 at 9/1/12 5:59 AM:
-----------------------------------------------------------

Nice, so as I understand right now the note from [1]

{panel}
lugins are not loaded in any particular order. Plugins should not have dependencies on each other. A plugin may depend on classes provided by Struts Core, but it should not depend on classes loaded by another plugin.
{panel}

isn't valid any more and plugins can depend on each other in case of packages ?

[1] http://struts.apache.org/2.x/docs/plugins.html
                
      was (Author: lukaszlenart):
    Nice, so as I understand right now the note

{note}
lugins are not loaded in any particular order. Plugins should not have dependencies on each other. A plugin may depend on classes provided by Struts Core, but it should not depend on classes loaded by another plugin.
{note}

isn't valid any more and plugins can depend on each other in case of packages ?
                  
> Allow Package Inheritance in Plugins
> ------------------------------------
>
>                 Key: WW-3870
>                 URL: https://issues.apache.org/jira/browse/WW-3870
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: XML Configuration
>            Reporter: Aaron Johnson
>         Attachments: package-inheritance.patch
>
>
> Allow packages in plugins to have packages defined in a different plugin as a parent.  This is currently not supported (http://struts.apache.org/2.3.4.1/docs/plugins.html).  My team is creating a plugin with some base features for our organization.  It would be nice to be able to use result types and other configuration defined in other plugins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira