Re: True war deployment and WebServerResources

2009-08-05 Thread Lachlan Deck

On 05/08/2009, at 6:21 AM, Andrew Lindesay wrote:

I could be wrong, but suspect that continuously producing a jar  
would be very slow, but let me know how you get on!


I thought about doing this before, but hadn't got around to it. It  
wouldn't be quick but so long as you're not embedding frameworks it  
might not be too bad.


Alternatively, you might be able to use a maven profile to achieve the  
same result more easily. e.g., firing off an assembler


In eclipse, you can add a custom builder : projet  properties   
builders  New
the builder would be a simple ant task that jars the classes  
directory and put them somewhere in the classpath ahead of the  
classes directory (is this even possible ?)... I've not tested  
this, it's just a thought.


___
Andrew Lindesay
www.lindesay.co.nz

___
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


(no subject)

2009-08-05 Thread Mark Ainge

Dino,

Have you used eogenerator to generate classes for your model? D2W  
doesn't work without it. I made this mistake on my first d2w attempt a  
couple of weeks ago.


Mark
 ___
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: My first Eclipse D2W

2009-08-05 Thread Mark Ainge



Dino,

Have you used eogenerator to generate classes for your model? D2W  
doesn't work without it. I made this mistake on my first d2w attempt  
a couple of weeks ago.


Mark
 ___
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: True war deployment and WebServerResources

2009-08-05 Thread Andrew Lindesay

Hi Lachlan;

I did a proper maven packaging 'goal' for war and it works fine.  It's  
just not easy to develop like that.  The app's jar I am building is  
~3M so it would take too long to keep making that.


cheers.

I could be wrong, but suspect that continuously producing a jar  
would be very slow, but let me know how you get on!


I thought about doing this before, but hadn't got around to it. It  
wouldn't be quick but so long as you're not embedding frameworks it  
might not be too bad.
Alternatively, you might be able to use a maven profile to achieve  
the same result more easily. e.g., firing off an assembler


___
Andrew Lindesay
www.lindesay.co.nz

___
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: Deployment with Embedded Frameworks and Duplicate libraries

2009-08-05 Thread Mr. Frank Cobia

Thanks for all the help. I am making progress.

Also, I have to turn direct connect off to be able to do the  
refuse new sessions, so is there another way to figure out which  
app is hung so that it can be killed?


Look at the stack trace, like below.  Also look for growing  
numbers of worker threads.  If you have more than 16, you probably  
have a problem.




I have checked and this seems to be my last problem. Every once in a  
while I get an instance that spawns 256 worker threads. The statistics  
show that this does not even require a lot of transactions. I did a  
stack trace and there were a few funny looking things, but the one  
that stood out the most was the following appeared a lot:


Thread t...@80131: (state = BLOCKED)
 - java.lang.Class.forName0(java.lang.String, boolean,  
java.lang.ClassLoader) @bci=0 (Interpreted frame)
 - java.lang.Class.forName(java.lang.String) @bci=5, line=164  
(Interpreted frame)
 - com.webobjects.foundation._NSUtilities._searchForClassInPackages 
(java.lang.String, com.webobjects.foundation.NSArray, boolean,  
boolean) @bci=92, line=417 (Interpreted frame)
 - com.webobjects.foundation._NSUtilities._classWithPartialName 
(java.lang.String, boolean) @bci=154, line=375 (Interpreted frame)
 - com.webobjects.foundation._NSUtilities.classWithName 
(java.lang.String) @bci=26, line=334 (Interpreted frame)
 - com.webobjects.appserver._private.WOBundle.lookForClassInAllBundles 
(java.lang.String) @bci=5, line=92 (Interpreted frame)
 -  
com.webobjects.appserver 
._private.WOActionRequestHandler._actionClassForName(java.lang.String)  
@bci=1, line=70 (Interpreted frame)
 -  
com.webobjects.appserver 
._private.WOActionRequestHandler.getRequestActionClassAndNameForPath 
(com.webobjects.foundation.NSArray) @bci=114, line=389 (Interpreted  
frame)
 -  
com.webobjects.appserver._private.WOActionRequestHandler._handleRequest 
(com.webobjects.appserver.WORequest) @bci=88, line=226 (Interpreted  
frame)
 -  
com.webobjects.appserver._private.WOActionRequestHandler.handleRequest 
(com.webobjects.appserver.WORequest) @bci=79, line=161 (Interpreted  
frame)
 - er.extensions.appserver.ERXDirectActionRequestHandler.handleRequest 
(com.webobjects.appserver.WORequest) @bci=222, line=123 (Interpreted  
frame)
 - com.webobjects.appserver.WOApplication.dispatchRequest 
(com.webobjects.appserver.WORequest) @bci=32, line=1687 (Interpreted  
frame)
 - er.extensions.appserver.ERXApplication.dispatchRequestImmediately 
(com.webobjects.appserver.WORequest) @bci=74, line=1791 (Interpreted  
frame)
 - er.extensions.appserver.ERXApplication.dispatchRequest 
(com.webobjects.appserver.WORequest) @bci=13, line=1756 (Interpreted  
frame)
 - com.webobjects.appserver._private.WOWorkerThread.runOnce()  
@bci=473, line=144 (Interpreted frame)
 - com.webobjects.appserver._private.WOWorkerThread.run() @bci=129,  
line=226 (Interpreted frame)

 - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame)


So it appears that a lot of threads are getting locked up in  
Class.forName(). I want to print out some debug information to try to  
figure out which class is being instantiated, but I did not want to  
fill up the logs too much. I have already run out of disk space  
because of too much logging. So my question is, is there a call  
somewhere where I can find the number of worker threads or when the  
number of worker threads is increased to 32? That way I can turn on  
the logging when it really matters.


Thanks,
Frank ___
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

war deploy under tomcat and session length?

2009-08-05 Thread William Hatch
The deployed app doesn't seem to be honoring the normal session  
timeout values; they're very short now;-( I came across an old thread  
that mentioned it being in the web.xml, but I'm not connecting what I  
need to set inside the various properties to extend this value. Where  
and what should I be setting? Thanks.


Bill


___
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: Deployment with Embedded Frameworks and Duplicate libraries

2009-08-05 Thread Chuck Hill

On Aug 5, 2009, at 7:08 AM, Mr. Frank Cobia wrote:


Thanks for all the help. I am making progress.

Also, I have to turn direct connect off to be able to do the  
refuse new sessions, so is there another way to figure out which  
app is hung so that it can be killed?


Look at the stack trace, like below.  Also look for growing  
numbers of worker threads.  If you have more than 16, you  
probably have a problem.




I have checked and this seems to be my last problem. Every once in a  
while I get an instance that spawns 256 worker threads.


First off, I'd avoid that.  It would be a remarkable application that  
could handle more than 16 or so concurrent requests.  Take a look here


http://developer.apple.com/documentation/WebObjects/WOAppProperties/Articles/ApplicationProperties.html#/ 
/apple_ref/doc/uid/TP40005337-SW1


Specifically WOListenQueueSize and WOWorkerThreadCountMax (I don't see  
the latter one documented).


The best way to set these is using JavaMonitor to configure the  
application.  I'd try a listen queue size of 5 and a max worker thread  
count of 10 to start.  Having lower numbers will make the app fail  
faster when it deadlocks and this can result in a better user  
experience.



The statistics show that this does not even require a lot of  
transactions. I did a stack trace and there were a few funny looking  
things,


Maybe show us all of the ones that look like they are doing something.



but the one that stood out the most was the following appeared a lot:

Thread t...@80131: (state = BLOCKED)
 - java.lang.Class.forName0(java.lang.String, boolean,  
java.lang.ClassLoader) @bci=0 (Interpreted frame)


My best guess is that you have a class with a static initializer that  
is either (a) deadlocking or (b) taking a lng time - waiting for a  
network timeout perhaps?


 - java.lang.Class.forName(java.lang.String) @bci=5, line=164  
(Interpreted frame)
 -  
com 
.webobjects 
.foundation._NSUtilities._searchForClassInPackages(java.lang.String,  
com.webobjects.foundation.NSArray, boolean, boolean) @bci=92,  
line=417 (Interpreted frame)
 -  
com 
.webobjects 
.foundation._NSUtilities._classWithPartialName(java.lang.String,  
boolean) @bci=154, line=375 (Interpreted frame)
 -  
com 
.webobjects.foundation._NSUtilities.classWithName(java.lang.String)  
@bci=26, line=334 (Interpreted frame)
 -  
com 
.webobjects 
.appserver 
._private.WOBundle.lookForClassInAllBundles(java.lang.String)  
@bci=5, line=92 (Interpreted frame)
 -  
com 
.webobjects 
.appserver 
._private 
.WOActionRequestHandler._actionClassForName(java.lang.String)  
@bci=1, line=70 (Interpreted frame)
 -  
com 
.webobjects 
.appserver 
._private 
.WOActionRequestHandler 
.getRequestActionClassAndNameForPath 
(com.webobjects.foundation.NSArray) @bci=114, line=389 (Interpreted  
frame)


That looks like it is trying to load a WODirectAction subclass.  Start  
searching your app there.  Logging out the request can help, except  
that matching Thread t...@80131 to a worker thread is going to be  
hard.  kill -QUIT produces an easier to read trace.



 -  
