:D In my case, I forgot to assign a value in my uploadFinished() method which threw a null pointer exception. I don't have an uploadFormID binding on my form, so it must be something inside the uploader component. Anyway, I fix the NPE and now I'm getting a validation exception causing the same problem... sheeesh :)
Darian, try sticking a catch block between the try and finally in ERXWOForm and log out the exception you get there before the finally block is allowed to execute. You'll find your real error. Ramsey On Dec 16, 2011, at 3:27 PM, John & Kim Larson wrote: > Thanks for writing. It was a compound problem. You're right on though as to > what happened. When handling the file I didn't get the file because of an > encoding issue. I didn't catch it at the right spot, so I got this exception > first. Then when I fixed the encoding issue I got burned because I was using > java aim on OpenJDK for the first time. Another exception! Then I encrypted a > value using a long cypher key without the unlimited security policy > installed!! Aargh again! > > Abort, Retry, Fail. > > John > > Sent from my iPhone > > On Dec 16, 2011, at 3:15 PM, Ramsey Gurley <rgur...@smarthealth.com> wrote: > >> >> On Dec 16, 2011, at 2:13 PM, Ramsey Gurley wrote: >> >>> This looks suspiciously familiar to Darian DeFalco's issue a couple of days >>> ago. >>> >>> I don't think this is your real error. Look at the stack trace. ERXWOForm >>> 230 is inside a finally block. >>> >>> Something threw an exception in the try block, probably during >>> super.invokeAction(). Once that happened, the current component is now >>> AjaxFileUpload >> >> Oops. I meant the AjaxProgressBar >> >>> and ERXWOForm is assuming the form is the current component when it tries >>> to clear the form name. >>> >>> As a result, it calls the uploadFormID binding on your ERXWOForm against >>> the current component which is the AjaxFileUpload and you see this >>> exception instead. >>> >>> Every time I've encountered this, the real error is up above this one in >>> the console log. This misdirection annoys the crap out of me personally, >>> but not so much that I've taken the time to figure out how to fix it :-) >>> >>> If you aren't getting any other errors in your log, comment out the >>> uploadFormID binding on your WOForm and see what you get when it fails >>> again. >>> >>> Ramsey >>> >>> >>> >>> >>> On Dec 16, 2011, at 10:03 AM, John & Kim Larson wrote: >>> >>>> I have an AjaxFileUpload on a page that works fine in development but not >>>> in deployment. When I upload a file I get an UnknownKeyException on the >>>> AjaxProgressBar inside the AjaxFileUpload ?? >>>> >>>> My bindings are >>>> UploadPicture: AjaxFileUpload { >>>> data = uploadedFile; >>>> filePath = fileName; >>>> succeededAction = savePhoto; >>>> uploadLabel = "Upload photo"; >>>> finishedFunction = "img_previewUpdate();"; >>>> progressBarBeforeStart = true; >>>> refreshTime = 1000; >>>> } >>>> >>>> This is the stack trace: >>>> >>>> "URL" = >>>> "/cgi-bin/WebObjects/MyApp.woa/4/ajax/6.0.9.1.2.9?_u=_0ProgressBar&1324052204904"; >>>> } >>>> >>>> com.webobjects.foundation.NSKeyValueCoding$UnknownKeyException: >>>> [<er.ajax.AjaxProgressBar name: er.ajax.AjaxProgressBar subcomponents: >>>> null > valueForKey()]: lookup of unknown key: 'uploadFormID'. >>>> The WOComponent er.ajax.AjaxProgressBar does not have an instance variable >>>> of the name uploadFormID or _uploadFormID, nor a method of the name >>>> uploadFormID, _uploadFormID, getUploadFormID, or _getUploadFormID >>>> at >>>> com.webobjects.appserver.WOComponent.handleQueryWithUnboundKey(WOComponent.java:1764) >>>> at >>>> com.webobjects.foundation.NSKeyValueCoding$Utility.handleQueryWithUnboundKey(NSKeyValueCoding.java:494) >>>> at >>>> com.webobjects.foundation.NSKeyValueCoding$_KeyBinding.valueInObject(NSKeyValueCoding.java:894) >>>> at >>>> com.webobjects.foundation.NSKeyValueCoding$DefaultImplementation.valueForKey(NSKeyValueCoding.java:1324) >>>> at >>>> com.webobjects.appserver.WOComponent.valueForKey(WOComponent.java:1736) >>>> at >>>> com.webobjects.foundation.NSKeyValueCoding$Utility.valueForKey(NSKeyValueCoding.java:447) >>>> at >>>> com.webobjects.foundation.NSKeyValueCodingAdditions$DefaultImplementation.valueForKeyPath(NSKeyValueCodingAdditions.java:212) >>>> at >>>> com.webobjects.appserver.WOComponent.valueForKeyPath(WOComponent.java:1804) >>>> at >>>> com.webobjects.appserver._private.WOKeyValueAssociation.valueInComponent(WOKeyValueAssociation.java:50) >>>> at >>>> er.extensions.components._private.ERXWOForm._formName(ERXWOForm.java:296) >>>> at >>>> er.extensions.components._private.ERXWOForm._clearFormName(ERXWOForm.java:338) >>>> at >>>> er.extensions.components._private.ERXWOForm.invokeAction(ERXWOForm.java:230) >>>> at >>>> com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) >>>> at >>>> com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) >>>> at >>>> com.webobjects.appserver.WOComponent.invokeAction(WOComponent.java:1079) >>>> at >>>> com.webobjects.appserver._private.WOComponentReference.invokeAction(WOComponentReference.java:127) >>>> at >>>> com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) >>>> at >>>> com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) >>>> at >>>> com.webobjects.appserver._private.WOComponentContent.invokeAction(WOComponentContent.java:38) >>>> >>>> This is what the generated HTML looks like (I took out some whitespace): >>>> <iframe name="_0UploadFrame" >>>> src="/cgi-bin/WebObjects/MyApp.woa/wa/ERXDirectAction/empty" width="0" >>>> height="0" border="0" style="border: none;"></iframe> >>>> >>>> <form name="_0Form" enctype="multipart/form-data" method="post" >>>> target="_0UploadFrame" action="/cgi-bin/WebObjects/MyApp.woa/upload"> >>>> <input name="wosid" type="hidden" value="7f5NZMw8JeYq0B8lMUh6tw" /> >>>> <input name="id" type="hidden" value="_0" /> >>>> <table> >>>> <tr class="upload_row"> >>>> <td class="input_col"><input name="uploadedFile" >>>> type="file" /></td> >>>> <td class="action_col"><input type="button" >>>> onclick="AUL.update('_0ProgressBar', {}, '6.0.9.3.5.2.7');" value="Upload >>>> photo"></input></td> >>>> </tr> >>>> >>>> <tr class="progress_row"> >>>> <td colspan = "2"> >>>> <div id="_0ProgressBar" >>>> updateUrl="/cgi-bin/WebObjects/MyApp.woa/ajax/6.0.9.3.5.2.9"> >>>> </div><script>AUC.register('_0ProgressBar');</script> >>>> </td> >>>> </tr> >>>> </table> >>>> </form> >>>> >>>> I've used this many times before, and everything is fine. Heck, it's fine >>>> in development. Everything else works fine in deployment. I'm on EC2 btw >>>> with 5.4.3. It's like the context for the ERXWOForm puts it inside the >>>> AjaxProgressBar when it should be inside the AjaxFileUpload. ??? I use >>>> other Ajax stuff all over and it is fine, so I don't think it is a problem >>>> with the handler or something bigger. >>>> >>>> Thanks for any help, >>>> John >>>> >>>> _______________________________________________ >>>> 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/rgurley%40smarthealth.com >>>> >>>> This email sent to rgur...@smarthealth.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