[ 
https://issues.apache.org/struts/browse/WW-2205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_42285
 ] 

Brian Pontarelli commented on WW-2205:
--------------------------------------

Perhaps the ParentPackage annotation should be a package level annotation as 
well. This would allow all actions within the same Java package to be placed 
into the same XWork package. Besides that, I can't think of a clean convention 
over configuration approach.

Also, SmartURLs and I think the current zero-config allow you to specify a 
property to set the default ParentPackage for everything that they setup. In 
SmartURLs the configuration setting is named:

    smarturls.action.default.parent.package

This influences the entire application. So, this along with the Java package 
annotation and the class annotation should cover most cases, unless I'm missing 
something.

> Easier linkage of auto-Detected actions to custom XWork packages
> ----------------------------------------------------------------
>
>                 Key: WW-2205
>                 URL: https://issues.apache.org/struts/browse/WW-2205
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: Configuration
>    Affects Versions: 2.0.9
>            Reporter: Eric D. Nielsen
>            Priority: Minor
>             Fix For: Future
>
>
> There doesn't seem to be a good way to DRYly link all actions auto-detected 
> by actionPackages to a arbitrary XWork package configured in struts.xml.
> Using an explicit @ParentPackage addresses this, but having to repeat this 
> annotation in every action isn't DRY.  Alternately forcing actions to extend 
> some base class with said annotation isn't clean.
> The documentation mentions that auto-Detected packages use a portion of the 
> action's java package to set the namespace, but it doesn't mention anything 
> about setting the action's package.  I've tried several permutations of java 
> and xwork package names checking if I could get a match, but it doesn't seem 
> like they connect  (it would be nice if config-browser listed the XWork 
> package to help debug this)
> A few possible solutions:
> a) allow some sort of "default-package-ref" in struts the XML to state which 
> package auto-detected actions would be placedin (of couse @ParentPackage 
> would override)
> b) allow an actionPackages setting at the package level rather than the 
> application level, thus any actions detected in that java package would be 
> assigned to the containing XWork package (still allowing the @ParentPackage 
> override)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to