com 
.webobjects 
.appserver 
._private 
.WOActionRequestHandler 
._handleRequest(com.webobjects.appserver.WORequest) @bci=88,  
line=226 (Interpreted frame)
 -  
com 
.webobjects 
.appserver 
._private 
.WOActionRequestHandler 
.handleRequest(com.webobjects.appserver.WORequest) @bci=79, line=161  
(Interpreted frame)
 -  
er 
.extensions 
.appserver 
.ERXDirectActionRequestHandler 
.handleRequest(com.webobjects.appserver.WORequest) @bci=222,  
line=123 (Interpreted frame)
 -  
com 
.webobjects 
.appserver 
.WOApplication.dispatchRequest(com.webobjects.appserver.WORequest)  
@bci=32, line=1687 (Interpreted frame)
 -  
er 
.extensions 
.appserver 
.ERXApplication 
.dispatchRequestImmediately(com.webobjects.appserver.WORequest)  
@bci=74, line=1791 (Interpreted frame)
 -  
er 
.extensions 
.appserver 
.ERXApplication.dispatchRequest(com.webobjects.appserver.WORequest)  
@bci=13, line=1756 (Interpreted frame)
 - com.webobjects.appserver._private.WOWorkerThread.runOnce()  
@bci=473, line=144 (Interpreted frame)
 - com.webobjects.appserver._private.WOWorkerThread.run() @bci=129,  
line=226 (Interpreted frame)

 - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame)


So it appears that a lot of threads are getting locked up in  
Class.forName(). I want to print out some debug information to try  
to figure out which class is being instantiated, but I did not want  
to fill up the logs too much. I have already run out of disk space  
because of too much logging. So my question is, is there a call  
somewhere where I can find the number of worker threads or when the  
number of worker threads is increased to 32? That way I can turn on  
the logging when it really matters.


This information is not exposed via API or notifications.


Chuck


--
Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase 

Re: My first Eclipse D2W [solved]

2009-08-05 Thread Dino Strausz

Hola t...@s!

indeed it was a versioning problem...
I was running Europa instead of Ganymede...

with the advise of my e-friend Daniel Mejia (mil gracias ;^), I  
downloaded the latest version of WO from ADC, and of the all-in- 
one.pkg linked in the community web page, installed them and now  
everything runs smoothly...


Thanks all for your attention and comments,
and specially to those which dedicated those hours to develop the  
tools...


Yours sincerely,
Dino

On 29 Jul 2009, at 2:57 PM, David Holt wrote:



On 29-Jul-09, at 11:05 AM, Dino Strausz wrote:



On 29 Jul 2009, at 12:57 PM, Chuck Hill wrote:



On Jul 29, 2009, at 10:23 AM, Dino Strausz wrote:


Hola Chuck et al.,


On 28 Jul 2009, at 1:02 PM, Chuck Hill wrote:


Original Exception:
java.lang.IllegalArgumentException:  
com.webobjects.appserver.WOApplication Class 'Session' exists  
(interface org.apache.axis.session.Session) but is not a  
subclass of WOSession.


It is picking up the wrong session.  Using WO 5.3?  You really  
want / need to use Wonder if you are doing D2W.  Wonder will fix  
this problem.


I am running the latest version of WO (I suppose)


Might want to check that.


My WebServiceAsistent reports being 5.4 (I suppose all my WO is too).


http://support.apple.com/kb/TA26706?viewlocale=en_US

You need to open /System/Library/Frameworks/JavaWebObjects.framework/ 
Resources/version.plist and check the value of  
CFBundleShortVersionString









on top of Leopard 5.7 on an Aluminium MacBook
I did try both D2W type of project (one of them being Wonder's)  
with the same result/error


A proper Wonder project should fix this.


strange...




If you really won't use Wonder (and you will regret it), add  
this to you Application class:


protected Class _sessionClass() {
return your.package.here.Session.class;
}


Tried but did not worked...


You got the same error?  A different error?


exactly same error... I will start from scratch to see what  
happens...





Chuck



I think I did something wrong from the beginning ... didn't I?

D2W is supposed to work from the box just with a model and a  
running database, right?

Does Wonder's D2W needs something else?
Are there some versions issues I am not seeing?

Please, gimme some light on how to start using D2W with in the  
Eclipse+WOlips+... environment!


Gracias!
Dino





And change your.package.here to the package your Session class  
is in.



Chuck





--
Chuck Hill Senior Consultant / VP Development

Learn WO at WOWODC'09 East in Montréal this August!
http://www.wocommunity.org/wowodc09/east

http://arstechnica.com/apple/news/2009/07/webobjects-sliced-from-106but-prognosis-of-death-premature.ars



___
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/programmingosx%40mac.com

This email sent to programming...@mac.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