You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by Jacques Le Roux <ja...@les7arts.com> on 2016/12/08 08:57:58 UTC

Re: svn commit: r1772879 - in /ofbiz/trunk: ./ framework/base/src/main/java/org/apache/ofbiz/base/container/ framework/start/src/main/java/org/apache/ofbiz/base/start/

Le 06/12/2016 � 13:31, taher@apache.org a �crit :
> Author: taher
> Date: Tue Dec  6 12:31:00 2016
> New Revision: 1772879
>
> URL: http://svn.apache.org/viewvc?rev=1772879&view=rev
> Log:
> Improved: Refactor and simplify the startup sequence in OFBiz
> (OFBIZ-8337)
>
> This is another major commit to the refactoring of the startup sequence in
> OFBiz with the following highlighted changes:
>
[...]
> - Add the DTDs defined in base through Gradle because we removed the
>    NativeLibClassLoader and the classpath buildup logic in StartupControlPanel
>
> Thanks: Jacopo Cappellato for reviewing the work
>
> Removed:
>      ofbiz/trunk/framework/start/src/main/java/org/apache/ofbiz/base/start/NativeLibClassLoader.java
> Modified:
>      ofbiz/trunk/build.gradle
[...]
> Modified: ofbiz/trunk/build.gradle
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/build.gradle?rev=1772879&r1=1772878&r2=1772879&view=diff
> ==============================================================================
> --- ofbiz/trunk/build.gradle (original)
> +++ ofbiz/trunk/build.gradle Tue Dec  6 12:31:00 2016
> @@ -204,19 +204,19 @@ sourceSets {
>           resources {
>               srcDirs = getDirectoryInActiveComponentsIfExists('src/main/java')
>               srcDirs += getDirectoryInActiveComponentsIfExists('config')
> +            srcDirs += "${rootDir}/framework/base/dtd"
>               exclude excludedJavaSources
>               exclude excludedConfigFiles
>               // Below are necessary for unit tests run by Gradle and integration tests
> +            exclude { FileTreeElement elem -> elem.getName().contains('.Labels.xml') }
>               exclude { FileTreeElement elem -> elem.getName().contains('.properties') &&
>                   !elem.getName().contains('start.properties') &&
>                   !elem.getName().contains('load-data.properties') &&
>                   !elem.getName().contains('debug.properties') &&
>                   !elem.getName().contains('cache.properties') &&
>                   !elem.getName().contains('test.properties') &&
> -                !elem.getName().contains('rmi.properties')}
> -            exclude { FileTreeElement elem -> elem.getName().contains('.xml') &&
> -                !elem.getName().contains('entityengine.xml')
> -                }
> +                !elem.getName().contains('rmi.properties')
> +            }
>           }
>       }
>   
Hi Taher,

I'm just begining to review and stumbled upon this. What is the plan of having all XML files embedded in the ofbiz.jar file?

Notably the labels files are bad because being static in the ofbiz.jar file they no longer can be modified.
It seems you took this into account after https://issues.apache.org/jira/browse/OFBIZ-8321 but wrongly wrote the related line (you would need a regexp)

+            exclude { FileTreeElement elem -> elem.getName().contains('.Labels.xml') }

Now I see no reasons to put other XML files in the ofbiz.jar file but entityengine.xml which should not be changed when OFBiz runs.
So the only resources which should be in ofbiz.jars are
     cache.properties
     debug.properties
     entityengine.xml
Else please explain why.

Thanks

Jacques


Re: svn commit: r1772879 - in /ofbiz/trunk: ./ framework/base/src/main/java/org/apache/ofbiz/base/container/ framework/start/src/main/java/org/apache/ofbiz/base/start/

Posted by Pierre Smits <pi...@gmail.com>.
I suggest to start new issues in our JIRA.

Best regards

Pierre Smits

ORRTIZ.COM <http://www.orrtiz.com>
OFBiz based solutions & services

OFBiz Extensions Marketplace
http://oem.ofbizci.net/oci-2/

On Thu, Dec 8, 2016 at 11:54 AM, Jacques Le Roux <
jacques.le.roux@les7arts.com> wrote:

> Thanks for the clarification and the fix Taher
>
> I was unsure all the labels files followed the "*Labels.xml" pattern.
> Obviously it does, good!
>
> There are few files which should maybe not be in the ofbiz.jar file, like
>
> ImageProperties.xml
> SeoConfig.xml
>
> But I don't think it's a concern, and if we eventually find it does it
> will be easy to fix that
>
> Jacques
>
>
>
> Le 08/12/2016 à 10:14, Taher Alkhateeb a écrit :
>
>> Hi Jacques, actually I entered a type, that "." before Labels.xml should
>> not be there. So I already excluded all the label files, I'll fix this
>> shortly.
>>
>> As to why include other XML files, it's because the classpath logic
>> changed
>> and we need to define things in Gradle (no longer loaded from OFBiz, which
>> is the correct thing to do. So your old code would not work (you can give
>> it a try). I think we're going overboard with trying to exclude as many
>> things as we can from the jar file given that it is a dynamic thing that
>> changes constantly.
>>
>> On Thu, Dec 8, 2016 at 11:57 AM, Jacques Le Roux <
>> jacques.le.roux@les7arts.com> wrote:
>>
>> Le 06/12/2016 à 13:31, taher@apache.org a écrit :
>>>
>>> Author: taher
>>>> Date: Tue Dec  6 12:31:00 2016
>>>> New Revision: 1772879
>>>>
>>>> URL: http://svn.apache.org/viewvc?rev=1772879&view=rev
>>>> Log:
>>>> Improved: Refactor and simplify the startup sequence in OFBiz
>>>> (OFBIZ-8337)
>>>>
>>>> This is another major commit to the refactoring of the startup sequence
>>>> in
>>>> OFBiz with the following highlighted changes:
>>>>
>>>> [...]
>>>> - Add the DTDs defined in base through Gradle because we removed the
>>>>     NativeLibClassLoader and the classpath buildup logic in
>>>> StartupControlPanel
>>>>
>>>> Thanks: Jacopo Cappellato for reviewing the work
>>>>
>>>> Removed:
>>>>       ofbiz/trunk/framework/start/src/main/java/org/apache/ofbiz/
>>>> base/start/NativeLibClassLoader.java
>>>> Modified:
>>>>       ofbiz/trunk/build.gradle
>>>>
>>>> [...]
>>>
>>> Modified: ofbiz/trunk/build.gradle
>>>
>>>> URL: http://svn.apache.org/viewvc/ofbiz/trunk/build.gradle?rev=17
>>>> 72879&r1=1772878&r2=1772879&view=diff
>>>> ============================================================
>>>> ==================
>>>> --- ofbiz/trunk/build.gradle (original)
>>>> +++ ofbiz/trunk/build.gradle Tue Dec  6 12:31:00 2016
>>>> @@ -204,19 +204,19 @@ sourceSets {
>>>>            resources {
>>>>                srcDirs = getDirectoryInActiveComponents
>>>> IfExists('src/main/java')
>>>>                srcDirs += getDirectoryInActiveComponents
>>>> IfExists('config')
>>>> +            srcDirs += "${rootDir}/framework/base/dtd"
>>>>                exclude excludedJavaSources
>>>>                exclude excludedConfigFiles
>>>>                // Below are necessary for unit tests run by Gradle and
>>>> integration tests
>>>> +            exclude { FileTreeElement elem ->
>>>> elem.getName().contains('.Labels.xml') }
>>>>                exclude { FileTreeElement elem ->
>>>> elem.getName().contains('.properties') &&
>>>>                    !elem.getName().contains('start.properties') &&
>>>>                    !elem.getName().contains('load-data.properties') &&
>>>>                    !elem.getName().contains('debug.properties') &&
>>>>                    !elem.getName().contains('cache.properties') &&
>>>>                    !elem.getName().contains('test.properties') &&
>>>> -                !elem.getName().contains('rmi.properties')}
>>>> -            exclude { FileTreeElement elem ->
>>>> elem.getName().contains('.xml') &&
>>>> -                !elem.getName().contains('entityengine.xml')
>>>> -                }
>>>> +                !elem.getName().contains('rmi.properties')
>>>> +            }
>>>>            }
>>>>        }
>>>>
>>>>
>>>> Hi Taher,
>>>
>>> I'm just begining to review and stumbled upon this. What is the plan of
>>> having all XML files embedded in the ofbiz.jar file?
>>>
>>> Notably the labels files are bad because being static in the ofbiz.jar
>>> file they no longer can be modified.
>>> It seems you took this into account after https://issues.apache.org/jira
>>> /browse/OFBIZ-8321 but wrongly wrote the related line (you would need a
>>> regexp)
>>>
>>> +            exclude { FileTreeElement elem ->
>>> elem.getName().contains('.Labels.xml') }
>>>
>>> Now I see no reasons to put other XML files in the ofbiz.jar file but
>>> entityengine.xml which should not be changed when OFBiz runs.
>>> So the only resources which should be in ofbiz.jars are
>>>      cache.properties
>>>      debug.properties
>>>      entityengine.xml
>>> Else please explain why.
>>>
>>> Thanks
>>>
>>> Jacques
>>>
>>>
>>>
>

Re: svn commit: r1772879 - in /ofbiz/trunk: ./ framework/base/src/main/java/org/apache/ofbiz/base/container/ framework/start/src/main/java/org/apache/ofbiz/base/start/

Posted by Jacques Le Roux <ja...@les7arts.com>.
Thanks for the clarification and the fix Taher

I was unsure all the labels files followed the "*Labels.xml" pattern. Obviously it does, good!

There are few files which should maybe not be in the ofbiz.jar file, like

ImageProperties.xml
SeoConfig.xml

But I don't think it's a concern, and if we eventually find it does it will be easy to fix that

Jacques


Le 08/12/2016 � 10:14, Taher Alkhateeb a �crit :
> Hi Jacques, actually I entered a type, that "." before Labels.xml should
> not be there. So I already excluded all the label files, I'll fix this
> shortly.
>
> As to why include other XML files, it's because the classpath logic changed
> and we need to define things in Gradle (no longer loaded from OFBiz, which
> is the correct thing to do. So your old code would not work (you can give
> it a try). I think we're going overboard with trying to exclude as many
> things as we can from the jar file given that it is a dynamic thing that
> changes constantly.
>
> On Thu, Dec 8, 2016 at 11:57 AM, Jacques Le Roux <
> jacques.le.roux@les7arts.com> wrote:
>
>> Le 06/12/2016 � 13:31, taher@apache.org a �crit :
>>
>>> Author: taher
>>> Date: Tue Dec  6 12:31:00 2016
>>> New Revision: 1772879
>>>
>>> URL: http://svn.apache.org/viewvc?rev=1772879&view=rev
>>> Log:
>>> Improved: Refactor and simplify the startup sequence in OFBiz
>>> (OFBIZ-8337)
>>>
>>> This is another major commit to the refactoring of the startup sequence in
>>> OFBiz with the following highlighted changes:
>>>
>>> [...]
>>> - Add the DTDs defined in base through Gradle because we removed the
>>>     NativeLibClassLoader and the classpath buildup logic in
>>> StartupControlPanel
>>>
>>> Thanks: Jacopo Cappellato for reviewing the work
>>>
>>> Removed:
>>>       ofbiz/trunk/framework/start/src/main/java/org/apache/ofbiz/
>>> base/start/NativeLibClassLoader.java
>>> Modified:
>>>       ofbiz/trunk/build.gradle
>>>
>> [...]
>>
>> Modified: ofbiz/trunk/build.gradle
>>> URL: http://svn.apache.org/viewvc/ofbiz/trunk/build.gradle?rev=17
>>> 72879&r1=1772878&r2=1772879&view=diff
>>> ============================================================
>>> ==================
>>> --- ofbiz/trunk/build.gradle (original)
>>> +++ ofbiz/trunk/build.gradle Tue Dec  6 12:31:00 2016
>>> @@ -204,19 +204,19 @@ sourceSets {
>>>            resources {
>>>                srcDirs = getDirectoryInActiveComponents
>>> IfExists('src/main/java')
>>>                srcDirs += getDirectoryInActiveComponentsIfExists('config')
>>> +            srcDirs += "${rootDir}/framework/base/dtd"
>>>                exclude excludedJavaSources
>>>                exclude excludedConfigFiles
>>>                // Below are necessary for unit tests run by Gradle and
>>> integration tests
>>> +            exclude { FileTreeElement elem ->
>>> elem.getName().contains('.Labels.xml') }
>>>                exclude { FileTreeElement elem ->
>>> elem.getName().contains('.properties') &&
>>>                    !elem.getName().contains('start.properties') &&
>>>                    !elem.getName().contains('load-data.properties') &&
>>>                    !elem.getName().contains('debug.properties') &&
>>>                    !elem.getName().contains('cache.properties') &&
>>>                    !elem.getName().contains('test.properties') &&
>>> -                !elem.getName().contains('rmi.properties')}
>>> -            exclude { FileTreeElement elem ->
>>> elem.getName().contains('.xml') &&
>>> -                !elem.getName().contains('entityengine.xml')
>>> -                }
>>> +                !elem.getName().contains('rmi.properties')
>>> +            }
>>>            }
>>>        }
>>>
>>>
>> Hi Taher,
>>
>> I'm just begining to review and stumbled upon this. What is the plan of
>> having all XML files embedded in the ofbiz.jar file?
>>
>> Notably the labels files are bad because being static in the ofbiz.jar
>> file they no longer can be modified.
>> It seems you took this into account after https://issues.apache.org/jira
>> /browse/OFBIZ-8321 but wrongly wrote the related line (you would need a
>> regexp)
>>
>> +            exclude { FileTreeElement elem ->
>> elem.getName().contains('.Labels.xml') }
>>
>> Now I see no reasons to put other XML files in the ofbiz.jar file but
>> entityengine.xml which should not be changed when OFBiz runs.
>> So the only resources which should be in ofbiz.jars are
>>      cache.properties
>>      debug.properties
>>      entityengine.xml
>> Else please explain why.
>>
>> Thanks
>>
>> Jacques
>>
>>


Re: svn commit: r1772879 - in /ofbiz/trunk: ./ framework/base/src/main/java/org/apache/ofbiz/base/container/ framework/start/src/main/java/org/apache/ofbiz/base/start/

Posted by Taher Alkhateeb <sl...@gmail.com>.
Hi Jacques, actually I entered a type, that "." before Labels.xml should
not be there. So I already excluded all the label files, I'll fix this
shortly.

As to why include other XML files, it's because the classpath logic changed
and we need to define things in Gradle (no longer loaded from OFBiz, which
is the correct thing to do. So your old code would not work (you can give
it a try). I think we're going overboard with trying to exclude as many
things as we can from the jar file given that it is a dynamic thing that
changes constantly.

On Thu, Dec 8, 2016 at 11:57 AM, Jacques Le Roux <
jacques.le.roux@les7arts.com> wrote:

> Le 06/12/2016 à 13:31, taher@apache.org a écrit :
>
>> Author: taher
>> Date: Tue Dec  6 12:31:00 2016
>> New Revision: 1772879
>>
>> URL: http://svn.apache.org/viewvc?rev=1772879&view=rev
>> Log:
>> Improved: Refactor and simplify the startup sequence in OFBiz
>> (OFBIZ-8337)
>>
>> This is another major commit to the refactoring of the startup sequence in
>> OFBiz with the following highlighted changes:
>>
>> [...]
>
>> - Add the DTDs defined in base through Gradle because we removed the
>>    NativeLibClassLoader and the classpath buildup logic in
>> StartupControlPanel
>>
>> Thanks: Jacopo Cappellato for reviewing the work
>>
>> Removed:
>>      ofbiz/trunk/framework/start/src/main/java/org/apache/ofbiz/
>> base/start/NativeLibClassLoader.java
>> Modified:
>>      ofbiz/trunk/build.gradle
>>
> [...]
>
> Modified: ofbiz/trunk/build.gradle
>> URL: http://svn.apache.org/viewvc/ofbiz/trunk/build.gradle?rev=17
>> 72879&r1=1772878&r2=1772879&view=diff
>> ============================================================
>> ==================
>> --- ofbiz/trunk/build.gradle (original)
>> +++ ofbiz/trunk/build.gradle Tue Dec  6 12:31:00 2016
>> @@ -204,19 +204,19 @@ sourceSets {
>>           resources {
>>               srcDirs = getDirectoryInActiveComponents
>> IfExists('src/main/java')
>>               srcDirs += getDirectoryInActiveComponentsIfExists('config')
>> +            srcDirs += "${rootDir}/framework/base/dtd"
>>               exclude excludedJavaSources
>>               exclude excludedConfigFiles
>>               // Below are necessary for unit tests run by Gradle and
>> integration tests
>> +            exclude { FileTreeElement elem ->
>> elem.getName().contains('.Labels.xml') }
>>               exclude { FileTreeElement elem ->
>> elem.getName().contains('.properties') &&
>>                   !elem.getName().contains('start.properties') &&
>>                   !elem.getName().contains('load-data.properties') &&
>>                   !elem.getName().contains('debug.properties') &&
>>                   !elem.getName().contains('cache.properties') &&
>>                   !elem.getName().contains('test.properties') &&
>> -                !elem.getName().contains('rmi.properties')}
>> -            exclude { FileTreeElement elem ->
>> elem.getName().contains('.xml') &&
>> -                !elem.getName().contains('entityengine.xml')
>> -                }
>> +                !elem.getName().contains('rmi.properties')
>> +            }
>>           }
>>       }
>>
>>
> Hi Taher,
>
> I'm just begining to review and stumbled upon this. What is the plan of
> having all XML files embedded in the ofbiz.jar file?
>
> Notably the labels files are bad because being static in the ofbiz.jar
> file they no longer can be modified.
> It seems you took this into account after https://issues.apache.org/jira
> /browse/OFBIZ-8321 but wrongly wrote the related line (you would need a
> regexp)
>
> +            exclude { FileTreeElement elem ->
> elem.getName().contains('.Labels.xml') }
>
> Now I see no reasons to put other XML files in the ofbiz.jar file but
> entityengine.xml which should not be changed when OFBiz runs.
> So the only resources which should be in ofbiz.jars are
>     cache.properties
>     debug.properties
>     entityengine.xml
> Else please explain why.
>
> Thanks
>
> Jacques
>
>