Re: split install issue with 5.4.3
Re: split install issue with 5.4.3
- Subject: Re: split install issue with 5.4.3
- From: Lachlan Deck <email@hidden>
- Date: Wed, 14 Jan 2009 20:04:58 +1100
Hi Tim,
On 14/01/2009, at 3:33 PM, D Tim Cummings wrote:
On 14/01/2009, at 8:00 AM, Lachlan Deck wrote:
Sure. I'm just suggesting to double check the end of the app script
i.e.,
$ tail YourApp.woa/YourApp
Hi Lachlan
Thanks for your interest. The last lines of the launch script look
good.
Nope :-) It has the WOFrameworksBaseURL argument which therefore
cannot be overridden by any subsequent property setting (whether in
Monitor or your app's properties).
You can take it out OR provide your own property to change the value
in your app's constructor or similar.
There may well be a bug in WO5.4.x (I haven't deployed any 54 apps as
yet) but what you're seeing below is exactly why your attempts to
change the property in Monitor etc are being ignored.
I also tried setting -WOFrameworksBaseURL in JavaMonitor and
WOFrameworksBaseURL in the Properties file, before I worked out it
was an Apple bug in WebObjects 5.4.3
tail WeboTest.woa/WeboTest
#
# Launch the application.
#
echo Launching ${SCRIPT_NAME}.woa ...
echo ${JAVA_EXECUTABLE} ${JAVA_EXECUTABLE_ARGS} -classpath
WOBootstrap.jar com.webobjects._bootstrap.WOBootstrap $
{COMMAND_LINE_ARGS} -WOFrameworksBaseURL /WebObjects/WeboTest.woa/
Frameworks
eval exec ${JAVA_EXECUTABLE} ${JAVA_EXECUTABLE_ARGS} -classpath
WOBootstrap.jar com.webobjects._bootstrap.WOBootstrap $
{COMMAND_LINE_ARGS} -WOFrameworksBaseURL /WebObjects/WeboTest.woa/
Frameworks
Here's the output that used to be true (both from Apple's stuff and
Wonder. e.g., BugTracker)
----------
#
# Launch the application.
#
echo Launching ${SCRIPT_NAME}.woa ...
echo ${JAVA_EXECUTABLE} ${JAVA_EXECUTABLE_ARGS} -classpath
WOBootstrap.jar com.webobjects._bootstrap.WOBootstrap $
{COMMAND_LINE_ARGS}
eval exec ${JAVA_EXECUTABLE} ${JAVA_EXECUTABLE_ARGS} -classpath
WOBootstrap.jar com.webobjects._bootstrap.WOBootstrap $
{COMMAND_LINE_ARGS}
----------
Now I understand the motivation for this - it's a consequence of fully
embedded builds - but it means if you want to change the location in
any way you have to come up with an alternative implementation in code
(triggered from your own properties) to overcome it.
So my own approach has been to do the following:
/**
* @see er.extensions.ERXApplication#finishInitialization()
*/
public void finishInitialization()
{
super.finishInitialization();
<...>
// fix frameworks/app webserver resources url.
LOG.info( "WOApplicationBaseURL:" + applicationBaseURL() );
if
( ERXProperties
.booleanForKeyWithDefault
( "ISHFrameworksBaseURL.relativeToApplicationBaseURL", true ) )
{
String realAppName = NSPathUtilities.lastPathComponent( path() );
NSArray< String > components = new NSArray< String >( new String[] {
realAppName, "Contents", "Frameworks"
} );
String newBaseURL = applicationBaseURL();
for ( Enumeration< String > en = components.objectEnumerator();
en.hasMoreElements(); )
{
newBaseURL =
NSPathUtilities.stringByAppendingPathComponent( newBaseURL,
en.nextElement() );
}
ERXProperties.setStringForKey( newBaseURL, "WOFrameworksBaseURL" );
setFrameworksBaseURL( newBaseURL );
}
LOG.info( "WOFrameworksBaseURL:" + frameworksBaseURL() );
<...>
}
with regards,
--
Lachlan Deck
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden