Web Objects Faq


WebObjects 4.5 Questions and Answers:

How do I turn off the "Applications Index Page"?''
On X Server, rename /Local/Library/WebServer/CGI-Executables/WebObjects to old_WebObjects, or delete it.

I don't understand this answer. It sounds like you are suggesting deleting the WebObjects adaptor, which I would expect to turn off more than the index page! Is this something which works specifically on X-server (I guess from the path) where the apache module is pre-installed? --MalcolmCleaton

                   The easiest "fix" is to modify your web server (Apache, etc.) to simply redirect those requests elsewhere.

Why do I get "OutOfMemoryException" when I have plenty of memory ?
You need to set the NSJavaMinHeapSize and NSJavaMaxHeapSize defaults, since Java doesn't do dynamic memory allocation.

How can I send emails with attachments/BCC headers/other features ?
Don't use the WOMailDelivery class, instead use the JavaMail? API from Sun.

Why does my application leak lots of memory with Java objects ?
Because the objective-C part of the objects are retaining references to the Java objects, preventing garbage collection. Wrap threads and long loops with NSAutoReleasePools, followed by System.gc.

Also, never leave a reference to a component's session lying around in any of the component's instance variables, or the entire session will never be correctly garbage collected. This is the specific common example - you must avoid any reference cycles which cross the Objective-C/Java bridge.

Why is the wotaskd process occupying lots of memory ?
Wotaskd leaks memory, especially when you have the Monitor page open with auto-refresh.

Restart wotaskd every once in a while (like daily).

How can I read the extended deprecation warnings when compiling ?
You need to add the "-deprecation" flag to the compiler, see javatool in Project inspector.

How can I avoid the exception's line number hiding as "Compiled Code" ?
You need to disable the JIT compiler when starting the application, with a argument to java something like "-nojit".

Why do my international characters look funny under OS X ?
Because OS X uses Mac Roman encoding, while the rest of the world uses ISO Latin-1.

How can I add third-party Java code from jar files ?
Wrap them in an WO framework, and add the jar file to resources and the classpath to CustomInfo?.plist

What known bugs are there in the OS X version of JDK 1.1.6 ?
Only Apple knows for sure :-)

But java.net.URLEncoder is broken, for one thing (uses wrong encoding) And there are lots of known bugs in JDK 1.1.6, check with Sun's documentation (current version is JDK 1.3)

How can I automatically document my classes and code ?
Use the javadoc tool from the JDK, even if WebObjects/OS X uses it's own method of generating documentation.

How can I start using the JavaBean standard of get/set methods ?
Get/set accessors are part of the key/value coding search order, so you just have to implement your classes like that and the methods will be used. To make EOModeler generate classes like this for you, edit the template file for the EO-generated classes. WebObjectsBuilder? has a checkbox for generating methods according to this standard.

Why are all my booleans represented as Integers ?
Because SQL doesn't have a boolean type, and Foundation uses integers.

YES (or 1) means true, and NO (or 0) means false.

What is the latest version?
WebObjectsFive (Update 2) is now out.


WebObjectsFive Questions and Answers:

See WebObjectsFiveFaq.


Discussion

Is this above ( Version 4.5 section ) in reference to WebObjects 4.5.0 ?

The above is referring to WO 4.5 update 3, and mostly to 4.5.1 as well. Haven't tried it much yet, since I just received it. --anders

Page organization credit: MalcolmCleaton, WikiGnome.

A discussion moved from my wrangling with an answer above:

This page was started when Anders Bj?und, anders.bjorklund@mindmill.se, asked to start a modern FAQ based on the most common development/deployment scenario: WebObjects 4.5 on X Server. The above advice applies to X Server, where the Apache adapter is installed as default and you can safely kill the CGI adapter.

Ok, fair enough; although, in my experience (in the UK) X server is a less popular deployment platform than either Solaris or Windows. I suggest we evolve this page towards a more general FAQ, and as a first step I've qualified the answer above so it won't cause confusion to those on other platforms. --MalcolmCleaton


See also: WebObjects WebObjectsFive WebObjectsFiveFaq http://wodev.spearway.com/cgi-bin/WebObjects/WODev.woa/wa/Main?wikiPage=WebObjectsSecurity

EditText of this page (last edited June 7, 2005) or FindPage with title or text search