[jira] [Commented] (WW-4302) XmlConfigurationProvider.loadedFileUrls only contains the last one of urls with same file name

2014-03-28 Thread ASF subversion and git services (JIRA)

[ 
https://issues.apache.org/jira/browse/WW-4302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13951369#comment-13951369
 ] 

ASF subversion and git services commented on WW-4302:
-

Commit 1fae47dfc6c79624488f838e3cc8790fb2d00ae8 in struts's branch 
refs/heads/develop from [~lukaszlenart]
[ https://git-wip-us.apache.org/repos/asf?p=struts.git;h=1fae47d ]

WW-4302 XmlConfigurationProvider.loadedFileUrls observs all loaded files


> XmlConfigurationProvider.loadedFileUrls only contains the last one of urls 
> with same file name
> --
>
> Key: WW-4302
> URL: https://issues.apache.org/jira/browse/WW-4302
> Project: Struts 2
>  Issue Type: Bug
>  Components: XML Configuration
>Affects Versions: 2.3.16.1
>Reporter: Liang Liu
>Assignee: Lukasz Lenart
>Priority: Minor
>  Labels: patch
> Fix For: 2.3.17
>
>
> In XmlConfigurationProvider, the field loadedFileUrls contains the xml files 
> loaded. The loaded files will be checked if they are modified for 
> configuration reloading.
> {code:java}
> public boolean needsReload() {
> for (String url : loadedFileUrls) {
> if (fileManager.fileNeedsReloading(url)) {
> return true;
> }
> }
> return false;
> }
> {code}
> But in method private List loadConfigurationFiles(String fileName, 
> Element includeElement), after the while (urls.hasNext()) loop, the variable 
> url is assigned by the last one of urls with same file name.
> So when loadedFileUrls.add(url.toString()); is called in the for (Document 
> doc : docs) loop, only THE LAST ONE is added to loadedFileUrls.
> I wrote a demo. I set  value="true"/>
> . I wrote two configuration files: struts-plugin.xml and struts-biz.xml in my 
> web project. I use struts plugins such as struts-spring-plugin, 
> struts-json-plugin and so on.
> The reloading works when I changed the file struts-biz.xml in my project. But 
> it does not work when I changed struts-plugin.xml in my project. I debug 
> XmlConfigurationProvider and see only the struts-plugin.xml in 
> struts-spring-plugin is contained in loadedFileUrls.
> I tried to fix it by moving the loadedFileUrls.add(url.toString()); into the 
> while (urls.hasNext()) loop. I send a pull request in github: 
> https://github.com/apache/struts/pull/6, and I test it running well.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (WW-4302) XmlConfigurationProvider.loadedFileUrls only contains the last one of urls with same file name

2014-03-20 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/WW-4302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13941660#comment-13941660
 ] 

ASF GitHub Bot commented on WW-4302:


Github user code4craft commented on the pull request:

https://github.com/apache/struts/pull/6#issuecomment-38159811
  
The JIRA issue is 
[https://issues.apache.org/jira/browse/WW-4302](https://issues.apache.org/jira/browse/WW-4302).


> XmlConfigurationProvider.loadedFileUrls only contains the last one of urls 
> with same file name
> --
>
> Key: WW-4302
> URL: https://issues.apache.org/jira/browse/WW-4302
> Project: Struts 2
>  Issue Type: Bug
>  Components: XML Configuration
>Affects Versions: 2.3.16.1
>Reporter: Liang Liu
>Priority: Minor
>  Labels: patch
> Fix For: 2.3.17
>
>
> In XmlConfigurationProvider, the field loadedFileUrls contains the xml files 
> loaded. The loaded files will be checked if they are modified for 
> configuration reloading.
> public boolean needsReload() {
> for (String url : loadedFileUrls) {
> if (fileManager.fileNeedsReloading(url)) {
> return true;
> }
> }
> return false;
> }
> But in method private List loadConfigurationFiles(String fileName, 
> Element includeElement), after the while (urls.hasNext()) loop, the variable 
> url is assigned by the last one of urls with same file name.
> So when loadedFileUrls.add(url.toString()); is called in the for (Document 
> doc : docs) loop, only THE LAST ONE is added to loadedFileUrls.
> I wrote a demo. I set  value="true"/>
> . I wrote two configuration files: struts-plugin.xml and struts-biz.xml in my 
> web project. I use struts plugins such as struts-spring-plugin, 
> struts-json-plugin and so on.
> The reloading works when I changed the file struts-biz.xml in my project. But 
> it does not work when I changed struts-plugin.xml in my project. I debug 
> XmlConfigurationProvider and see only the struts-plugin.xml in 
> struts-spring-plugin is contained in loadedFileUrls.
> I tried to fix it by moving the loadedFileUrls.add(url.toString()); into the 
> while (urls.hasNext()) loop. I send a pull request in github: 
> https://github.com/apache/struts/pull/6, and I test it running well.



--
This message was sent by Atlassian JIRA
(v6.2#6252)