[
https://issues.apache.org/jira/browse/WICKET-4162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13152424#comment-13152424
]
Sven Meier commented on WICKET-4162:
------------------------------------
Seems we still don't have a solution :(.
ResourceStreamLocator tries to locate "wicket-jar.properties" from classloader:
URL url = classLoader.getResource(path);
But if there are multiple "wicket-jar.properties" files on the class path via
the same class loader, it will consider the first found resource only.
Note that this is the case currently only if you run wicket-examples inside
Eclipse:
/wicket-core/src/test/java/wicket-jar.properties
/wicket-extensions/src/main/java/wicket-jar.properties
Both resources have the same name and are loaded via the same class loader.
> Add new StringResourceLoader to allow Wicket extensions to provide
> localization resource bundles
> ------------------------------------------------------------------------------------------------
>
> Key: WICKET-4162
> URL: https://issues.apache.org/jira/browse/WICKET-4162
> Project: Wicket
> Issue Type: New Feature
> Components: wicket
> Affects Versions: 1.5.1
> Reporter: Bertrand Guay-Paquet
> Assignee: Sven Meier
> Labels: extension, localization
> Fix For: 1.5.3
>
> Attachments: WICKET-4162.patch, jar_resource.patch
>
>
> Issue:
> It is currently not possible to provide default localization resource bundles
> for components in wicket extension modules (e.g. wicket-extensions). See
> issues WICKET-3911 and WICKET-4154 where this was a problem.
> Proposed changes:
> 1-Add a new IStringResourceLoader type (WicketExtensionStringResourceLoader?)
> which checks the root of the jar containing the component for properties in
> extension.properties.
> 2-Insert this new resource loader in the existing default resource loader
> chain:
> ResourceSettings() constructor:
> stringResourceLoaders.add(new ComponentStringResourceLoader());
> stringResourceLoaders.add(new PackageStringResourceLoader());
> stringResourceLoaders.add(new
> ClassStringResourceLoader(application.getClass()));
> // New loader inserted here
> stringResourceLoaders.add(new
> WicketExtensionStringResourceLoader());
> stringResourceLoaders.add(new ValidatorStringResourceLoader());
> 3-Start adding extension.properties files in wicket-extension and friends.
> Questions:
> Is a similar effort already underway?
> Are there any better ideas?
> Should the new loader be inserted at the end of the chain instead?
> Do you prefer other names for the loader or the properties file?
> I am prepared to provide a patch sometime next week if this is agreed on.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira