Re: Objects don't get initialized sometimes

2010-01-25 Thread Gennady Kushnir
It seems like these errors are finally gone! Yippee!!
The last thing I have done was to retire nested editing context and
stay in main one.
In fact, during this operation I've mentioned one improper transfer of
object between these contexts. But I decided to fulfill my plan to be
sure.
Thanks everyone for help!

Ken, thank you too. I have corrected that point with BigDecimal.
Though luckily it was not really critical in fact.

2010/1/14 Chuck Hill ch...@global-village.net:

 On Jan 13, 2010, at 7:36 PM, Ken Anderson wrote:

 One minor point...  weight, which is a BigDecimal, is immutable.  The
 'setScale' method actually returns a new BigDecimal, so this code will not
 do what  is intended.

 This has to be one of my biggest pet peeves...  it is probably the worst
 named method in all of Java land.

 And that means it has some stiff competition!  But that is a truly evil name
 for what that method actually is.



 Ken

 On Jan 13, 2010, at 6:53 PM, Chuck Hill wrote:

             if(weight.scale()  0)
                     weight.setScale(0);
             return weight;


 --
 Chuck Hill             Senior Consultant / VP Development

 Practical WebObjects - for developers who want to increase their overall
 knowledge of WebObjects or who are trying to solve specific problems.
 http://www.global-village.net/products/practical_webobjects








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

This email sent to arch...@mail-archive.com


Re: recognising dead instances

2010-01-25 Thread Christoph Wick
We normally implement a direct action - let's call it checkSystemStatus - 
that performs a fetch to ensure the database operates the way we want it. If 
this fetch succeeds, we just return the string OK. Otherwise we return the 
exception message and the stack trace.

On a second system, we run a bunch of crontab controlled shell scripts (every 
10 min) that perform a wget on that direct action, e.g. 
http://YOURSERVER/cgi-bin/WebObjects/YOURAPP.woa/YOURINSTANCE/wa/checkSystemStatus;.
 If that wget returns something different from OK, we send an email with the 
result.

Very simple, but it works for us.

C.U.CW
-- 
Christoph WickDirector Software Development
STAR Healthcare Management GmbH, Pierstr. 8, 50997 Cologne, Germany
Fon:+49 2236 33665-50 Fax:+49 2236 33665-90 www.starhealthcare.info
---
 Sitz der Gesellschaft: Köln, Amtsgericht Köln, Reg.Nr.: HRB 55306 




On 25.01.2010, at 07:40, Lachlan Deck wrote:

 Hi all,
 
 just polling for ideas / techniques people use in detecting dead instances. 
 Naturally when there's lots of instances running in deployment it can be hard 
 to know if a particular instance has locked up for some reason (and this can 
 sometimes have a flow on affect with the adaptor).
 
 Thanks.
 
 with regards,
 --
 
 Lachlan Deck
 
 
 
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/c.wick%40academy.de
 
 This email sent to c.w...@academy.de


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

This email sent to arch...@mail-archive.com


Updating EO by inserting new EO and archiving the old EO - any suggestions?

2010-01-25 Thread Amiel Montecillo
Hi List,

I am having a dilemma on how to best implement this kind of scenario.

I need the update process of an EO by creating an new EO with the updated
values and archiving the old one. This EO has quiet a few to-many
relationships that needs to be archived as well.

I am thinking of copying the existing values along with the relationship
values to an NSDictionary and tie that to the form. Once the save action
fires, inspect if there are any changed values and create a new EO with the
updated values and archive the old one.

Can anyone suggest a better way of handling this?

Thanks,
Amiel
 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: recognising dead instances

2010-01-25 Thread Simon
This is exactly what we do too. We then use pingdom to keep hitting
the da on specific instance numbers so if it does detect a problem it
tells the exact app and instance that is dead.

On Monday, January 25, 2010, Chuck Hill ch...@global-village.net wrote:
 What I have done is to have a direct action that uses EOF to perform a 
 minimal database transaction to ensure the app is not bogged down or 
 deadlocked in EOF.



 On Jan 24, 2010, at 10:40 PM, Lachlan Deck wrote:


 Hi all,

 just polling for ideas / techniques people use in detecting dead instances. 
 Naturally when there's lots of instances running in deployment it can be hard 
 to know if a particular instance has locked up for some reason (and this can 
 sometimes have a flow on affect with the adaptor).

 Thanks.

 with regards,
 --

 Lachlan Deck



 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net

 This email sent to ch...@global-village.net


 --
 Chuck Hill             Senior Consultant / VP Development

 Practical WebObjects - for developers who want to increase their overall 
 knowledge of WebObjects or who are trying to solve specific problems.
 http://www.global-village.net/products/practical_webobjects







 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/simon%40potwells.co.uk

 This email sent to si...@potwells.co.uk

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

This email sent to arch...@mail-archive.com


Re: recognising dead instances

2010-01-25 Thread Denis Frolov
Hi Lachlan,

Checking direct actions is a great idea. We also do a periodic
netstat -n | grep CLOSE_WAIT, kill the instances which have too many
connections in CLOSE_WAIT state and send alert emails with additional
info (mysql process list, app's intance log tail, instance's dump,
open files via lsof).

Arguably, this is a bit easier to implement and maintain on a server
with lots of different apps. Especially, when you cannot modify the
app itself.

On Mon, Jan 25, 2010 at 9:40 AM, Lachlan Deck lachlan.d...@gmail.com wrote:
 Hi all,

 just polling for ideas / techniques people use in detecting dead instances. 
 Naturally when there's lots of instances running in deployment it can be hard 
 to know if a particular instance has locked up for some reason (and this can 
 sometimes have a flow on affect with the adaptor).

 Thanks.

 with regards,
 --

 Lachlan Deck



  ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/dfrolov%40demax.ru

 This email sent to dfro...@demax.ru

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

This email sent to arch...@mail-archive.com


Re: Funky IE experiences with iFrames from different website

2010-01-25 Thread Johan Henselmans

On 18 jan 2010, at 23:09, Johan Henselmans wrote:

 I have a site that  has part of its content on one website with its own 
 unique DNS-addres, and the Webobjects app resides in an iFrame on another 
 website with another DNS-address. 
 
 The first call from the website fills the frame with a directAction, then the 
 webObjects app in the iFrame is on its own: no funky inter-frame-inter-domain 
 javascript messaging whatsoever. 
 
 That works fine with Firefox, Opera, Chrome, Safari, and Chimera on different 
 platforms. However somebody told me of an obscure webbrowser called something 
 like InTheNet Exploder or what, and guess what? That thing does not work with 
 this setup. 
 
 I first thought that it might have something to do with cross-site scripting, 
 so I turned that security setting off that prevented that from working. That 
 did not help. The odd thing was that the moment the application in the iFrame 
 is continued in a new tab (just right click on a link in the app and go to 
 new tab), the thing worked perfectly. 
 
 On a hunch, I looked for the cookies setting in this IE thingy as I had set 
 the sessionid stored in cookies with setStoresIDsInCookies(true) in the 
 Session constructor.
 You can find these thing under the Advanced Privacy Setting. 
 
 There was a checkbox to always allow session cookies. 
 
 When I turned that thing on so it always allowed for Session Cookies, it was 
 fixed. 
 
 After removing the setStoresIDsInCookies(true) and restoring the default 
 setStoresIDsInCookies(true), everything even worked in the default settings 
 of this Explorer thing. 
 

Oops; meant to mention setStoresIDsInURLs(true) and 
setStoresIDsInCookies(false) as the default option. 

Which lead me to the following experience: 

Anybody aware of any side effects of setting 

setStoresIDsInURLs(true);
setStoresIDsInCookies(true);

in the session constructor?

I tried it, and it did seem to work in Internet Explorer, Firefox and Safari. 

The reason is that I do not want to burden the compliant browsers with not 
being able to traverse the surrounding environment of the iframe the 
reservation app is framed in, and coming back to continue the reservation only 
to discover that their session has gone and they have to start all over again. 
So ABIE (Anything But Internet Explorer) will use the cookies sessionids, and 
Internet Explorer will use the URL sessionids. 

And I do not want to bother about checking for Browsers, as I would have to do 
it at every Direct Action entrance into the app that would lead to a session:



if(request().headerForKey(User-Agent).contains(MSIE)){
mySess().setStoresIDsInCookies(false);
mySess().setStoresIDsInURLs(true);
log.info(NOOO: Internet Explorer);
} else {
mySess().setStoresIDsInCookies(true);
mySess().setStoresIDsInURLs(false);
log.info(Anything goes but Exploder);
}

Unless somebody knows a more elegant solution with three lines of code in one 
central place that would take care of the sessionid probs with Internet Explorer


 Just to make sure that nobody else has to fire up WireShark, remove all his 
 website code to barebones, test on different websites to discover it seems to 
 have something to do with cross-site scripting and waste another day that 
 should have been spent in blissful ignorance. 
 
 Johan Henselmans
 jo...@netsense.nl
 
 
 
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/johan%40netsense.nl
 
 This email sent to jo...@netsense.nl

Johan Henselmans
jo...@netsense.nl



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

This email sent to arch...@mail-archive.com

Error Message in Eclipse

2010-01-25 Thread Frank Gibau
Hey WO-friends,
ich have a problem with Eclipse. Running a WO-Application in Debugmode you 
normally get a very helpful error message. 
In most cases Eclipse show you directly the codeline with the error. Since a 
few weeks i get error-message that a not so helpful:
Its very difficult to find the NullpointerException with such a message.
Has anybody an idea what i could have made wrong (Prefs in Eclipse).
MacOSX System 10.6.2, Eclipse Version: 3.3.2, WO 5.4.1

Thank you

[2010-1-25 13:58:55 MEZ] WorkerThread15 WOExceptionParser - exception 
collecting backtrace data java.lang.NullPointerException - Empty backtrace.
[2010-1-25 13:58:55 MEZ] WorkerThread15 java.lang.NullPointerException
at 
com.webobjects.woextensions.WOExceptionParser._ignoredPackages(WOExceptionParser.java:63)
at 
com.webobjects.woextensions.WOExceptionParser._parseException(WOExceptionParser.java:105)
at 
com.webobjects.woextensions.WOExceptionParser.init(WOExceptionParser.java:44)
at 
com.webobjects.woextensions.WOExceptionPage.setException(WOExceptionPage.java:33)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at 
com.webobjects.woextensions.KeyValueCodingProtectedAccessor.setMethodValue(KeyValueCodingProtectedAccessor.java:34)
at 
com.webobjects.foundation.NSKeyValueCoding$_MethodBinding.setValueInObject(NSKeyValueCoding.java:1150)
at 
com.webobjects.foundation.NSKeyValueCoding$DefaultImplementation.takeValueForKey(NSKeyValueCoding.java:1323)
at 
com.webobjects.appserver.WOComponent.takeValueForKey(WOComponent.java:1698)
at 
com.webobjects.appserver.WOApplication._handleError(WOApplication.java:3074)
at 
com.webobjects.appserver.WOApplication.handleException(WOApplication.java:3226)
at 
com.webobjects.appserver._private.WOComponentRequestHandler._handleRequest(WOComponentRequestHandler.java:389)
at 
com.webobjects.appserver._private.WOComponentRequestHandler.handleRequest(WOComponentRequestHandler.java:442)
at 
com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1678)
at 
com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
at 
com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
at java.lang.Thread.run(Thread.java:637)

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

This email sent to arch...@mail-archive.com

Re: recognising dead instances

2010-01-25 Thread Pascal Robert


Le 10-01-25 à 01:40, Lachlan Deck a écrit :


Hi all,

just polling for ideas / techniques people use in detecting dead  
instances. Naturally when there's lots of instances running in  
deployment it can be hard to know if a particular instance has  
locked up for some reason (and this can sometimes have a flow on  
affect with the adaptor).



We use Nagios with the check_http module (bundled with the default  
Nagios plugins). We check a DirectAction that simply returns OK and  
nothing else, but we will add two more checks : one that will fetch a  
very small dataset with EOF and another one by raw JDBC. By doing one  
check by EOF and one by JDBC, we can see if it's a EOF deadlock or  
not. The most important thing: don't check a page that use sessions!  
If you try to stop an app cleanly but Nagios or other tools keeps  
creating new sessions, you might have a fun time.


As for checking specific instances, you can specific the instance  
number in the URL, but the problem is that the HTTP adaptor will send  
you to another instance if the checked instance is dead. BUT you can  
use Wonder's variant of JavaMonitor to check if a specific instance is  
up or not.


Nagios is my friend! We are currently checking 211 services with it  
(disk space, Oracle listener port, all apps, load, ntp, etc.).



Pascal Robert
prob...@macti.ca

AIM: MacTICanada
Twitter : MacTICanada
LinkedIn : http://www.linkedin.com/in/macti


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

This email sent to arch...@mail-archive.com


Re: Updating EO by inserting new EO and archiving the old EO - any suggestions?

2010-01-25 Thread Jeffrey Simpson
We tried different things but in the end we used a trigger.  If the archive is 
for auditing  I think a database trigger is best.  No need to clutter up you 
application with code to make an audit trail.

Message: 9
Date: Mon, 25 Jan 2010 16:32:23 +0800
From: Amiel Montecillo bosyot...@gmail.commailto:bosyot...@gmail.com
Subject: Updating EO by inserting new EO and archiving the old EO -
   any suggestions?
To: WebObjects-Dev Mailing List List 
webobjects-dev@lists.apple.commailto:webobjects-dev@lists.apple.com
Message-ID:
   
68e14f631001250032r6900c6b8g70cda0e9b1155...@mail.gmail.commailto:68e14f631001250032r6900c6b8g70cda0e9b1155...@mail.gmail.com
Content-Type: text/plain; charset=iso-8859-1

Hi List,

I am having a dilemma on how to best implement this kind of scenario.

I need the update process of an EO by creating an new EO with the updated
values and archiving the old one. This EO has quiet a few to-many
relationships that needs to be archived as well.

I am thinking of copying the existing values along with the relationship
values to an NSDictionary and tie that to the form. Once the save action
fires, inspect if there are any changed values and create a new EO with the
updated values and archive the old one.

Can anyone suggest a better way of handling this?

Thanks,
Amiel


Jeffrey Simpson
Senior Software Engineer
IT
Youth For Understanding USA
Telephone: 240.235.2144
Toll Free: 1.800.424.3691
Fax: 240.235.2174
Website: www.yfu-usa.orghttp://www.yfu-usa.org


[http://yfuusa.org/media/Disclaimer/image001.jpg]http://www.yfu-usa.org   
   [http://yfuusa.org/media/Disclaimer/image002.jpg] 
http://yfuusa.org/host-families/student-profiles.php
Youth For Understanding (YFU) prepares young people for their responsibilities 
and opportunities in a changing, interdependent world.


Join YFU USA on Facebook, Twitter and YouTube
[http://yfuusa.org/media/Disclaimer/facebook_32.png]http://www.facebook.com/YFU.USA.Fan
 [http://yfuusa.org/media/Disclaimer/twitter_32.png] 
http://twitter.com/YFU_USA  
[http://yfuusa.org/media/Disclaimer/youtube_32.png] 
http://www.youtube.com/YFUUSA07

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

This email sent to arch...@mail-archive.com

Sorting Nulls with Oracle

2010-01-25 Thread David Avendasora
Hi all,

Aaron Rosenzweig and I discussed the issue of how to properly implement control 
over how Oracle and EOF sort nulls at this month's WONoVA 
(http://groups.google.com/group/webobjects-nova).

The only time, as far as I know, where it becomes necessary to worry about this 
is when you are using ERXBatchingDisplayGroup and the result set is larger than 
the batch size. Oracle and EOF don't agree on how to do this so you will get 
results that are confusing to users if there are nulls in a column being sorted 
on.

Basically, what we've come down to is that there are 3 different behaviors that 
have to be handled - you should only need to figure out which one you want to 
use and then implement it for your application:

1) Nulls Last - Oracles default - null values will always be LAST in the result 
set, regardless of sort direction (asc, desc).
2) Nulls First - null values will always be FIRST in the result set, regardless 
of sort direction (asc, desc).
3) EOF-like - null values will be sorted as though it were the smallest 
possible value. First when sorted ascending, Last when sorted descending.

To accomplish #1 and #2 you have to create new ComparisonSupport classes in 
EOF, otherwise EOF will resort the result set according to the conflicting 
nulls are the smallest possible value rule.

To accomplish #3 Oracle's default sorting behavior needs to be modified. 
Luckily Oracle allows you simply to add NULLS FIRST or NULLS LAST to the end of 
a ORDER BY statement. For example ORDER BY NAME ASC NULLS FIRST. I have 
modified the EROraclePlugin to add NULLS FIRST to ascending sorts and NULLS 
LAST to descending sorts. Simple.

Well, not so fast. There are two issues that still need addressing:

1) Oracle query results are not deterministic if you are sorting on a column 
with non-unique data in it. Because of this, the same DB record could show up 
in the DisplayGroup in multiple batches and some may never show up. The only 
way around this is to always sort on some guaranteed unique column, or by 
possibly implementing more advanced Oracle functions in the plugin. See here 
for more detail: 
http://www.oracle.com/technology/oramag/oracle/07-jan/o17asktom.html

The existing code in the ERXSQLHelper.OracleSQLHelper limitExpressionForSQ() 
method allows for several different methods of trying to deal with this, but 
none are a complete solution. At this point, our business logic allows us to 
add a unique column to the sort so the existing code works just fine, but 
eventually someone is going to get bit by this, but I'm not sure what to do 
about it other than document the shortcoming in a comment in the source code.

2) One solution does not fit everyone (ie. Aaron and I have different business 
requirements for null sorting), so we need a way of specifying which sorting 
method an application uses. Obviously the Property seems the most logical, but 
since the EROraclePlugin doesn't depend upon ERExtensions, and I'm assuming it 
probably shouldn't, we can't use Wonder's property handling. How should this be 
done? Suggestions?

Dave ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: recognising dead instances

2010-01-25 Thread Ray Kiddy


On Jan 24, 2010, at 10:40 PM, Lachlan Deck wrote:


Hi all,

just polling for ideas / techniques people use in detecting dead  
instances. Naturally when there's lots of instances running in  
deployment it can be hard to know if a particular instance has  
locked up for some reason (and this can sometimes have a flow on  
affect with the adaptor).


Thanks.

with regards,
--

Lachlan Deck



It occurred to me to check the documentation on the Project Wonder  
wiki (http://wiki.objectstyle.org/confluence/display/WONDER/Home) for  
Deployment issues. There is a general deployment issues page, but it  
had not been updated since 2007 and, since it discusses Xcode, it may  
need some updating. I pushed some of pages I found up into the main  
page under the existing header for Deplyment Tools. But lots of  
stuff can still be done to make the doc current.


Just FYI.

- ray
___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: recognising dead instances

2010-01-25 Thread Chuck Hill


On Jan 25, 2010, at 5:35 AM, Pascal Robert wrote:



Le 10-01-25 à 01:40, Lachlan Deck a écrit :


Hi all,

just polling for ideas / techniques people use in detecting dead  
instances. Naturally when there's lots of instances running in  
deployment it can be hard to know if a particular instance has  
locked up for some reason (and this can sometimes have a flow on  
affect with the adaptor).



We use Nagios with the check_http module (bundled with the default  
Nagios plugins). We check a DirectAction that simply returns OK  
and nothing else, but we will add two more checks : one that will  
fetch a very small dataset with EOF and another one by raw JDBC. By  
doing one check by EOF and one by JDBC, we can see if it's a EOF  
deadlock or not. The most important thing: don't check a page that  
use sessions! If you try to stop an app cleanly but Nagios or other  
tools keeps creating new sessions, you might have a fun time.


As for checking specific instances, you can specific the instance  
number in the URL, but the problem is that the HTTP adaptor will  
send you to another instance if the checked instance is dead. BUT  
you can use Wonder's variant of JavaMonitor to check if a specific  
instance is up or not.


Or, more easily, have the instance number returned in the response  
(e.g. 4 OK) so that the script can verify that the result is from  
the correct instance.


Chuck




Nagios is my friend! We are currently checking 211 services with it  
(disk space, Oracle listener port, all apps, load, ntp, etc.).



Pascal Robert
prob...@macti.ca

AIM: MacTICanada
Twitter : MacTICanada
LinkedIn : http://www.linkedin.com/in/macti



--
Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their  
overall knowledge of WebObjects or who are trying to solve specific  
problems.

http://www.global-village.net/products/practical_webobjects







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

This email sent to arch...@mail-archive.com


Re: Sorting Nulls with Oracle

2010-01-25 Thread Chuck Hill


On Jan 25, 2010, at 8:14 AM, David Avendasora wrote:


Hi all,

Aaron Rosenzweig and I discussed the issue of how to properly  
implement control over how Oracle and EOF sort nulls at this month's  
WONoVA (http://groups.google.com/group/webobjects-nova).


The only time, as far as I know, where it becomes necessary to worry  
about this is when you are using ERXBatchingDisplayGroup and the  
result set is larger than the batch size. Oracle and EOF don't agree  
on how to do this so you will get results that are confusing to  
users if there are nulls in a column being sorted on.


Basically, what we've come down to is that there are 3 different  
behaviors that have to be handled - you should only need to figure  
out which one you want to use and then implement it for your  
application:


1) Nulls Last - Oracles default - null values will always be LAST in  
the result set, regardless of sort direction (asc, desc).
2) Nulls First - null values will always be FIRST in the result set,  
regardless of sort direction (asc, desc).
3) EOF-like - null values will be sorted as though it were the  
smallest possible value. First when sorted ascending, Last when  
sorted descending.


To accomplish #1 and #2 you have to create new ComparisonSupport  
classes in EOF, otherwise EOF will resort the result set according  
to the conflicting nulls are the smallest possible value rule.


To accomplish #3 Oracle's default sorting behavior needs to be  
modified. Luckily Oracle allows you simply to add NULLS FIRST or  
NULLS LAST to the end of a ORDER BY statement. For example ORDER BY  
NAME ASC NULLS FIRST. I have modified the EROraclePlugin to add  
NULLS FIRST to ascending sorts and NULLS LAST to descending sorts.  
Simple.


Well, not so fast. There are two issues that still need addressing:

1) Oracle query results are not deterministic if you are sorting on  
a column with non-unique data in it. Because of this, the same DB  
record could show up in the DisplayGroup in multiple batches and  
some may never show up. The only way around this is to always sort  
on some guaranteed unique column, or by possibly implementing more  
advanced Oracle functions in the plugin. See here for more detail: http://www.oracle.com/technology/oramag/oracle/07-jan/o17asktom.html


The existing code in the ERXSQLHelper.OracleSQLHelper  
limitExpressionForSQ() method allows for several different methods  
of trying to deal with this, but none are a complete solution. At  
this point, our business logic allows us to add a unique column to  
the sort so the existing code works just fine, but eventually  
someone is going to get bit by this, but I'm not sure what to do  
about it other than document the shortcoming in a comment in the  
source code.


I would expect that this is true for most/all databases.  And I also  
suspect that this is a common issue when using ERXBatchingDisplayGroup  
and commonly overlooked.  Forcing the last sort value to be the PK  
would address this, I think.  You will probably have to wrestle EOF if  
the PK is not exposed.



Chuck



2) One solution does not fit everyone (ie. Aaron and I have  
different business requirements for null sorting), so we need a way  
of specifying which sorting method an application uses. Obviously  
the Property seems the most logical, but since the EROraclePlugin  
doesn't depend upon ERExtensions, and I'm assuming it probably  
shouldn't, we can't use Wonder's property handling. How should this  
be done? Suggestions?


Dave




--
Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their  
overall knowledge of WebObjects or who are trying to solve specific  
problems.

http://www.global-village.net/products/practical_webobjects







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

This email sent to arch...@mail-archive.com


Re: Updating EO by inserting new EO and archiving the old EO - any suggestions?

2010-01-25 Thread Chuck Hill


On Jan 25, 2010, at 12:32 AM, Amiel Montecillo wrote:


Hi List,

I am having a dilemma on how to best implement this kind of scenario.

I need the update process of an EO by creating an new EO with the  
updated values and archiving the old one. This EO has quiet a few to- 
many relationships that needs to be archived as well.


I am thinking of copying the existing values along with the  
relationship values to an NSDictionary and tie that to the form.  
Once the save action fires, inspect if there are any changed values  
and create a new EO with the updated values and archive the old one.


Can anyone suggest a better way of handling this?


Use the EOCopying code from Practical WebObjects.  If you want to edit  
eo, instead edit eo.copy().  The copy() method should mark the  
existing object as archived.  If the user saves, the existing object  
will be saved marked as archived, and new objects will be created.   
You will need to handle how these objects are referenced in  
relationships so you don't show archived versions.


The GVCGenericObjects framework shows one way of doing this, though it  
is NOT intended for use as an audit trail.

http://www.global-village.net/chill/gvc_frameworks


There have been several good discussions on various audit trail  
implementations on the list.  Search for audit trail.  You need to  
carefully evaluate your requirements and choose your implementation  
accordingly.


Chuck

--
Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their  
overall knowledge of WebObjects or who are trying to solve specific  
problems.

http://www.global-village.net/products/practical_webobjects







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

This email sent to arch...@mail-archive.com


Re: recognising dead instances

2010-01-25 Thread Pascal Robert


Le 10-01-25 à 15:12, Chuck Hill a écrit :



On Jan 25, 2010, at 5:35 AM, Pascal Robert wrote:



Le 10-01-25 à 01:40, Lachlan Deck a écrit :


Hi all,

just polling for ideas / techniques people use in detecting dead  
instances. Naturally when there's lots of instances running in  
deployment it can be hard to know if a particular instance has  
locked up for some reason (and this can sometimes have a flow on  
affect with the adaptor).



We use Nagios with the check_http module (bundled with the default  
Nagios plugins). We check a DirectAction that simply returns OK  
and nothing else, but we will add two more checks : one that will  
fetch a very small dataset with EOF and another one by raw JDBC. By  
doing one check by EOF and one by JDBC, we can see if it's a EOF  
deadlock or not. The most important thing: don't check a page that  
use sessions! If you try to stop an app cleanly but Nagios or other  
tools keeps creating new sessions, you might have a fun time.


As for checking specific instances, you can specific the instance  
number in the URL, but the problem is that the HTTP adaptor will  
send you to another instance if the checked instance is dead. BUT  
you can use Wonder's variant of JavaMonitor to check if a specific  
instance is up or not.


Or, more easily, have the instance number returned in the response  
(e.g. 4 OK) so that the script can verify that the result is from  
the correct instance.


Like the patch in WONDER-450 JIRA ?


Chuck




Nagios is my friend! We are currently checking 211 services with it  
(disk space, Oracle listener port, all apps, load, ntp, etc.).



Pascal Robert
prob...@macti.ca

AIM: MacTICanada
Twitter : MacTICanada
LinkedIn : http://www.linkedin.com/in/macti



--
Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their  
overall knowledge of WebObjects or who are trying to solve specific  
problems.

http://www.global-village.net/products/practical_webobjects











Pascal Robert
prob...@macti.ca

AIM: MacTICanada
Twitter : MacTICanada
LinkedIn : http://www.linkedin.com/in/macti


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

This email sent to arch...@mail-archive.com


Port 443 appending

2010-01-25 Thread Sacha Michel Mallais

Hi list,

Any idea why WO is appending :443 to some URLs?  They seem to appear  
on URLs that WO generates (URLs generated by my code seem to be fine),  
such as on a WO form action method.  The page comes in as https://domain/wo/request/url 
 but the generated form action method looks like https://domain:443/wo/request/url 
...


I've checked the archives, which indicate we need to use IP-based  
virtual hosting, which we already are.


Anyone have other ideas?


sacha


--
Sacha Michel Mallais 800 kg gorilla
Global Village Consulting Inc.   http://www.global-village.net/
PGP Key ID: 7D757B65 AIM: smallais
1. Never tell everything at once.
-- Ken Venturi, Ken Venturi's Two Great Rules of Life



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

This email sent to arch...@mail-archive.com


ertaggable not migrating

2010-01-25 Thread Joe Little
I'm getting this error,

A fatal exception occurred: The connection dictionaries for ERTaggable
and AffiliateEOModel have the same URL and username, but the
connection dictionaries are not equal. Check your connection
dictionaries carefully! This problem is often caused by jdbc2Info not
matching between the two.  One fix for this is to set
ERTaggable.removeJdbc2Info=true and
AffiliateEOModel.removeJdbc2Info=true in your Properties file.
(ERTaggable={password = ; username = postgres; URL =
jdbc:postgresql://localhost/affiliates; }; and
AffiliateEOModel={driver = org.postgresql.Driver; plugin =
PostgresqlPlugIn; password = ; username = postgres; URL =
jdbc:postgresql://localhost/affiliates; })

I've also put those two properties in the Properties file without
help. I've defined my database via Properties as well:

dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates
dbConnectUserGLOBAL=postgres
dbConnectPasswordGLOBAL=

Has someone seen this before and can suggest what the answer was?
 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


How to set jvmOptions for an eclipse project?

2010-01-25 Thread Tim Kliewer

Hi all,

I'm still somewhat new to eclipse, so I need some help...

How do I set the JVMOptions property that is used at launch time in a  
deployed application?


I expect it is in the classpath file, MacOSClassPath.txt in  
particular.  Or is this old school and it is somewhere else now?
So, how do I get it set in that file without editing that file prior  
to deployment?


Thanks,

TNK

Tim Kliewer
WWBI Software Engineering
 Apple, Sacramento Operations
MS: 204-50  Tel: (916) 399-5101
2911 Laguna Blvd Cell: (916) 717-8748
Elk Grove, CA 95758 E-mail: tklie...@apple.com



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

This email sent to arch...@mail-archive.com


Re: ertaggable not migrating

2010-01-25 Thread Mike Schrag
you can see from the two connection dicts what the diff is ... AffiliateEOModel 
explicitly declares a plugin name while ERTaggable does not. Just set a global 
override for plugin and it should fix your problem.

ms

On Jan 25, 2010, at 3:44 PM, Joe Little wrote:

 I'm getting this error,
 
 A fatal exception occurred: The connection dictionaries for ERTaggable
 and AffiliateEOModel have the same URL and username, but the
 connection dictionaries are not equal. Check your connection
 dictionaries carefully! This problem is often caused by jdbc2Info not
 matching between the two.  One fix for this is to set
 ERTaggable.removeJdbc2Info=true and
 AffiliateEOModel.removeJdbc2Info=true in your Properties file.
 (ERTaggable={password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; }; and
 AffiliateEOModel={driver = org.postgresql.Driver; plugin =
 PostgresqlPlugIn; password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; })
 
 I've also put those two properties in the Properties file without
 help. I've defined my database via Properties as well:
 
 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates
 dbConnectUserGLOBAL=postgres
 dbConnectPasswordGLOBAL=
 
 Has someone seen this before and can suggest what the answer was?
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com
 
 This email sent to msch...@mdimension.com


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

This email sent to arch...@mail-archive.com


Re: Port 443 appending

2010-01-25 Thread Sacha Michel Mallais

On Jan 25, 2010, at 12:33 PM, Sacha Michel Mallais wrote:


Hi list,

Any idea why WO is appending :443 to some URLs?  They seem to  
appear on URLs that WO generates (URLs generated by my code seem to  
be fine), such as on a WO form action method.  The page comes in as https://domain/wo/request/url 
 but the generated form action method looks like https://domain:443/wo/request/url 
...


I've checked the archives, which indicate we need to use IP-based  
virtual hosting, which we already are.


Anyone have other ideas?



Sorry, this is under WO 5.4.3 with a recent nightly Wonder.  I'm only  
really using ERXExtensions and Ajax, though.



sacha


--
Sacha Michel Mallais Knowledge Broker
Global Village Consulting Inc.   http://www.global-village.net/
PGP Key ID: 7D757B65 AIM: smallais
-BEGIN GEEK CODE BLOCK-
Version: 3.12
GCS d- s++:++ a C++()$ u...@+++()$ P-(---) L+(-) E++
W++(+++) N+ o? K? w(---) O M++ V-(--) PS+++ PE(-) Y+ PGP++ t+
5+ X+ R tv+ b+ DI+++ D++ G e++ h(+) r* y+(*)
--END GEEK CODE BLOCK--



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

This email sent to arch...@mail-archive.com


Re: How to set jvmOptions for an eclipse project?

2010-01-25 Thread Chuck Hill

Hi Tim,



On Jan 25, 2010, at 12:51 PM, Tim Kliewer wrote:


Hi all,

I'm still somewhat new to eclipse, so I need some help...

How do I set the JVMOptions property that is used at launch time in  
a deployed application?


I expect it is in the classpath file, MacOSClassPath.txt in  
particular.  Or is this old school and it is somewhere else now?
So, how do I get it set in that file without editing that file prior  
to deployment?



The mother lode:
http://wiki.objectstyle.org/confluence/display/WOL/WOApplication

Specifically:

jvmOptions  String for the JVM options in the classpath.



In your build.properties add a line like:
jvm.options=foo

Edit the build.xml file, and change this:
woapplication name=${build.app.name} etc etc etc

to:

woapplication name=${build.app.name} jvmOptions=${jvm.options} etc  
etc etc



Chuck

--
Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their  
overall knowledge of WebObjects or who are trying to solve specific  
problems.

http://www.global-village.net/products/practical_webobjects







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

This email sent to arch...@mail-archive.com


Re: Port 443 appending

2010-01-25 Thread Mike Schrag
If you're extending ERXApp, I seem to recall that we fix this ourselves the 
hard way, though I ran into this in 5.3 as well -- that you'd randomly get a 
port stuck on when you didn't want it (80 or 443).

In ERXRequest:


@Override
public void _completeURLPrefix(StringBuffer stringbuffer, boolean 
secure, int port) {
if (_secureDisabled) {
secure = false;
}

String serverName = _serverName();
String portStr;
if (port == 0) {
String sslPort = 
String.valueOf(ERXApplication.erxApplication().sslPort());
portStr = secure ? sslPort : _serverPort();
} else {
portStr = WOShared.unsignedIntString(port);
}
if (secure) {
stringbuffer.append(https://;);
} else {
stringbuffer.append(http://;);
}
stringbuffer.append(serverName);
if(portStr != null  ((secure  !443.equals(portStr)) || 
(!secure  !80.equals(portStr {
stringbuffer.append(':');
stringbuffer = stringbuffer.append(portStr);
}
}

On Jan 25, 2010, at 3:56 PM, Sacha Michel Mallais wrote:

 On Jan 25, 2010, at 12:33 PM, Sacha Michel Mallais wrote:
 
 Hi list,
 
 Any idea why WO is appending :443 to some URLs?  They seem to appear on 
 URLs that WO generates (URLs generated by my code seem to be fine), such as 
 on a WO form action method.  The page comes in as 
 https://domain/wo/request/url but the generated form action method looks 
 like https://domain:443/wo/request/url...
 
 I've checked the archives, which indicate we need to use IP-based virtual 
 hosting, which we already are.
 
 Anyone have other ideas?
 
 
 Sorry, this is under WO 5.4.3 with a recent nightly Wonder.  I'm only really 
 using ERXExtensions and Ajax, though.
 
 
 sacha
 
 
 -- 
 Sacha Michel Mallais Knowledge Broker
 Global Village Consulting Inc.   http://www.global-village.net/
 PGP Key ID: 7D757B65 AIM: smallais
 -BEGIN GEEK CODE BLOCK-
 Version: 3.12
 GCS d- s++:++ a C++()$ u...@+++()$ P-(---) L+(-) E++
 W++(+++) N+ o? K? w(---) O M++ V-(--) PS+++ PE(-) Y+ PGP++ t+
 5+ X+ R tv+ b+ DI+++ D++ G e++ h(+) r* y+(*)
 --END GEEK CODE BLOCK--
 
 
 
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com
 
 This email sent to msch...@mdimension.com

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

This email sent to arch...@mail-archive.com

Re: How to set jvmOptions for an eclipse project?

2010-01-25 Thread Tim Kliewer

I think I called for help too fast...

I found that my woapplication name=${build.app.name} ... segment  
in the build.xml file did not have a jvmOptions key-value pair from a  
default Project Wonder Application...


It looks like I have a lot of build.xml and build.properties files to  
update...


Can someone please confirm if I am correct here?

TNK

On Jan 25, 2010, at 12:51 PM, Tim Kliewer wrote:


Hi all,

I'm still somewhat new to eclipse, so I need some help...

How do I set the JVMOptions property that is used at launch time in  
a deployed application?


I expect it is in the classpath file, MacOSClassPath.txt in  
particular.  Or is this old school and it is somewhere else now?
So, how do I get it set in that file without editing that file prior  
to deployment?


Thanks,

TNK

Tim Kliewer
WWBI Software Engineering
 Apple, Sacramento Operations
MS: 204-50  Tel: (916) 399-5101
2911 Laguna Blvd Cell: (916) 717-8748
Elk Grove, CA 95758 E-mail: tklie...@apple.com






Tim Kliewer
WWBI Software Engineering
 Apple, Sacramento Operations
MS: 204-50  Tel: (916) 399-5101
2911 Laguna Blvd Cell: (916) 717-8748
Elk Grove, CA 95758 E-mail: tklie...@apple.com



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

This email sent to arch...@mail-archive.com

Re: recognising dead instances

2010-01-25 Thread Chuck Hill


On Jan 25, 2010, at 12:31 PM, Pascal Robert wrote:



Le 10-01-25 à 15:12, Chuck Hill a écrit :



On Jan 25, 2010, at 5:35 AM, Pascal Robert wrote:



Le 10-01-25 à 01:40, Lachlan Deck a écrit :


Hi all,

just polling for ideas / techniques people use in detecting dead  
instances. Naturally when there's lots of instances running in  
deployment it can be hard to know if a particular instance has  
locked up for some reason (and this can sometimes have a flow on  
affect with the adaptor).



We use Nagios with the check_http module (bundled with the default  
Nagios plugins). We check a DirectAction that simply returns OK  
and nothing else, but we will add two more checks : one that will  
fetch a very small dataset with EOF and another one by raw JDBC.  
By doing one check by EOF and one by JDBC, we can see if it's a  
EOF deadlock or not. The most important thing: don't check a page  
that use sessions! If you try to stop an app cleanly but Nagios or  
other tools keeps creating new sessions, you might have a fun time.


As for checking specific instances, you can specific the instance  
number in the URL, but the problem is that the HTTP adaptor will  
send you to another instance if the checked instance is dead. BUT  
you can use Wonder's variant of JavaMonitor to check if a specific  
instance is up or not.


Or, more easily, have the instance number returned in the response  
(e.g. 4 OK) so that the script can verify that the result is from  
the correct instance.


Like the patch in WONDER-450 JIRA ?


No, that is something different.  The monitor actions are interesting,  
but harder to use from a shell script.



Chuck

--
Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their  
overall knowledge of WebObjects or who are trying to solve specific  
problems.

http://www.global-village.net/products/practical_webobjects







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

This email sent to arch...@mail-archive.com


Re: How to set jvmOptions for an eclipse project?

2010-01-25 Thread Tim Kliewer

Thanks Chuck!

I figured it out minutes after I sent my plea for help ... and I was  
using that page for guidance.


My only problem with that page was that there were some connections  
implied but not spelled out. I will try to add a comment that would  
make it clearer to a caveman like me!


TNK

On Jan 25, 2010, at 1:07 PM, Chuck Hill wrote:


Hi Tim,



On Jan 25, 2010, at 12:51 PM, Tim Kliewer wrote:


Hi all,

I'm still somewhat new to eclipse, so I need some help...

How do I set the JVMOptions property that is used at launch time in  
a deployed application?


I expect it is in the classpath file, MacOSClassPath.txt in  
particular.  Or is this old school and it is somewhere else now?
So, how do I get it set in that file without editing that file  
prior to deployment?



The mother lode:
http://wiki.objectstyle.org/confluence/display/WOL/WOApplication

Specifically:

jvmOptions  String for the JVM options in the classpath.



In your build.properties add a line like:
jvm.options=foo

Edit the build.xml file, and change this:
woapplication name=${build.app.name} etc etc etc

to:

woapplication name=${build.app.name} jvmOptions=${jvm.options}  
etc etc etc



Chuck

--
Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their  
overall knowledge of WebObjects or who are trying to solve specific  
problems.

http://www.global-village.net/products/practical_webobjects










Tim Kliewer
WWBI Software Engineering
 Apple, Sacramento Operations
MS: 204-50  Tel: (916) 399-5101
2911 Laguna Blvd Cell: (916) 717-8748
Elk Grove, CA 95758 E-mail: tklie...@apple.com



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

This email sent to arch...@mail-archive.com


Re: ertaggable not migrating

2010-01-25 Thread Joe Little
doh.. didn't see that when checking the two.

On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com wrote:
 you can see from the two connection dicts what the diff is ... 
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does not. 
 Just set a global override for plugin and it should fix your problem.

 ms

 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:

 I'm getting this error,

 A fatal exception occurred: The connection dictionaries for ERTaggable
 and AffiliateEOModel have the same URL and username, but the
 connection dictionaries are not equal. Check your connection
 dictionaries carefully! This problem is often caused by jdbc2Info not
 matching between the two.  One fix for this is to set
 ERTaggable.removeJdbc2Info=true and
 AffiliateEOModel.removeJdbc2Info=true in your Properties file.
 (ERTaggable={password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; }; and
 AffiliateEOModel={driver = org.postgresql.Driver; plugin =
 PostgresqlPlugIn; password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; })

 I've also put those two properties in the Properties file without
 help. I've defined my database via Properties as well:

 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates
 dbConnectUserGLOBAL=postgres
 dbConnectPasswordGLOBAL=

 Has someone seen this before and can suggest what the answer was?
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com

 This email sent to msch...@mdimension.com



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

This email sent to arch...@mail-archive.com


Re: ertaggable not migrating

2010-01-25 Thread Mike Schrag
i honestly don't know why we don't just tell you this outright rather than make 
you visually diff the two ... seems like something these new-fangled 
computational machines would be good at. feel free to log a jira on that.

ms

On Jan 25, 2010, at 4:16 PM, Joe Little wrote:

 doh.. didn't see that when checking the two.
 
 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com wrote:
 you can see from the two connection dicts what the diff is ... 
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does 
 not. Just set a global override for plugin and it should fix your problem.
 
 ms
 
 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:
 
 I'm getting this error,
 
 A fatal exception occurred: The connection dictionaries for ERTaggable
 and AffiliateEOModel have the same URL and username, but the
 connection dictionaries are not equal. Check your connection
 dictionaries carefully! This problem is often caused by jdbc2Info not
 matching between the two.  One fix for this is to set
 ERTaggable.removeJdbc2Info=true and
 AffiliateEOModel.removeJdbc2Info=true in your Properties file.
 (ERTaggable={password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; }; and
 AffiliateEOModel={driver = org.postgresql.Driver; plugin =
 PostgresqlPlugIn; password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; })
 
 I've also put those two properties in the Properties file without
 help. I've defined my database via Properties as well:
 
 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates
 dbConnectUserGLOBAL=postgres
 dbConnectPasswordGLOBAL=
 
 Has someone seen this before and can suggest what the answer was?
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com
 
 This email sent to msch...@mdimension.com
 
 
 


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

This email sent to arch...@mail-archive.com


Re: ertaggable not migrating

2010-01-25 Thread Joe Little
I'll do that. Also ran into trouble with ERAttachment. Doesn't it
auto-migrate in the table creation?

Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
ERROR: relation erattachment does not exist

If you use Project Wonder migrations and migrateOnStartup, then the
ERAttachment tables will be automatically created for you on the first
launch. If you do not, then you can either manually execute the
.migration SQL scripts that are in the Resources folder (execute them
in numeric order), or you can open the EOModel and generate SQL for
your particular database.

I definitely have the migrations running as that's how I'm building my
DB and adding ERTaggable.

On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com wrote:
 i honestly don't know why we don't just tell you this outright rather than 
 make you visually diff the two ... seems like something these new-fangled 
 computational machines would be good at. feel free to log a jira on that.

 ms

 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:

 doh.. didn't see that when checking the two.

 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com wrote:
 you can see from the two connection dicts what the diff is ... 
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does 
 not. Just set a global override for plugin and it should fix your problem.

 ms

 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:

 I'm getting this error,

 A fatal exception occurred: The connection dictionaries for ERTaggable
 and AffiliateEOModel have the same URL and username, but the
 connection dictionaries are not equal. Check your connection
 dictionaries carefully! This problem is often caused by jdbc2Info not
 matching between the two.  One fix for this is to set
 ERTaggable.removeJdbc2Info=true and
 AffiliateEOModel.removeJdbc2Info=true in your Properties file.
 (ERTaggable={password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; }; and
 AffiliateEOModel={driver = org.postgresql.Driver; plugin =
 PostgresqlPlugIn; password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; })

 I've also put those two properties in the Properties file without
 help. I've defined my database via Properties as well:

 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates
 dbConnectUserGLOBAL=postgres
 dbConnectPasswordGLOBAL=

 Has someone seen this before and can suggest what the answer was?
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com

 This email sent to msch...@mdimension.com






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

This email sent to arch...@mail-archive.com


Re: ertaggable not migrating

2010-01-25 Thread Mike Schrag
hmmm ... out of curiosity, in your ERAttachmentMigration subclass, if you add 
the method:

  
  @Override
  public NSArrayERXModelVersion modelDependencies() {
return new NSArrayERXModelVersion(new ERXModelVersion(ERAttachment, 
1));
  }


does that fix it? we should probably put that in there.

ms

On Jan 25, 2010, at 4:34 PM, Joe Little wrote:

 I'll do that. Also ran into trouble with ERAttachment. Doesn't it
 auto-migrate in the table creation?
 
 Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
 FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
 REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
 ERROR: relation erattachment does not exist
 
 If you use Project Wonder migrations and migrateOnStartup, then the
 ERAttachment tables will be automatically created for you on the first
 launch. If you do not, then you can either manually execute the
 .migration SQL scripts that are in the Resources folder (execute them
 in numeric order), or you can open the EOModel and generate SQL for
 your particular database.
 
 I definitely have the migrations running as that's how I'm building my
 DB and adding ERTaggable.
 
 On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com wrote:
 i honestly don't know why we don't just tell you this outright rather than 
 make you visually diff the two ... seems like something these new-fangled 
 computational machines would be good at. feel free to log a jira on that.
 
 ms
 
 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:
 
 doh.. didn't see that when checking the two.
 
 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com 
 wrote:
 you can see from the two connection dicts what the diff is ... 
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does 
 not. Just set a global override for plugin and it should fix your problem.
 
 ms
 
 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:
 
 I'm getting this error,
 
 A fatal exception occurred: The connection dictionaries for ERTaggable
 and AffiliateEOModel have the same URL and username, but the
 connection dictionaries are not equal. Check your connection
 dictionaries carefully! This problem is often caused by jdbc2Info not
 matching between the two.  One fix for this is to set
 ERTaggable.removeJdbc2Info=true and
 AffiliateEOModel.removeJdbc2Info=true in your Properties file.
 (ERTaggable={password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; }; and
 AffiliateEOModel={driver = org.postgresql.Driver; plugin =
 PostgresqlPlugIn; password = ; username = postgres; URL =
 jdbc:postgresql://localhost/affiliates; })
 
 I've also put those two properties in the Properties file without
 help. I've defined my database via Properties as well:
 
 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates
 dbConnectUserGLOBAL=postgres
 dbConnectPasswordGLOBAL=
 
 Has someone seen this before and can suggest what the answer was?
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com
 
 This email sent to msch...@mdimension.com
 
 
 
 
 
 

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

This email sent to arch...@mail-archive.com

Re: Port 443 appending

2010-01-25 Thread Sacha Michel Mallais

On Jan 25, 2010, at 1:08 PM, Mike Schrag wrote:

If you're extending ERXApp, I seem to recall that we fix this  
ourselves the hard way, though I ran into this in 5.3 as well --  
that you'd randomly get a port stuck on when you didn't want it (80  
or 443).


In ERXRequest:



Thanks, Mike, I think that will work... we're using ERXAjaxApp, which  
apparently doesn't use ERXRequest.


Anyone know of any gotchas if I just override _createRequest in my  
Application and return an ERXRequest (like ERXApplication does)? Does  
ERXRequest play well with ERXAjaxApplication?



sacha


--
Sacha Michel Mallais Big Kahuna
Global Village Consulting Inc.   http://www.global-village.net/
PGP Key ID: 7D757B65 AIM: smallais
Blessed is the WO-geek, for he shall inherit from NSEarth (Jobs 3:14)


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

This email sent to arch...@mail-archive.com

Re: ertaggable not migrating

2010-01-25 Thread Joe Little
So, I need to define a migration explicitly for ERAttachment,
including setting an ERAttachment.MigrationClassPrefix=blah.foo.bar?

On Mon, Jan 25, 2010 at 1:50 PM, Mike Schrag msch...@mdimension.com wrote:
 hmmm ... out of curiosity, in your ERAttachmentMigration subclass, if you
 add the method:



   @Override
   public NSArrayERXModelVersion modelDependencies() {
   return new NSArrayERXModelVersion(new ERXModelVersion(ERAttachment,
 1));
   }

 does that fix it? we should probably put that in there.
 ms
 On Jan 25, 2010, at 4:34 PM, Joe Little wrote:

 I'll do that. Also ran into trouble with ERAttachment. Doesn't it
 auto-migrate in the table creation?

 Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
 FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
 REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
 ERROR: relation erattachment does not exist

 If you use Project Wonder migrations and migrateOnStartup, then the
 ERAttachment tables will be automatically created for you on the first
 launch. If you do not, then you can either manually execute the
 .migration SQL scripts that are in the Resources folder (execute them
 in numeric order), or you can open the EOModel and generate SQL for
 your particular database.

 I definitely have the migrations running as that's how I'm building my
 DB and adding ERTaggable.

 On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com wrote:

 i honestly don't know why we don't just tell you this outright rather than
 make you visually diff the two ... seems like something these new-fangled
 computational machines would be good at. feel free to log a jira on that.

 ms

 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:

 doh.. didn't see that when checking the two.

 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com
 wrote:

 you can see from the two connection dicts what the diff is ...
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does
 not. Just set a global override for plugin and it should fix your problem.

 ms

 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:

 I'm getting this error,

 A fatal exception occurred: The connection dictionaries for ERTaggable

 and AffiliateEOModel have the same URL and username, but the

 connection dictionaries are not equal. Check your connection

 dictionaries carefully! This problem is often caused by jdbc2Info not

 matching between the two.  One fix for this is to set

 ERTaggable.removeJdbc2Info=true and

 AffiliateEOModel.removeJdbc2Info=true in your Properties file.

 (ERTaggable={password = ; username = postgres; URL =

 jdbc:postgresql://localhost/affiliates; }; and

 AffiliateEOModel={driver = org.postgresql.Driver; plugin =

 PostgresqlPlugIn; password = ; username = postgres; URL =

 jdbc:postgresql://localhost/affiliates; })

 I've also put those two properties in the Properties file without

 help. I've defined my database via Properties as well:

 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates

 dbConnectUserGLOBAL=postgres

 dbConnectPasswordGLOBAL=

 Has someone seen this before and can suggest what the answer was?

 ___

 Do not post admin requests to the list. They will be ignored.

 Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)

 Help/Unsubscribe/Update your Subscription:

 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com

 This email sent to msch...@mdimension.com








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

This email sent to arch...@mail-archive.com


Re: Port 443 appending

2010-01-25 Thread Mike Schrag
Once you stray outside of ERXAjax*, you definitely take on dependencies ... I 
just committed a fix that removes two presumptions that you are inside of an 
ERXApplication. I would make sure to run your test cases if you switch over.

ms

On Jan 25, 2010, at 4:51 PM, Sacha Michel Mallais wrote:

 On Jan 25, 2010, at 1:08 PM, Mike Schrag wrote:
 
 If you're extending ERXApp, I seem to recall that we fix this ourselves the 
 hard way, though I ran into this in 5.3 as well -- that you'd randomly get 
 a port stuck on when you didn't want it (80 or 443).
 
 In ERXRequest:
 
 
 Thanks, Mike, I think that will work... we're using ERXAjaxApp, which 
 apparently doesn't use ERXRequest.
 
 Anyone know of any gotchas if I just override _createRequest in my 
 Application and return an ERXRequest (like ERXApplication does)? Does 
 ERXRequest play well with ERXAjaxApplication?
 
 
 sacha
 
 
 -- 
 Sacha Michel Mallais Big Kahuna
 Global Village Consulting Inc.   http://www.global-village.net/
 PGP Key ID: 7D757B65 AIM: smallais
 Blessed is the WO-geek, for he shall inherit from NSEarth (Jobs 3:14)
 
 

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

This email sent to arch...@mail-archive.com

Re: ertaggable not migrating

2010-01-25 Thread Joe Little
Never mind my last comment. Yes, I put the below modelDependencies
value in my primary migration, and it works now.

On Mon, Jan 25, 2010 at 1:50 PM, Mike Schrag msch...@mdimension.com wrote:
 hmmm ... out of curiosity, in your ERAttachmentMigration subclass, if you
 add the method:



   @Override
   public NSArrayERXModelVersion modelDependencies() {
   return new NSArrayERXModelVersion(new ERXModelVersion(ERAttachment,
 1));
   }

 does that fix it? we should probably put that in there.
 ms
 On Jan 25, 2010, at 4:34 PM, Joe Little wrote:

 I'll do that. Also ran into trouble with ERAttachment. Doesn't it
 auto-migrate in the table creation?

 Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
 FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
 REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
 ERROR: relation erattachment does not exist

 If you use Project Wonder migrations and migrateOnStartup, then the
 ERAttachment tables will be automatically created for you on the first
 launch. If you do not, then you can either manually execute the
 .migration SQL scripts that are in the Resources folder (execute them
 in numeric order), or you can open the EOModel and generate SQL for
 your particular database.

 I definitely have the migrations running as that's how I'm building my
 DB and adding ERTaggable.

 On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com wrote:

 i honestly don't know why we don't just tell you this outright rather than
 make you visually diff the two ... seems like something these new-fangled
 computational machines would be good at. feel free to log a jira on that.

 ms

 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:

 doh.. didn't see that when checking the two.

 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com
 wrote:

 you can see from the two connection dicts what the diff is ...
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does
 not. Just set a global override for plugin and it should fix your problem.

 ms

 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:

 I'm getting this error,

 A fatal exception occurred: The connection dictionaries for ERTaggable

 and AffiliateEOModel have the same URL and username, but the

 connection dictionaries are not equal. Check your connection

 dictionaries carefully! This problem is often caused by jdbc2Info not

 matching between the two.  One fix for this is to set

 ERTaggable.removeJdbc2Info=true and

 AffiliateEOModel.removeJdbc2Info=true in your Properties file.

 (ERTaggable={password = ; username = postgres; URL =

 jdbc:postgresql://localhost/affiliates; }; and

 AffiliateEOModel={driver = org.postgresql.Driver; plugin =

 PostgresqlPlugIn; password = ; username = postgres; URL =

 jdbc:postgresql://localhost/affiliates; })

 I've also put those two properties in the Properties file without

 help. I've defined my database via Properties as well:

 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates

 dbConnectUserGLOBAL=postgres

 dbConnectPasswordGLOBAL=

 Has someone seen this before and can suggest what the answer was?

 ___

 Do not post admin requests to the list. They will be ignored.

 Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)

 Help/Unsubscribe/Update your Subscription:

 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com

 This email sent to msch...@mdimension.com








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

This email sent to arch...@mail-archive.com


Re: ertaggable not migrating

2010-01-25 Thread Mike Schrag
no .. i just assumed you had an ERAttachmentMigration subclass in your app that 
was adding the foreign key.  if you just generated a migration from Entity 
Modeler directly, then you won't need that subclass (because the foreign key 
will be a part of your existing migration class). the way things are SUPPOSED 
to work is that it builds a graph of relationships to figure out what the model 
dependencies are. you should see on your console that it attempts to run a 
migration on ERAttachment prior to your entity that depends on ERAttachment. In 
your migration class, try putting that explicit model dependencies declaration 
and see if that fixes it.

ms

On Jan 25, 2010, at 4:54 PM, Joe Little wrote:

 So, I need to define a migration explicitly for ERAttachment,
 including setting an ERAttachment.MigrationClassPrefix=blah.foo.bar?
 
 On Mon, Jan 25, 2010 at 1:50 PM, Mike Schrag msch...@mdimension.com wrote:
 hmmm ... out of curiosity, in your ERAttachmentMigration subclass, if you
 add the method:
 
 
 
   @Override
   public NSArrayERXModelVersion modelDependencies() {
   return new NSArrayERXModelVersion(new ERXModelVersion(ERAttachment,
 1));
   }
 
 does that fix it? we should probably put that in there.
 ms
 On Jan 25, 2010, at 4:34 PM, Joe Little wrote:
 
 I'll do that. Also ran into trouble with ERAttachment. Doesn't it
 auto-migrate in the table creation?
 
 Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
 FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
 REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
 ERROR: relation erattachment does not exist
 
 If you use Project Wonder migrations and migrateOnStartup, then the
 ERAttachment tables will be automatically created for you on the first
 launch. If you do not, then you can either manually execute the
 .migration SQL scripts that are in the Resources folder (execute them
 in numeric order), or you can open the EOModel and generate SQL for
 your particular database.
 
 I definitely have the migrations running as that's how I'm building my
 DB and adding ERTaggable.
 
 On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com wrote:
 
 i honestly don't know why we don't just tell you this outright rather than
 make you visually diff the two ... seems like something these new-fangled
 computational machines would be good at. feel free to log a jira on that.
 
 ms
 
 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:
 
 doh.. didn't see that when checking the two.
 
 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com
 wrote:
 
 you can see from the two connection dicts what the diff is ...
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does
 not. Just set a global override for plugin and it should fix your problem.
 
 ms
 
 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:
 
 I'm getting this error,
 
 A fatal exception occurred: The connection dictionaries for ERTaggable
 
 and AffiliateEOModel have the same URL and username, but the
 
 connection dictionaries are not equal. Check your connection
 
 dictionaries carefully! This problem is often caused by jdbc2Info not
 
 matching between the two.  One fix for this is to set
 
 ERTaggable.removeJdbc2Info=true and
 
 AffiliateEOModel.removeJdbc2Info=true in your Properties file.
 
 (ERTaggable={password = ; username = postgres; URL =
 
 jdbc:postgresql://localhost/affiliates; }; and
 
 AffiliateEOModel={driver = org.postgresql.Driver; plugin =
 
 PostgresqlPlugIn; password = ; username = postgres; URL =
 
 jdbc:postgresql://localhost/affiliates; })
 
 I've also put those two properties in the Properties file without
 
 help. I've defined my database via Properties as well:
 
 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates
 
 dbConnectUserGLOBAL=postgres
 
 dbConnectPasswordGLOBAL=
 
 Has someone seen this before and can suggest what the answer was?
 
 ___
 
 Do not post admin requests to the list. They will be ignored.
 
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 
 Help/Unsubscribe/Update your Subscription:
 
 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com
 
 This email sent to msch...@mdimension.com
 
 
 
 
 
 
 
 


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

This email sent to arch...@mail-archive.com


Re: ertaggable not migrating

2010-01-25 Thread Mike Schrag
sketchy.

In your model, it has a to-one relationship to ERAttachment, right?  it should 
have figured that out automagically and not even required ERAttachment declared 
explicitly, though it's generally a good thing to do anyway, since an explicit 
declaration defines the version #.

On Jan 25, 2010, at 4:56 PM, Joe Little wrote:

 Never mind my last comment. Yes, I put the below modelDependencies
 value in my primary migration, and it works now.
 
 On Mon, Jan 25, 2010 at 1:50 PM, Mike Schrag msch...@mdimension.com wrote:
 hmmm ... out of curiosity, in your ERAttachmentMigration subclass, if you
 add the method:
 
 
 
   @Override
   public NSArrayERXModelVersion modelDependencies() {
   return new NSArrayERXModelVersion(new ERXModelVersion(ERAttachment,
 1));
   }
 
 does that fix it? we should probably put that in there.
 ms
 On Jan 25, 2010, at 4:34 PM, Joe Little wrote:
 
 I'll do that. Also ran into trouble with ERAttachment. Doesn't it
 auto-migrate in the table creation?
 
 Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
 FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
 REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
 ERROR: relation erattachment does not exist
 
 If you use Project Wonder migrations and migrateOnStartup, then the
 ERAttachment tables will be automatically created for you on the first
 launch. If you do not, then you can either manually execute the
 .migration SQL scripts that are in the Resources folder (execute them
 in numeric order), or you can open the EOModel and generate SQL for
 your particular database.
 
 I definitely have the migrations running as that's how I'm building my
 DB and adding ERTaggable.
 
 On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com wrote:
 
 i honestly don't know why we don't just tell you this outright rather than
 make you visually diff the two ... seems like something these new-fangled
 computational machines would be good at. feel free to log a jira on that.
 
 ms
 
 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:
 
 doh.. didn't see that when checking the two.
 
 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com
 wrote:
 
 you can see from the two connection dicts what the diff is ...
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does
 not. Just set a global override for plugin and it should fix your problem.
 
 ms
 
 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:
 
 I'm getting this error,
 
 A fatal exception occurred: The connection dictionaries for ERTaggable
 
 and AffiliateEOModel have the same URL and username, but the
 
 connection dictionaries are not equal. Check your connection
 
 dictionaries carefully! This problem is often caused by jdbc2Info not
 
 matching between the two.  One fix for this is to set
 
 ERTaggable.removeJdbc2Info=true and
 
 AffiliateEOModel.removeJdbc2Info=true in your Properties file.
 
 (ERTaggable={password = ; username = postgres; URL =
 
 jdbc:postgresql://localhost/affiliates; }; and
 
 AffiliateEOModel={driver = org.postgresql.Driver; plugin =
 
 PostgresqlPlugIn; password = ; username = postgres; URL =
 
 jdbc:postgresql://localhost/affiliates; })
 
 I've also put those two properties in the Properties file without
 
 help. I've defined my database via Properties as well:
 
 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates
 
 dbConnectUserGLOBAL=postgres
 
 dbConnectPasswordGLOBAL=
 
 Has someone seen this before and can suggest what the answer was?
 
 ___
 
 Do not post admin requests to the list. They will be ignored.
 
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 
 Help/Unsubscribe/Update your Subscription:
 
 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com
 
 This email sent to msch...@mdimension.com
 
 
 
 
 
 
 
 


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

This email sent to arch...@mail-archive.com


Re: Sorting Nulls with Oracle

2010-01-25 Thread arosenzweig
Hi All,

The main question Dave was asking was how to give back to the community 
his useful fix for a very important piece of this problem.

I believe the answer is to just use NSProperties. That way the option can 
be given in the Properties file, from the command line, or even from your 
home directory. Here's the API:

http://developer.apple.com/legacy/mac/library/documentation/MacOSXServer/Reference/WO54_Reference/com/webobjects/foundation/NSProperties.html

All the other notes from Dave and Chuck are valuable and something you'll 
need to address in your own applications. Especially the Ask Tom URL 
that Dave gave. I'll cut and paste it again for completeness:

http://www.oracle.com/technology/oramag/oracle/07-jan/o17asktom.html

Also this other Ask Tom article:

http://www.oracle.com/technology/oramag/oracle/06-sep/o56asktom.html

One option you have is to jump start from what Mike has given you in the 
OracleSQLHelper then roll your own and replace it at runtime. This is 
also true for whatever database you use. Not only can you attempt to tweak 
it to get deterministic results in the general case using the oracle 
reserved keyword rowid you can go one step further. (BTW - rowid is 
like guid for the row). You can impliment an interface for specific 
Entities where you want to control what column to use for deterministic 
behavior. You can define something in the userinfo dictionary and make 
your generation templates latch onto that. In this way, when it comes time 
to do the clever batching, you can use either rowid or the special 
column of your entity if one is defined in Entity Modeler.

Cheers,
-- Aaron ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: ertaggable not migrating

2010-01-25 Thread Joe Little
I wanted a to-many relationship for attachments on multiple entities
(journals, payments,invoices, whatnot). In the end, I added that one
line model dependency and it work. My model defines an entity called
FileAttachment, which itself is modeled as a to-many for multiple
other entities. FileAttachment has only the to-one relationship to
ERAttachment as it seemingly requires based on what's documented. This
may add a little work in creating an extra entity before uploads can
happen, but it cleanly allows the two-many that I need.

On Mon, Jan 25, 2010 at 1:58 PM, Mike Schrag msch...@mdimension.com wrote:
 sketchy.

 In your model, it has a to-one relationship to ERAttachment, right?  it 
 should have figured that out automagically and not even required ERAttachment 
 declared explicitly, though it's generally a good thing to do anyway, since 
 an explicit declaration defines the version #.

 On Jan 25, 2010, at 4:56 PM, Joe Little wrote:

 Never mind my last comment. Yes, I put the below modelDependencies
 value in my primary migration, and it works now.

 On Mon, Jan 25, 2010 at 1:50 PM, Mike Schrag msch...@mdimension.com wrote:
 hmmm ... out of curiosity, in your ERAttachmentMigration subclass, if you
 add the method:



   @Override
   public NSArrayERXModelVersion modelDependencies() {
   return new NSArrayERXModelVersion(new ERXModelVersion(ERAttachment,
 1));
   }

 does that fix it? we should probably put that in there.
 ms
 On Jan 25, 2010, at 4:34 PM, Joe Little wrote:

 I'll do that. Also ran into trouble with ERAttachment. Doesn't it
 auto-migrate in the table creation?

 Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
 FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
 REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
 ERROR: relation erattachment does not exist

 If you use Project Wonder migrations and migrateOnStartup, then the
 ERAttachment tables will be automatically created for you on the first
 launch. If you do not, then you can either manually execute the
 .migration SQL scripts that are in the Resources folder (execute them
 in numeric order), or you can open the EOModel and generate SQL for
 your particular database.

 I definitely have the migrations running as that's how I'm building my
 DB and adding ERTaggable.

 On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com wrote:

 i honestly don't know why we don't just tell you this outright rather than
 make you visually diff the two ... seems like something these new-fangled
 computational machines would be good at. feel free to log a jira on that.

 ms

 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:

 doh.. didn't see that when checking the two.

 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com
 wrote:

 you can see from the two connection dicts what the diff is ...
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does
 not. Just set a global override for plugin and it should fix your problem.

 ms

 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:

 I'm getting this error,

 A fatal exception occurred: The connection dictionaries for ERTaggable

 and AffiliateEOModel have the same URL and username, but the

 connection dictionaries are not equal. Check your connection

 dictionaries carefully! This problem is often caused by jdbc2Info not

 matching between the two.  One fix for this is to set

 ERTaggable.removeJdbc2Info=true and

 AffiliateEOModel.removeJdbc2Info=true in your Properties file.

 (ERTaggable={password = ; username = postgres; URL =

 jdbc:postgresql://localhost/affiliates; }; and

 AffiliateEOModel={driver = org.postgresql.Driver; plugin =

 PostgresqlPlugIn; password = ; username = postgres; URL =

 jdbc:postgresql://localhost/affiliates; })

 I've also put those two properties in the Properties file without

 help. I've defined my database via Properties as well:

 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates

 dbConnectUserGLOBAL=postgres

 dbConnectPasswordGLOBAL=

 Has someone seen this before and can suggest what the answer was?

 ___

 Do not post admin requests to the list. They will be ignored.

 Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)

 Help/Unsubscribe/Update your Subscription:

 http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40mdimension.com

 This email sent to msch...@mdimension.com











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

This email sent to arch...@mail-archive.com


Re: Jar in WOA

2010-01-25 Thread Joe Moreno

Chuck,

	Thanks for the quick reply. What you're saying makes sense - so I'll  
try removing the jar from /Library/Java/Extensions and add it to each  
project.


Many thanks,
Joe

On Jan 24, 2010, at 20:15:50, Chuck Hill wrote:



On Jan 24, 2010, at 6:29 PM, Joe Moreno wrote:


Eclipse 3.3.2
WOLips 3.3.5047
WO 5.3
Deployed on OS X Server 10.4.11

	How can I get a WO app to use the jar that's inside the WOA  
(app.woa/Contents/Resources/Java) instead of the jar under /Library/ 
Java/Extensions?


AFAIK, you can't.  Jars in /Library/Java/Extensions are loaded first  
by JVM design.


Chuck



The build.xml seems to be configured correctly:

lib dir=Libraries
include name=*.jar/
exclude name=**/*.framework/**/
/lib

	Also, I see the correct jar inside the WOA, but, for some reason,  
during deployment, the app is picking up the jar under /Library/ 
Java/Extensions instead of the one inside the WOA. (In other words,  
it runs fine in Eclipse but not when it's deployed.)


Did I miss an Eclipse or ant setting?

Thanks,
Joe


___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net

This email sent to ch...@global-village.net


--
Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their  
overall knowledge of WebObjects or who are trying to solve specific  
problems.

http://www.global-village.net/products/practical_webobjects









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

This email sent to arch...@mail-archive.com


Re: Jar in WOA

2010-01-25 Thread Tim Worman
Or, like WOnder ERJars, maybe you could make a framework just for necessary 
jars and include that framework on the build path of those projects? 

Tim Worman
UCLA GSEIS



On Jan 25, 2010, at 2:57 PM, Joe Moreno wrote:

 Chuck,
 
   Thanks for the quick reply. What you're saying makes sense - so I'll 
 try removing the jar from /Library/Java/Extensions and add it to each project.
 
 Many thanks,
 Joe
 
 On Jan 24, 2010, at 20:15:50, Chuck Hill wrote:
 
 
 On Jan 24, 2010, at 6:29 PM, Joe Moreno wrote:
 
 Eclipse 3.3.2
 WOLips 3.3.5047
 WO 5.3
 Deployed on OS X Server 10.4.11
 
 How can I get a WO app to use the jar that's inside the WOA 
 (app.woa/Contents/Resources/Java) instead of the jar under 
 /Library/Java/Extensions?
 
 AFAIK, you can't.  Jars in /Library/Java/Extensions are loaded first by JVM 
 design.
 
 Chuck
 
 
 The build.xml seems to be configured correctly:
 
 lib dir=Libraries
 include name=*.jar/
 exclude name=**/*.framework/**/
 /lib
 
 Also, I see the correct jar inside the WOA, but, for some reason, 
 during deployment, the app is picking up the jar under 
 /Library/Java/Extensions instead of the one inside the WOA. (In other 
 words, it runs fine in Eclipse but not when it's deployed.)
 
 Did I miss an Eclipse or ant setting?
 
 Thanks,
 Joe
 
 
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net
 
 This email sent to ch...@global-village.net
 
 -- 
 Chuck Hill Senior Consultant / VP Development
 
 Practical WebObjects - for developers who want to increase their overall 
 knowledge of WebObjects or who are trying to solve specific problems.
 http://www.global-village.net/products/practical_webobjects
 
 
 
 
 
 
 
 
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/lists%40thetimmy.com
 
 This email sent to li...@thetimmy.com

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

This email sent to arch...@mail-archive.com


Re: ertaggable not migrating

2010-01-25 Thread Joe Little
Another hitch. Docs say to create a convenience method:

ERTaggableEntity provides entity-level tag management and fetching
methods. Typically you would provide a cover method from your entity
class to an instance of an ERTaggableEntity: public class Person
extends _Person { ... public static ERTaggableEntity taggableEntity()
{ return new ERTaggableEntity(Person.ENTITY_NAME); } }

So.. when I define

public static ERTaggableEntity taggableEntity() {
return new ERTaggableEntity(Company.ENTITY_NAME);
}

I get an error since Company.ENTITY_NAME returns a string where as the
ERTaggableEntity expects an EOEntity in the constructor. However,
nothing else seems to work there either. Another point where I must be
doing something wrong.




On Mon, Jan 25, 2010 at 2:54 PM, Joe Little jmlit...@gmail.com wrote:
 I wanted a to-many relationship for attachments on multiple entities
 (journals, payments,invoices, whatnot). In the end, I added that one
 line model dependency and it work. My model defines an entity called
 FileAttachment, which itself is modeled as a to-many for multiple
 other entities. FileAttachment has only the to-one relationship to
 ERAttachment as it seemingly requires based on what's documented. This
 may add a little work in creating an extra entity before uploads can
 happen, but it cleanly allows the two-many that I need.

 On Mon, Jan 25, 2010 at 1:58 PM, Mike Schrag msch...@mdimension.com wrote:
 sketchy.

 In your model, it has a to-one relationship to ERAttachment, right?  it 
 should have figured that out automagically and not even required 
 ERAttachment declared explicitly, though it's generally a good thing to do 
 anyway, since an explicit declaration defines the version #.

 On Jan 25, 2010, at 4:56 PM, Joe Little wrote:

 Never mind my last comment. Yes, I put the below modelDependencies
 value in my primary migration, and it works now.

 On Mon, Jan 25, 2010 at 1:50 PM, Mike Schrag msch...@mdimension.com wrote:
 hmmm ... out of curiosity, in your ERAttachmentMigration subclass, if you
 add the method:



   @Override
   public NSArrayERXModelVersion modelDependencies() {
   return new NSArrayERXModelVersion(new ERXModelVersion(ERAttachment,
 1));
   }

 does that fix it? we should probably put that in there.
 ms
 On Jan 25, 2010, at 4:34 PM, Joe Little wrote:

 I'll do that. Also ran into trouble with ERAttachment. Doesn't it
 auto-migrate in the table creation?

 Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
 FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
 REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
 ERROR: relation erattachment does not exist

 If you use Project Wonder migrations and migrateOnStartup, then the
 ERAttachment tables will be automatically created for you on the first
 launch. If you do not, then you can either manually execute the
 .migration SQL scripts that are in the Resources folder (execute them
 in numeric order), or you can open the EOModel and generate SQL for
 your particular database.

 I definitely have the migrations running as that's how I'm building my
 DB and adding ERTaggable.

 On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com 
 wrote:

 i honestly don't know why we don't just tell you this outright rather than
 make you visually diff the two ... seems like something these new-fangled
 computational machines would be good at. feel free to log a jira on that.

 ms

 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:

 doh.. didn't see that when checking the two.

 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com
 wrote:

 you can see from the two connection dicts what the diff is ...
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does
 not. Just set a global override for plugin and it should fix your problem.

 ms

 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:

 I'm getting this error,

 A fatal exception occurred: The connection dictionaries for ERTaggable

 and AffiliateEOModel have the same URL and username, but the

 connection dictionaries are not equal. Check your connection

 dictionaries carefully! This problem is often caused by jdbc2Info not

 matching between the two.  One fix for this is to set

 ERTaggable.removeJdbc2Info=true and

 AffiliateEOModel.removeJdbc2Info=true in your Properties file.

 (ERTaggable={password = ; username = postgres; URL =

 jdbc:postgresql://localhost/affiliates; }; and

 AffiliateEOModel={driver = org.postgresql.Driver; plugin =

 PostgresqlPlugIn; password = ; username = postgres; URL =

 jdbc:postgresql://localhost/affiliates; })

 I've also put those two properties in the Properties file without

 help. I've defined my database via Properties as well:

 dbConnectURLGLOBAL=jdbc:postgresql://localhost/affiliates

 dbConnectUserGLOBAL=postgres

 dbConnectPasswordGLOBAL=

 Has someone seen this before and can suggest what the answer was?

 

Re: ertaggable not migrating

2010-01-25 Thread Mike Schrag
not sure which docs you were looking at, but the package.html (which i consider 
to be The Docs (TM) ) looks correct:

public ERTaggablePerson taggable() {
return ERTaggable.taggable(this);
}

public static ERTaggableEntityPerson taggableEntity() {
return ERTaggableEntity.taggableEntity(Person.ENTITY_NAME);
}

notice it's using the factory method not the constructor.

was this a misread or a docs bug somewhere else?

ms

On Jan 25, 2010, at 6:32 PM, Joe Little wrote:

 Another hitch. Docs say to create a convenience method:
 
 ERTaggableEntity provides entity-level tag management and fetching
 methods. Typically you would provide a cover method from your entity
 class to an instance of an ERTaggableEntity: public class Person
 extends _Person { ... public static ERTaggableEntity taggableEntity()
 { return new ERTaggableEntity(Person.ENTITY_NAME); } }
 
 So.. when I define
 
 public static ERTaggableEntity taggableEntity() {
   return new ERTaggableEntity(Company.ENTITY_NAME);
   }
 
 I get an error since Company.ENTITY_NAME returns a string where as the
 ERTaggableEntity expects an EOEntity in the constructor. However,
 nothing else seems to work there either. Another point where I must be
 doing something wrong.
 
 
 
 
 On Mon, Jan 25, 2010 at 2:54 PM, Joe Little jmlit...@gmail.com wrote:
 I wanted a to-many relationship for attachments on multiple entities
 (journals, payments,invoices, whatnot). In the end, I added that one
 line model dependency and it work. My model defines an entity called
 FileAttachment, which itself is modeled as a to-many for multiple
 other entities. FileAttachment has only the to-one relationship to
 ERAttachment as it seemingly requires based on what's documented. This
 may add a little work in creating an extra entity before uploads can
 happen, but it cleanly allows the two-many that I need.
 
 On Mon, Jan 25, 2010 at 1:58 PM, Mike Schrag msch...@mdimension.com wrote:
 sketchy.
 
 In your model, it has a to-one relationship to ERAttachment, right?  it 
 should have figured that out automagically and not even required 
 ERAttachment declared explicitly, though it's generally a good thing to do 
 anyway, since an explicit declaration defines the version #.
 
 On Jan 25, 2010, at 4:56 PM, Joe Little wrote:
 
 Never mind my last comment. Yes, I put the below modelDependencies
 value in my primary migration, and it works now.
 
 On Mon, Jan 25, 2010 at 1:50 PM, Mike Schrag msch...@mdimension.com 
 wrote:
 hmmm ... out of curiosity, in your ERAttachmentMigration subclass, if you
 add the method:
 
 
 
   @Override
   public NSArrayERXModelVersion modelDependencies() {
   return new NSArrayERXModelVersion(new ERXModelVersion(ERAttachment,
 1));
   }
 
 does that fix it? we should probably put that in there.
 ms
 On Jan 25, 2010, at 4:34 PM, Joe Little wrote:
 
 I'll do that. Also ran into trouble with ERAttachment. Doesn't it
 auto-migrate in the table creation?
 
 Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
 FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
 REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
 ERROR: relation erattachment does not exist
 
 If you use Project Wonder migrations and migrateOnStartup, then the
 ERAttachment tables will be automatically created for you on the first
 launch. If you do not, then you can either manually execute the
 .migration SQL scripts that are in the Resources folder (execute them
 in numeric order), or you can open the EOModel and generate SQL for
 your particular database.
 
 I definitely have the migrations running as that's how I'm building my
 DB and adding ERTaggable.
 
 On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com 
 wrote:
 
 i honestly don't know why we don't just tell you this outright rather than
 make you visually diff the two ... seems like something these new-fangled
 computational machines would be good at. feel free to log a jira on that.
 
 ms
 
 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:
 
 doh.. didn't see that when checking the two.
 
 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com
 wrote:
 
 you can see from the two connection dicts what the diff is ...
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does
 not. Just set a global override for plugin and it should fix your problem.
 
 ms
 
 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:
 
 I'm getting this error,
 
 A fatal exception occurred: The connection dictionaries for ERTaggable
 
 and AffiliateEOModel have the same URL and username, but the
 
 connection dictionaries are not equal. Check your connection
 
 dictionaries carefully! This problem is often caused by jdbc2Info not
 
 matching between the two.  One fix for this is to set
 
 ERTaggable.removeJdbc2Info=true and
 
 AffiliateEOModel.removeJdbc2Info=true in your Properties file.
 
 (ERTaggable={password = ; username = postgres; URL =
 
 

Re: ertaggable not migrating

2010-01-25 Thread Mike Schrag
yeah -- docs bug in ERTaggableEntity ... Sorry about that. They got out of 
date. I think it USED to be what was in ERTaggableEntity and then changed.

ms

On Jan 25, 2010, at 6:35 PM, Mike Schrag wrote:

 not sure which docs you were looking at, but the package.html (which i 
 consider to be The Docs (TM) ) looks correct:
 
 public ERTaggablePerson taggable() {
return ERTaggable.taggable(this);
 }
 
 public static ERTaggableEntityPerson taggableEntity() {
return ERTaggableEntity.taggableEntity(Person.ENTITY_NAME);
 }
 
 notice it's using the factory method not the constructor.
 
 was this a misread or a docs bug somewhere else?
 
 ms
 
 On Jan 25, 2010, at 6:32 PM, Joe Little wrote:
 
 Another hitch. Docs say to create a convenience method:
 
 ERTaggableEntity provides entity-level tag management and fetching
 methods. Typically you would provide a cover method from your entity
 class to an instance of an ERTaggableEntity: public class Person
 extends _Person { ... public static ERTaggableEntity taggableEntity()
 { return new ERTaggableEntity(Person.ENTITY_NAME); } }
 
 So.. when I define
 
 public static ERTaggableEntity taggableEntity() {
  return new ERTaggableEntity(Company.ENTITY_NAME);
  }
 
 I get an error since Company.ENTITY_NAME returns a string where as the
 ERTaggableEntity expects an EOEntity in the constructor. However,
 nothing else seems to work there either. Another point where I must be
 doing something wrong.
 
 
 
 
 On Mon, Jan 25, 2010 at 2:54 PM, Joe Little jmlit...@gmail.com wrote:
 I wanted a to-many relationship for attachments on multiple entities
 (journals, payments,invoices, whatnot). In the end, I added that one
 line model dependency and it work. My model defines an entity called
 FileAttachment, which itself is modeled as a to-many for multiple
 other entities. FileAttachment has only the to-one relationship to
 ERAttachment as it seemingly requires based on what's documented. This
 may add a little work in creating an extra entity before uploads can
 happen, but it cleanly allows the two-many that I need.
 
 On Mon, Jan 25, 2010 at 1:58 PM, Mike Schrag msch...@mdimension.com wrote:
 sketchy.
 
 In your model, it has a to-one relationship to ERAttachment, right?  it 
 should have figured that out automagically and not even required 
 ERAttachment declared explicitly, though it's generally a good thing to do 
 anyway, since an explicit declaration defines the version #.
 
 On Jan 25, 2010, at 4:56 PM, Joe Little wrote:
 
 Never mind my last comment. Yes, I put the below modelDependencies
 value in my primary migration, and it works now.
 
 On Mon, Jan 25, 2010 at 1:50 PM, Mike Schrag msch...@mdimension.com 
 wrote:
 hmmm ... out of curiosity, in your ERAttachmentMigration subclass, if you
 add the method:
 
 
 
  @Override
  public NSArrayERXModelVersion modelDependencies() {
  return new NSArrayERXModelVersion(new ERXModelVersion(ERAttachment,
 1));
  }
 
 does that fix it? we should probably put that in there.
 ms
 On Jan 25, 2010, at 4:34 PM, Joe Little wrote:
 
 I'll do that. Also ran into trouble with ERAttachment. Doesn't it
 auto-migrate in the table creation?
 
 Failed to execute 'ALTER TABLE FILE_ATTACHMENT ADD CONSTRAINT
 FILE_ATTACHMENT_ATTACHMENT_ID_id_FK FOREIGN KEY (ATTACHMENT_ID)
 REFERENCES ERAttachment (id) DEFERRABLE INITIALLY DEFERRED'
 ERROR: relation erattachment does not exist
 
 If you use Project Wonder migrations and migrateOnStartup, then the
 ERAttachment tables will be automatically created for you on the first
 launch. If you do not, then you can either manually execute the
 .migration SQL scripts that are in the Resources folder (execute them
 in numeric order), or you can open the EOModel and generate SQL for
 your particular database.
 
 I definitely have the migrations running as that's how I'm building my
 DB and adding ERTaggable.
 
 On Mon, Jan 25, 2010 at 1:22 PM, Mike Schrag msch...@mdimension.com 
 wrote:
 
 i honestly don't know why we don't just tell you this outright rather 
 than
 make you visually diff the two ... seems like something these new-fangled
 computational machines would be good at. feel free to log a jira on that.
 
 ms
 
 On Jan 25, 2010, at 4:16 PM, Joe Little wrote:
 
 doh.. didn't see that when checking the two.
 
 On Mon, Jan 25, 2010 at 12:54 PM, Mike Schrag msch...@mdimension.com
 wrote:
 
 you can see from the two connection dicts what the diff is ...
 AffiliateEOModel explicitly declares a plugin name while ERTaggable does
 not. Just set a global override for plugin and it should fix your 
 problem.
 
 ms
 
 On Jan 25, 2010, at 3:44 PM, Joe Little wrote:
 
 I'm getting this error,
 
 A fatal exception occurred: The connection dictionaries for ERTaggable
 
 and AffiliateEOModel have the same URL and username, but the
 
 connection dictionaries are not equal. Check your connection
 
 dictionaries carefully! This problem is often caused by jdbc2Info not
 
 matching between the 

Re: ertaggable not migrating

2010-01-25 Thread Mike Schrag
the great quandry of javadocs  i wonder if this should be a symlink to the 
package.html for the bulk of this page? Maybe it should only include notes and 
comments above and beyond what appears in the javadoc? Ray is working on a tool 
that might make this process suck less.

ms

On Jan 25, 2010, at 6:39 PM, Joe Little wrote:

 I was originally using the confluence docs.. and when that failed,
 went to the class file docs. Both were wrong. I'll go and update the
 confluence docs.
 
 http://wiki.objectstyle.org/confluence/display/WONDER/ERTaggable
 
 
 On Mon, Jan 25, 2010 at 3:38 PM, Mike Schrag msch...@mdimension.com wrote:
 not sure which docs you were looking at, but the package.html* (which i 
 consider to be The Docs (TM) ) looks correct:
 * 
 http://webobjects.mdimension.com/hudson/job/Wonder53/javadoc/er/taggable/package-summary.html
 
 ms
 


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

This email sent to arch...@mail-archive.com


Re: ertaggable not migrating

2010-01-25 Thread Joe Little
Searching for things within Confluence is still problematic, but I do
believe its still the best place for showing _how_ to use things in
general. I've found better explanations there on average than what I
can glean from the java docs, but mostly that's because I'm more
example-driven than one to discern usage from Java Docs. Each has
their advantages to different people. That said, if its a copy from
the java docs, then yes it should be by reference.

I think ideally that you have all your Wonder frameworks in
Confluence, a nice intro/example page for each framework, with links
to the java docs to avoid duplication and/or outdated-ness where
possible.


On Mon, Jan 25, 2010 at 3:42 PM, Mike Schrag msch...@mdimension.com wrote:
 the great quandry of javadocs  i wonder if this should be a symlink to 
 the package.html for the bulk of this page? Maybe it should only include 
 notes and comments above and beyond what appears in the javadoc? Ray is 
 working on a tool that might make this process suck less.

 ms

 On Jan 25, 2010, at 6:39 PM, Joe Little wrote:

 I was originally using the confluence docs.. and when that failed,
 went to the class file docs. Both were wrong. I'll go and update the
 confluence docs.

 http://wiki.objectstyle.org/confluence/display/WONDER/ERTaggable


 On Mon, Jan 25, 2010 at 3:38 PM, Mike Schrag msch...@mdimension.com wrote:
 not sure which docs you were looking at, but the package.html* (which i 
 consider to be The Docs (TM) ) looks correct:
 * 
 http://webobjects.mdimension.com/hudson/job/Wonder53/javadoc/er/taggable/package-summary.html

 ms




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

This email sent to arch...@mail-archive.com


Re: Updating EO by inserting new EO and archiving the old EO - any suggestions?

2010-01-25 Thread Amiel Montecillo
Once again, thank you for your ideas. Going to increase my caffeine intake
now.

Amiel

On Tue, Jan 26, 2010 at 4:24 AM, Chuck Hill ch...@global-village.netwrote:


 On Jan 25, 2010, at 12:32 AM, Amiel Montecillo wrote:

  Hi List,

 I am having a dilemma on how to best implement this kind of scenario.

 I need the update process of an EO by creating an new EO with the updated
 values and archiving the old one. This EO has quiet a few to-many
 relationships that needs to be archived as well.

 I am thinking of copying the existing values along with the relationship
 values to an NSDictionary and tie that to the form. Once the save action
 fires, inspect if there are any changed values and create a new EO with the
 updated values and archive the old one.

 Can anyone suggest a better way of handling this?


 Use the EOCopying code from Practical WebObjects.  If you want to edit eo,
 instead edit eo.copy().  The copy() method should mark the existing object
 as archived.  If the user saves, the existing object will be saved marked as
 archived, and new objects will be created.  You will need to handle how
 these objects are referenced in relationships so you don't show archived
 versions.

 The GVCGenericObjects framework shows one way of doing this, though it is
 NOT intended for use as an audit trail.
 http://www.global-village.net/chill/gvc_frameworks


 There have been several good discussions on various audit trail
 implementations on the list.  Search for audit trail.  You need to
 carefully evaluate your requirements and choose your implementation
 accordingly.


 Chuck

 --
 Chuck Hill Senior Consultant / VP Development

 Practical WebObjects - for developers who want to increase their overall
 knowledge of WebObjects or who are trying to solve specific problems.
 http://www.global-village.net/products/practical_webobjects










-- 
socket error: unable to connect to 127.0.0.1
 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: ertaggable not migrating

2010-01-25 Thread Mike Schrag
Yeah, I try to write an overall how do you use it document for the 
package.html with smaller chunks in the individual class javadoc.

ms

On Jan 25, 2010, at 6:45 PM, Joe Little wrote:

 Searching for things within Confluence is still problematic, but I do
 believe its still the best place for showing _how_ to use things in
 general. I've found better explanations there on average than what I
 can glean from the java docs, but mostly that's because I'm more
 example-driven than one to discern usage from Java Docs. Each has
 their advantages to different people. That said, if its a copy from
 the java docs, then yes it should be by reference.
 
 I think ideally that you have all your Wonder frameworks in
 Confluence, a nice intro/example page for each framework, with links
 to the java docs to avoid duplication and/or outdated-ness where
 possible.
 
 
 On Mon, Jan 25, 2010 at 3:42 PM, Mike Schrag msch...@mdimension.com wrote:
 the great quandry of javadocs  i wonder if this should be a symlink to 
 the package.html for the bulk of this page? Maybe it should only include 
 notes and comments above and beyond what appears in the javadoc? Ray is 
 working on a tool that might make this process suck less.
 
 ms
 
 On Jan 25, 2010, at 6:39 PM, Joe Little wrote:
 
 I was originally using the confluence docs.. and when that failed,
 went to the class file docs. Both were wrong. I'll go and update the
 confluence docs.
 
 http://wiki.objectstyle.org/confluence/display/WONDER/ERTaggable
 
 
 On Mon, Jan 25, 2010 at 3:38 PM, Mike Schrag msch...@mdimension.com wrote:
 not sure which docs you were looking at, but the package.html* (which i 
 consider to be The Docs (TM) ) looks correct:
 * 
 http://webobjects.mdimension.com/hudson/job/Wonder53/javadoc/er/taggable/package-summary.html
 
 ms
 
 
 
 


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

This email sent to arch...@mail-archive.com


Re: Error Message in Eclipse

2010-01-25 Thread Lachlan Deck
If this has just started happening and you've done nothing else (e.g., changed 
configs etc) then maybe try creating a new workspace.

On 26/01/2010, at 12:07 AM, Frank Gibau wrote:

 Hey WO-friends,
 ich have a problem with Eclipse. Running a WO-Application in Debugmode you 
 normally get a very helpful error message. 
 In most cases Eclipse show you directly the codeline with the error. Since a 
 few weeks i get error-message that a not so helpful:
 Its very difficult to find the NullpointerException with such a message.
 Has anybody an idea what i could have made wrong (Prefs in Eclipse).
 MacOSX System 10.6.2, Eclipse Version: 3.3.2, WO 5.4.1
 
 Thank you
 
 [2010-1-25 13:58:55 MEZ] WorkerThread15 WOExceptionParser - exception 
 collecting backtrace data java.lang.NullPointerException - Empty backtrace.
 [2010-1-25 13:58:55 MEZ] WorkerThread15 java.lang.NullPointerException
   at 
 com.webobjects.woextensions.WOExceptionParser._ignoredPackages(WOExceptionParser.java:63)
   at 
 com.webobjects.woextensions.WOExceptionParser._parseException(WOExceptionParser.java:105)
   at 
 com.webobjects.woextensions.WOExceptionParser.init(WOExceptionParser.java:44)
   at 
 com.webobjects.woextensions.WOExceptionPage.setException(WOExceptionPage.java:33)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at 
 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at 
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at 
 com.webobjects.woextensions.KeyValueCodingProtectedAccessor.setMethodValue(KeyValueCodingProtectedAccessor.java:34)
   at 
 com.webobjects.foundation.NSKeyValueCoding$_MethodBinding.setValueInObject(NSKeyValueCoding.java:1150)
   at 
 com.webobjects.foundation.NSKeyValueCoding$DefaultImplementation.takeValueForKey(NSKeyValueCoding.java:1323)
   at 
 com.webobjects.appserver.WOComponent.takeValueForKey(WOComponent.java:1698)
   at 
 com.webobjects.appserver.WOApplication._handleError(WOApplication.java:3074)
   at 
 com.webobjects.appserver.WOApplication.handleException(WOApplication.java:3226)
   at 
 com.webobjects.appserver._private.WOComponentRequestHandler._handleRequest(WOComponentRequestHandler.java:389)
   at 
 com.webobjects.appserver._private.WOComponentRequestHandler.handleRequest(WOComponentRequestHandler.java:442)
   at 
 com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1678)
   at 
 com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
   at 
 com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
   at java.lang.Thread.run(Thread.java:637)
 
 ___
 Do not post admin requests to the list. They will be ignored.
 Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
 Help/Unsubscribe/Update your Subscription:
 http://lists.apple.com/mailman/options/webobjects-dev/lachlan.deck%40gmail.com
 
 This email sent to lachlan.d...@gmail.com

with regards,
--

Lachlan Deck



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

This email sent to arch...@mail-archive.com


Re: recognising dead instances

2010-01-25 Thread Lachlan Deck
Thanks all. Some good ideas.

On 26/01/2010, at 7:12 AM, Chuck Hill wrote:

 On Jan 25, 2010, at 5:35 AM, Pascal Robert wrote:
 
 Le 10-01-25 à 01:40, Lachlan Deck a écrit :
 
 Hi all,
 
 just polling for ideas / techniques people use in detecting dead instances. 
 Naturally when there's lots of instances running in deployment it can be 
 hard to know if a particular instance has locked up for some reason (and 
 this can sometimes have a flow on affect with the adaptor).
 
 
 We use Nagios with the check_http module (bundled with the default Nagios 
 plugins). We check a DirectAction that simply returns OK and nothing else, 
 but we will add two more checks : one that will fetch a very small dataset 
 with EOF and another one by raw JDBC. By doing one check by EOF and one by 
 JDBC, we can see if it's a EOF deadlock or not. The most important thing: 
 don't check a page that use sessions! If you try to stop an app cleanly but 
 Nagios or other tools keeps creating new sessions, you might have a fun time.
 
 As for checking specific instances, you can specific the instance number in 
 the URL, but the problem is that the HTTP adaptor will send you to another 
 instance if the checked instance is dead. BUT you can use Wonder's variant 
 of JavaMonitor to check if a specific instance is up or not.
 
 Or, more easily, have the instance number returned in the response (e.g. 4 
 OK) so that the script can verify that the result is from the correct 
 instance.
 
 Chuck
 
 
 Nagios is my friend! We are currently checking 211 services with it (disk 
 space, Oracle listener port, all apps, load, ntp, etc.).
 
 
 Pascal Robert
 prob...@macti.ca
 
 AIM: MacTICanada
 Twitter : MacTICanada
 LinkedIn : http://www.linkedin.com/in/macti
 
 
 -- 
 Chuck Hill Senior Consultant / VP Development
 
 Practical WebObjects - for developers who want to increase their overall 
 knowledge of WebObjects or who are trying to solve specific problems.
 http://www.global-village.net/products/practical_webobjects

with regards,
--

Lachlan Deck



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

This email sent to arch...@mail-archive.com