Hi Ramsey,

AFAICT, Wonder doesn’t support loading Properties.* files from inside JAR 
frameworks properly. I guess that is why the property hasn’t been loaded as 
expected. Anyway, it’s been a long time since I last looked into that issue, 
and I may be wrong. I’ve quit trying to use Properties.* files long ago. I’ve 
been using Maven profiles[1] for the same purpose instead.

[1]http://maven.apache.org/guides/introduction/introduction-to-profiles.html

Cheers,

Henrique

> On 29 de jun de 2016, at 18:01, Ramsey Gurley <[email protected]> wrote:
> 
> Some additional followup on this. I just discovered the difference that makes 
> App1 work. ERR2D2W is still on the build path. I forgot to remove that 
> framework when mavenizing App1. App2 had all woframework references removed 
> from .classpath, and it does not work. If I remove ERR2D2W from .classpath on 
> App1, it also returns sslEnabled() false. 
> 
> And the most magical part is it seems just ERR2D2W that can do this. I tried 
> ERXExtensions, ERCoreBL, and an internal framework to no effect.  Which is a 
> bit of a pain, because App2 uses ERDirectToWeb components and adding ERR2D2W 
> to it breaks a few pages. But ssl starts working when I do...
> 
> 
> On Apr 6, 2016, at 5:59 PM, Ramsey Gurley <[email protected]> wrote:
> 
>> Hi all, 
>> 
>> Weird problem. I have two apps. App1 works with SSL direct connect, in 
>> eclipse with maven and without. App2 works with SSL direct connect without 
>> maven. With maven, the SSL direct connect properties I have in 
>> Properties.dev are not located. 
>> 
>> The reason that happens is in ERXApplication _addAdditionalAdaptors, 
>> sslEnabled() is returning false. Properties.dev is the same for both, so I 
>> start digging. Why is it false for App2? It turns out the properties are not 
>> loaded, because in ERXApplication.Loader.mainBundle(), 
>> ClassPath.get(NSBundle.class) turns out to be null and InitMainBundle isn’t 
>> fired.
>> 
>> Well, why is that? Because in NSBundle, at line 315 in a static initializer 
>> block, a call to LoadBundlesFromJars ends up calling NSBundle.addBundle. 
>> This fires a NSBundleDidLoadNotification which triggers the above behavior 
>> before ClassPath is loaded at line 339 in that same static initializer block.
>> 
>> In App1, *there is no observer* for this notification at L315. It makes it 
>> all the way to NSBundle L341 where LoadBundlesFromClassPath is fired, which 
>> then ends up firing the notification to a now existent observer.
>> 
>> What’s really weird is at the last line of ERXApplication.Loader(String[]) 
>> constructor, there’s a addObserver for the NSBundleDidLoadNotification. 
>> Setting breakpoints, I can see that is done before NSBundle is referenced in 
>> both App1 and App2. I see no place where removeObserver is ever called on 
>> the application, so I’m totally puzzled.
>> 
>> Does any of this sound familiar to anyone?
>> 
>> In the non maven branch, I’m just starting to look, but the line numbers are 
>> not lining up. It looks like the old build is finding NSBundle in 
>> JavaFoundation while the Maven build finds it in ERFoundation.
>> 
>> Thanks,
>> 
>> Ramsey
> 
> 
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list      ([email protected])
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/webobjects-dev/hprange%40gmail.com
> 
> This email sent to [email protected]

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to