Strange formValues() behavior
"Matt Kime" <[email protected]>
| Newsgroups | gmane.comp.web.webobjects.devel |
|---|---|
| Message-ID | <[email protected]> |
I'm having a lot of trouble tracking down a problem retrieving a GET form value.
the relevant code in my WOComponent is -
if(((NSDictionary)context().request().formValues()).count() != 0 ){
if(context().request().formValues().containsKey("galleryID")){
bolGalleryID = true;
}else{
bolGalleryID = false;
}
}else{
bolGalleryID = false;
}
the WORequest object causing trouble is -
<com.webobjects.appserver.WORequest
(<com.webobjects.appserver.WORequest httpVersion=HTTP/1.1
headers={remote_host = (69.86.146.231); user-agent = (Mozilla/5.0
(Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.0.1) Gecko/20060111
Firefox/1.5.0.1); keep-alive = (300); document_root =
(/home/mattkime/artbot); accept-charset =
(ISO-8859-1,utf-8;q=0.7,*;q=0.7); accept =
(text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5);
server_name = (www.artbot.org); server_admin = ([email protected]);
remote_port = (55387); connection = (close); server_software =
(Apache/1.3.33); cookie = (wosid=HYrIHVnDTbIFRm5bxQNj0g; woinst=1;
artbotforum_data=a%3A0%3A%7B%7D); host = (www.artbot.org); referer =
(http://www.artbot.org/cgi-bin/WebObjects/artbot.woa/wo/0.0.15.2);
remote_addr = (69.86.146.231); x-webobjects-request-id =
(43d4ff86000005aa00000004); accept-encoding = (gzip,deflate);
x-webobjects-request-method = (GET); x-webobjects-adaptor-version =
("Apache"); accept-language = (en-us,en;q=0.5); script_filename =
(/cgi-bin/WebObjects/artbot.woa/wa/gallerySubmitPage); server_port =
(80); } content-length=0 cookies=null userInfo=null>) method=GET
uri=/cgi-bin/WebObjects/artbot.woa/1/wa/gallerySubmitPage?galleryID=198
defaultFormValueEncoding=ISO8859_1
formValueEncodingDetectionEnabled=NO formValueEncoding=ISO8859_1
formValues={galleryID = ("198"); } >
i'm getting the following error -
[2006-02-19 21:04:42 CST] <WorkerThread4>
<com.webobjects.appserver._private.WODirectActionRequestHandler>:
Exception while handling action named "gallerySubmitPage" on action
class "null" :com.webobjects.foundation.NSForwardException
[java.lang.NoSuchMethodError] null
[2006-02-19 21:04:42 CST] <WorkerThread4>
com.webobjects.foundation.NSForwardException for
java.lang.NoSuchMethodError:
com.webobjects.foundation.NSDictionary.containsKey(Ljava/lang/Object;)Z
at gallerySubmitForm.<init>(gallerySubmitForm.java:54)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
at com.webobjects.foundation._NSUtilities.instantiateObject(_NSUtilities.java:529)
at com.webobjects.appserver._private.WOComponentDefinition._componentInstanceInContext(WOComponentDefinition.java:487)
at com.webobjects.appserver._private.WOComponentDefinition.componentInstanceInContext(WOComponentDefinition.java:593)
at com.webobjects.appserver._private.WOComponentReference._pushComponentInContext(WOComponentReference.java:79)
at com.webobjects.appserver._private.WOComponentReference.appendToResponse(WOComponentReference.java:119)
at com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse(WODynamicGroup.java:121)
at com.webobjects.appserver._private.WOConditional.appendToResponse(WOConditional.java:70)
at com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse(WODynamicGroup.java:121)
at com.webobjects.appserver._private.WODynamicGroup.appendToResponse(WODynamicGroup.java:130)
at com.webobjects.appserver._private.WOComponentContent.appendToResponse(WOComponentContent.java:43)
at com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse(WODynamicGroup.java:121)
at com.webobjects.appserver._private.WOConditional.appendToResponse(WOConditional.java:70)
at com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse(WODynamicGroup.java:121)
at com.webobjects.appserver._private.WODynamicGroup.appendToResponse(WODynamicGroup.java:130)
at com.webobjects.appserver.WOComponent.appendToResponse(WOComponent.java:997)
at com.webobjects.appserver._private.WOComponentReference.appendToResponse(WOComponentReference.java:120)
at com.webobjects.appserver._private.WODynamicGroup.appendChildrenToResponse(WODynamicGroup.java:121)
at com.webobjects.appserver._private.WODynamicGroup.appendToResponse(WODynamicGroup.java:130)
at com.webobjects.appserver.WOComponent.appendToResponse(WOComponent.java:997)
at com.webobjects.appserver.WOComponent._appendPageToResponse(WOComponent.java:1393)
at com.webobjects.appserver.WOComponent._generateResponseInContext(WOComponent.java:1361)
at com.webobjects.appserver.WOComponent.generateResponse(WOComponent.java:1356)
at com.webobjects.appserver._private.WOActionRequestHandler._handleRequest(WOActionRequestHandler.java:259)
at com.webobjects.appserver._private.WOActionRequestHandler.handleRequest(WOActionRequestHandler.java:142)
at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1244)
at Application.dispatchRequest(Application.java:55)
at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:167)
at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:248)
at java.lang.Thread.run(Thread.java:534)
---
I'm quite confused as to why I'm getting an error when i attempt to
check for a key value in an NSDictionary. This only happens when I
deploy, it doesn't happen locally. I'm running WO 5.3.1 with MySQL 5
deploying to linux.
any ideas?
many thanks,
matt