Re: Wonder AjaxSlider
On Jan 13, 2009, at 9:35 PM, John Ours wrote: On Jan 14, 2009, at 12:11 AM, Chuck Hill wrote: On Jan 12, 2009, at 7:24 AM, John Ours wrote: Hi All, Quick question about the Ajax Slider component in Wonder. What is the rationale behind the OnChangeServer binding? The behavior seems to be that if the binding is set - regardless of its value - an ajax post occurs to set the value. A quick peek at the source confirms that's what's going on...and the value of the binding is being ignored. Was this the intended behavior and I'm missing something? Or would this binding be better expressed as a boolean? The binding is supposed to return a JavaScript snippet to be run in the browser after the slider changes. Thanks Chuck. How does OnChangeServer differ from OnChange then? onChange is static JavaScript, it does not make a trip to the server. onChangeServer sends the current slider position/value back to the server and has the application dynamically generate the JavaScript to return to and execute on the client. In the SliderExample from the Wonder project, they use OnChange and OnSlide for the client javascript, like this: AjaxSlider1: AjaxSlider { orientation = "horizontal"; value = 10; minimum = 0; maximum = 10; onSlide = "function(v) {$('value').innerHTML = v}"; onChange = "function(v) {$('value').innerHTML = v}"; } In particular I'm curious about this piece of code (and a similar one for onSlideServer) from AjaxSlider.java: if(hasBinding("onChangeServer")) { String parent = (String) valueForBinding("onChange"); options.setObjectForKey("function(v) {new Ajax.Request('"+ AjaxUtils.ajaxComponentActionUrl(context()) +"', {parameters: '"+context().elementID()+"=' + v + '&ajaxSlideTrigger=onChange'})" +(parent != null ? "; var parentFunction = " + parent + "; parentFunction(v);" : "") +"}", "onChange"); } else { new AjaxOption("onChange", AjaxOption.SCRIPT).addToDictionary(this, options); } Does that code make more sense with the above explanation? 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: Wonder AjaxSlider
On Jan 14, 2009, at 12:11 AM, Chuck Hill wrote: On Jan 12, 2009, at 7:24 AM, John Ours wrote: Hi All, Quick question about the Ajax Slider component in Wonder. What is the rationale behind the OnChangeServer binding? The behavior seems to be that if the binding is set - regardless of its value - an ajax post occurs to set the value. A quick peek at the source confirms that's what's going on...and the value of the binding is being ignored. Was this the intended behavior and I'm missing something? Or would this binding be better expressed as a boolean? The binding is supposed to return a JavaScript snippet to be run in the browser after the slider changes. Thanks Chuck. How does OnChangeServer differ from OnChange then? In the SliderExample from the Wonder project, they use OnChange and OnSlide for the client javascript, like this: AjaxSlider1: AjaxSlider { orientation = "horizontal"; value = 10; minimum = 0; maximum = 10; onSlide = "function(v) {$('value').innerHTML = v}"; onChange = "function(v) {$('value').innerHTML = v}"; } In particular I'm curious about this piece of code (and a similar one for onSlideServer) from AjaxSlider.java: if(hasBinding("onChangeServer")) { String parent = (String) valueForBinding("onChange"); options.setObjectForKey("function(v) {new Ajax.Request('"+ AjaxUtils.ajaxComponentActionUrl(context()) +"', {parameters: '"+context().elementID()+"=' + v + '&ajaxSlideTrigger=onChange'})" +(parent != null ? "; var parentFunction = " + parent + "; parentFunction(v);" : "") +"}", "onChange"); } else { new AjaxOption("onChange", AjaxOption.SCRIPT).addToDictionary(this, options); } ___ 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: Wonder AjaxSlider
On Jan 12, 2009, at 7:24 AM, John Ours wrote: Hi All, Quick question about the Ajax Slider component in Wonder. What is the rationale behind the OnChangeServer binding? The behavior seems to be that if the binding is set - regardless of its value - an ajax post occurs to set the value. A quick peek at the source confirms that's what's going on...and the value of the binding is being ignored. Was this the intended behavior and I'm missing something? Or would this binding be better expressed as a boolean? The binding is supposed to return a JavaScript snippet to be run in the browser after the slider changes. 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: problem opening projectbuilder
On Jan 10, 2009, at 8:14 AM, katia vanhauwaert wrote: Hi, We bought the webobjects 5.2 program, and there seems to be a problem with this program. I asked a technical agent at Apple for support but they dont support this software. This was the only option available to get some kind of help. The problem we have with the program is that when we want to start working with the project builder application, after filling in everything that is asked, we should get a window opening up to start working on a project, well that window doesnt open. We have already reinstalled the program again and the problem wasnt solved. We have also done all the updates that needed to be done. I hope you will be able to provide a solution. Several system frameworks that were in earlier versions of OS X are no longer in 10.5. WebObjects 5.2 is old enough that I would be surprised if the tools ran correctly under Leopard. 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: Can't get locking exception
On Jan 10, 2009, at 6:13 AM, Mike Schrag wrote: What could be causing this? No, the two ec's in your example will properly update (you're not holding an ec lock across requests, so the first EC is causing the second EC to update). The easiest way to force an optimistic lock is to go into your edit form on an EO, and then update the database manually with SQL commands in the background. This will cause your snapshot cache to be out of sync. The only way to get it to happen INSIDE your app would be to have two EC's attempt to change the value while both are locked. Or to have each EC created using a different EOF stack. EOF won't sync across stacks within the same instance (though doubtless Wonder has something to provide this if desired). 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: split install issue with 5.4.3
On 14/01/2009, at 8:00 AM, Lachlan Deck wrote: Sure. I'm just suggesting to double check the end of the app script i.e., $ tail YourApp.woa/YourApp Hi Lachlan Thanks for your interest. The last lines of the launch script look good. I also tried setting -WOFrameworksBaseURL in JavaMonitor and WOFrameworksBaseURL in the Properties file, before I worked out it was an Apple bug in WebObjects 5.4.3 tail WeboTest.woa/WeboTest # # Launch the application. # echo Launching ${SCRIPT_NAME}.woa ... echo ${JAVA_EXECUTABLE} ${JAVA_EXECUTABLE_ARGS} -classpath WOBootstrap.jar com.webobjects._bootstrap.WOBootstrap $ {COMMAND_LINE_ARGS} -WOFrameworksBaseURL /WebObjects/WeboTest.woa/ Frameworks eval exec ${JAVA_EXECUTABLE} ${JAVA_EXECUTABLE_ARGS} -classpath WOBootstrap.jar com.webobjects._bootstrap.WOBootstrap $ {COMMAND_LINE_ARGS} -WOFrameworksBaseURL /WebObjects/WeboTest.woa/ Frameworks Cheers Tim and check if it's adding the frameworkbase url arg. If not then everything you've said still holds. 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: WebObjects jar frameworks and classpaths
On Jan 8, 2009, at 8:14 AM, John Pollard wrote: List, I have now updated my build.xml file from a new dummy application created using the latest WOLips as advised in the WOLips blog for the new hotness. I also did this for my WO framework that contains the jars I need to link in to, using a new dummy framework. Now I get sight of my problem a step earlier, when trying to install (WOLips Ant Tools, Install), where I see: /Users/john/EclipseWork/workspace/MPMall/Sources/mpMall/ SyndicationFeedBuilder.java:15: package com.sun.syndication.feed.synd does not exist [wocompile] import com.sun.syndication.feed.synd.*; ...[snip] Though there are still no errors showing in my actual code, this only shows up when I try to install. If this package can't be found, why doesn't it show in my source file? When I look at the Java Build Path of my application after upgrading to "hotness", I see that things that were previously listed as dependent Projects in the Projects tab I confess that I have little idea what the contents of that tab do or are for. Mostly, I have nothing there. are now shown in the Libraries tab as things like "MPServerEOs Framework". So what is now the suggested way of adding dependent frameworks? Go to the Libraries tab, click Add Library, select WebObjects Frameworks, select your framework. You probably need to install it before doing this, I forget. I can still do so in the Projects tab, but can't see how to confirm with what is now showing in the Libraries tab; I can't see how to add my framework that contains the jars and have it appear like the others now do as "MyJarFramework Framework". Perhaps if I can solve this it will remove my compile problem as the framework in question contains the jar that contains the missing com.sun.syndication.feed.synd package in the error message. I believe that it will fix your problems. Chuck On 8 Jan 2009, at 14:01, John Pollard wrote: Lachlan, Many thanks for your reply. I have updated to the latest Eclipse 3.4.1 and the latest WOLips nightly, but that does not resolve this issue. I am also posting to the rome mailing list to try from that angle, but a nightly build of the latest rome jar didn't help either. I also tried adding the two jars to my application directly, cutting out the framework, but got the same outcome. The rome jar only depends on the jdom dar, so shouldn't be too complicated. I will post back if I eventually find the reason for this. John On 6 Jan 2009, at 23:31, Lachlan Deck wrote: Hi John, On 07/01/2009, at 12:18 AM, John Pollard wrote: A bit off topic, but I am struggling to make sense of this. Simply put I want to understand why I can't put a couple of jars into a WO framework and have the code still work as it does when the same jars are in /Library/Java/Extensions. Not really off topic. This is a classpath issue. Created a new WebObjects framework. Manually moved two jar files (rome-1.0RC1.jar and jdom.jar) out of /Library/Java/Extensions into the new framework project's / Libraries sub folder Good. In Java Build Path properties, Libraries tab, Add Jars.. to add them in, then in the Order and Export tab tick them Good. In the app project, add the new framework as a dependency Eclipse shows no compile time problems, so why the runtime error: [java.lang.NoClassDefFoundError] com/sun/syndication/io/ ModuleGenerator I will be very grateful for any pointers to help me solve this one; in particular why/when Eclipse is happy at compile time, but actually the classes are not found when run. Are you running WOLips nightly and Eclipse 3.4.x? If not you might need to update WOLips/Eclipse to get the fix that I think went in late November. The class that is not found is definitely in the rome jar. Search the archives for Transitive. It's a transitive dependency problem. 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/john%40pollardweb.com This email sent to j...@pollardweb.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/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 a
Re: A relationship in a converted model now throws an exception on save
On Jan 6, 2009, at 3:31 PM, David Holt wrote: An application that I have converted from XCode to Eclipse is throwing an error when I save a new document EO. I went back in and looked at the old version of the model in the XCode app and the relationship is marked as to-one optional. The entity modeler version is mandatory to-one and if I try to set it back to optional, it gives me a warning: "The relationship documentContent is optional but the attribute id does not allow nulls". What do I need to do to model this correctly and/or get rid of the error on save? Mark the id attribute as Allows Null and then make the relationship optional. Chuck David Jan 06 08:54:33 CARRFS_P2P[49429] (ERXNSLogLog4jBridge.java:43) WARN NSLog - : Exception occurred while handling request: ; propertyKey: documentContent; type: MandatoryToOneRelationshipException; additionalExceptions: ()> [2009-01-06 08:54:33 PST] ; propertyKey: documentContent; type: MandatoryToOneRelationshipException; additionalExceptions: ()> at com .webobjects .eoaccess.EORelationship.validateValue(EORelationship.java:1805) at com .webobjects .eoaccess .EOEntityClassDescription .validateValueForKey(EOEntityClassDescription.java:443) at er .extensions .eof .ERXEntityClassDescription .validateValueForKey(ERXEntityClassDescription.java:807) at com .webobjects .eocontrol.EOCustomObject.validateValueForKey(EOCustomObject.java: 1339) at er .extensions .eof.ERXGenericRecord.validateValueForKey(ERXGenericRecord.java:1079) at com .webobjects .eocontrol.EOCustomObject.validateForSave(EOCustomObject.java:1411) at er .extensions .eof.ERXGenericRecord.validateForSave(ERXGenericRecord.java:1125) at com .webobjects .eocontrol.EOCustomObject.validateForInsert(EOCustomObject.java:1473) at er .extensions .eof.ERXGenericRecord.validateForInsert(ERXGenericRecord.java:1148) at com .webobjects .eocontrol.EOEditingContext.validateTable(EOEditingContext.java:2249) at com .webobjects .eocontrol .EOEditingContext.validateChangesForSave(EOEditingContext.java:3029) at com .webobjects .eocontrol .EOEditingContext._prepareForPushChanges(EOEditingContext.java:3283) at com .webobjects .eocontrol.EOEditingContext.saveChanges(EOEditingContext.java:3213) at er.extensions.eof.ERXEC._saveChanges(ERXEC.java:981) at er.extensions.eof.ERXEC.saveChanges(ERXEC.java:903) at ca .cscw .carrfs_p2p .AttachMeetingDocument .toAttachMeetingDocument(AttachMeetingDocument.java:130) 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:585) at com.webobjects.foundation.NSKeyValueCoding$ValueAccessor $1.methodValue(NSKeyValueCoding.java:684) at com.webobjects.foundation.NSKeyValueCoding $_MethodBinding.valueInObject(NSKeyValueCoding.java:1160) at com.webobjects.foundation.NSKeyValueCoding $DefaultImplementation.valueForKey(NSKeyValueCoding.java:1268) at com.webobjects.appserver.WOComponent.valueForKey(WOComponent.java: 1539) at com.webobjects.foundation.NSKeyValueCoding $Utility.valueForKey(NSKeyValueCoding.java:498) at com.webobjects.foundation.NSKeyValueCodingAdditions $ DefaultImplementation.valueForKeyPath(NSKeyValueCodingAdditions.java: 212) at com .webobjects.appserver.WOComponent.valueForKeyPath(WOComponent.java: 1600) at com .webobjects .appserver ._private .WOKeyValueAssociation.valueInComponent(WOKeyValueAssociation.java:46) at com .webobjects.appserver.WOComponent.valueForBinding(WOComponent.java: 735) at com .uploadsuite .NBUploadWithProgress.finalAction(NBUploadWithProgress.java:156) 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:585) at com.webobjects.foundation.NSKeyValueCoding$ValueAccessor $1.methodValue(NSKeyValueCoding.java:684) at com.webobjects.foundation.NSKeyValueCoding $_MethodBinding.valueInObject(NSKeyValueCoding.java:1160) at com.webobjects.foundation.NSKeyValueCoding $DefaultImplementation.valueForKey(NSKeyValueCoding.java:1268) at com.webobjects.appserver.WOComponent.valueForKey(WOComponent.java: 1539) at com.webobjects.foundation.NSKeyValueCoding $Utility.valueForKey(NSKeyValueCoding.java:498) at com.webobjects.foundation.NSKeyValueCodingAdditions $ DefaultImplementation.valueForKeyPath(NSKeyValueCodingAdditions.java: 212) at com .webobjects.appserver.WOComponent.valueForKeyPath(WOComponent.java: 1600) at com .webobjects .appserver ._private .WOKeyValueAss
Re: WebObjects jar frameworks and classpaths
On Jan 6, 2009, at 5:18 AM, John Pollard wrote: Hi List, A bit off topic, but I am struggling to make sense of this. Simply put I want to understand why I can't put a couple of jars into a WO framework and have the code still work as it does when the same jars are in /Library/Java/Extensions. That should work unless the jars are extending the core Java functionality. In that case you might run into classloader permission problems. This does not sound like you situation to me. So here is what I did: Created a new WebObjects framework. Manually moved two jar files (rome-1.0RC1.jar and jdom.jar) out of / Library/Java/Extensions into the new framework project's /Libraries sub folder WOLips stable or New Hotness (nightly)? In Java Build Path properties, Libraries tab, Add Jars.. to add them in, then in the Order and Export tab tick them In the app project, add the new framework as a dependency Eclipse shows no compile time problems, so why the runtime error: [java.lang.NoClassDefFoundError] com/sun/syndication/io/ ModuleGenerator I will be very grateful for any pointers to help me solve this one; in particular why/when Eclipse is happy at compile time, but actually the classes are not found when run. The class that is not found is definitely in the rome jar. This should work if you are using New Hotness. The runtime classpath is controlled by the Launch Config. If you are using New Hotness, you might want to delete your current run config and create a new one. That may fix the problem. 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: EO Not deleting
On Jan 2, 2009, at 4:00 PM, Joe Moreno wrote: I've made this mistake before and I keep forgetting... I forgot to remove the EO from it's relationship before deleting it. Once I did that, the EOs were deleted as expected. With the right delete rules, you should only need to remove it from the relationship. I'm not sure why EOF would sometimes delete the EO and sometimes it didn't - but, unhooking it before the delete solved the problem is all cases. I am not sure either. Chuck On Dec 31, 2008, at 17:33:12, Joe Moreno wrote: Happy New Year! I believe I've seen this issue before, but I don't recall what I'm doing wrong... I have an EO deleting itself from an editing context, but, sometimes, only the EO's foreign key is getting set to NULL, which has the same effect of deleting the EO. Other times, the row in the database actually gets deleted. The SQL going to the database sometimes is DELETE and sometimes it's: UPDATE DEPARTMENT SET OID_EMPOYEE = NULL WHERE OID = ?... Did I cross EC or something else bad? 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: Determining which bundle an EOModel comes from
How about checking if model.pathURL().startsWith(aBundle.bundlePathURL()). With aBundle being one of NSBundle.allBundles()? Chuck On Jan 2, 2009, at 4:50 AM, Hugi Thordarson wrote: Hi all, happy new year! Does anyone here have a reliable way to find what bundle a loaded EOModel is in? I'm currently using the little bugger below, but obviously it will fail if the model does not contain any entites or if the entities are using EOGenericRecord as the class (rare, but happens). /** * Attempts to resolve which framework/bundle an EOModel belongs to. */ public static String bundleNameForEOModel( EOModel model ) { NSArray entities = model.entities(); if( entities == null || entities.count() == 0 ) return null; EOEntity entity = entities.lastObject(); String className = entity.className(); try { Class clazz = Class.forName( className ); return NSBundle.bundleForClass( clazz ).name(); } catch( ClassNotFoundException e ) { logger.error( "No bundle found for class: " + className, e ); return null; } } Cheers, - Hugi // Hugi Thordarson // http://hugi.karlmenn.is/ ___ 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: Problem File Upload WO 5.4 WONDER 5.0.0.8764
Hi Sergio, On Dec 31, 2008, at 9:23 AM, Sergio Sánchez Maffet wrote: Chuck, finally I got it running. Thanks a lot for your help. The language is set to German and the default form value encoding for German is iso8859-1 in ERXMessageEncoding. That seems a little odd. That class is pretty old, so this might be from long ago. After setting the encoding with setDefaultEncodingForAllLanguages to UTF-8, I got it running. Dont know if this is some kind of a bug, the encoding should be set to the request encoding and this is/was UTF-8... I have also noticed, that this is a general problem... not only related to file uploads... Do I have a miss understanding here? You _might_ be missing something from your Properties file. I don't do much with this part of Wonder. I can't think of a good reason to have a web app that is not UTF-8. You might want to ask this on the Wonder list. Chuck On 16.12.2008, at 20:05, Chuck Hill wrote: On Dec 15, 2008, at 5:31 PM, Sergio Sánchez Maffet wrote: Hi all, I have some problems regarding file uploads with WO 5.4.3. When I submit the form, my action method is called, but the form values get lost some where in the request processing. The page is very simple, only a text field and a file upload inside a form and a submit button. Every thing is binded correctly and it has worked with WO 5.3. I'm using WONDER 5.0.0.8764 for WO 5.4. The application is running in direct connect mode, and session id's are stored in a cookies... dont know if this has some importance. The problem mentioned by William Hatch (Subject: WOFileUpload and 5.4, from 10/30/08) seems to be similar, but there is was solution posted. As Chuck mentioned, form values can get lost when the encoding changes during the request, this seems to happen in my case, but I do not understand why? Here is a log of the request in dispatchRequest() and in the same thread later in takeValueFromRequest(): Dec 16 02:01:46 MyApplication[3004] DEBUG NSLog - dispatchRequest: (headers={accept=[text/xml,application/xml,application/xhtml +xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5], accept- encoding=[gzip, deflate], accept-language=[en-us], connection=[keep-alive], content-length=[851656], content- type=[multipart/form-data; boundary= WebKitFormBoundaryoAlLNzXKfp0pQVgV], cookie=[wosid=JqNtBIQBjJoJDvcBQt4bAw; woinst=-1], host=[192.168.4.35:3004], referer=[http://192.168.4.35:3004/cgi-bin/WebObjects/MyApplication.woa/wo/6.5 ], user-agent=[Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_5; en-us) AppleWebKit/525.27.1 (KHTML, like Gecko) Version/3.2.1 Safari/525.27.1]} content-length=851656 cookies=null userInfo={} storePageInBacktrackCache=true >) method=POST uri=/cgi-bin/ WebObjects/MyApplication.woa/wo/7.5 defaultFormValueEncoding=UTF-8 formValueEncodingDetectionEnabled=NO formValueEncoding=UTF-8 formValues={5.1 = ("Test 1"); 5.3.mimetype = ("image/jpeg"); 5.3.filename = ("DSC00033.JPG"); 5.3 = (com.webobjects.appserver._private.WOInputStreamData (stream com.webobjects.appserver.WOMultipartIterator$WOFormData $_woformdatainputstr...@ee68d1 of length 0), has NOT been accessed>); } > Dec 16 02:01:46 MyApplication[3004] DEBUG NSLog - takeValuesFromRequest: (headers={accept=[text/xml,application/xml,application/xhtml +xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5], accept- encoding=[gzip, deflate], accept-language=[en-us], connection=[keep-alive], content-length=[851656], content- type=[multipart/form-data; boundary= WebKitFormBoundaryoAlLNzXKfp0pQVgV], cookie=[wosid=JqNtBIQBjJoJDvcBQt4bAw; woinst=-1], host=[192.168.4.35:3004], original_context_id=[7], referer=[http://192.168.4.35:3004/cgi-bin/WebObjects/MyApplication.woa/wo/6.5 ], user-agent=[Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_5; en-us) AppleWebKit/525.27.1 (KHTML, like Gecko) Version/3.2.1 Safari/525.27.1]} content-length=0 cookies=null userInfo={} storePageInBacktrackCache=true >) method=POST uri=/cgi-bin/ WebObjects/MyApplication.woa/wo/7.5 defaultFormValueEncoding=ISO8859_1 formValueEncodingDetectionEnabled=NO formValueEncoding=ISO8859_1 formValues={} > I have tried to set the form value encoding to UTF-8 in the dispatchRequest() method with no luck, I also tried WOFileUpload and ERXWOFileUpload. Any clues or ideas to fix it? Sergio, This is what I would do to track this down: 1. Create a subclass of ERXRequest and implement these methods: setDefaultFormValueEncoding(String value) setFormValueEncoding(String value) to be like: public void setDefaultFormValueEncoding(String value) { NSLog.out.appendln(new RuntimeException("set to " + value)); super.setDefaultFormValueEncoding(value); } 2. In your Application class, implement _createRequest as protected WORequest _createRequest(String aMethod, String aURL, String anHTTPVersion, NSDictionary someHeaders, NSData aContent, NSDi
Re: split install issue with 5.4.3
On 13/01/2009, at 7:30 PM, D Tim Cummings wrote: On 13/01/2009, at 4:38 PM, Lachlan Deck wrote: On 13/01/2009, at 11:14 AM, D Tim Cummings wrote: Yes, bug radar 6487590 This may, of course, not be a bug of Apple's but with the final build. Check the executable script for your app. i.e., $ less YourApp.woa/YourApp The last line of mine has this: eval exec ${JAVA_EXECUTABLE} ${JAVA_EXECUTABLE_ARGS} -classpath WOBootstrap.jar com.webobjects._bootstrap.WOBootstrap $ {COMMAND_LINE_ARGS} -WOFrameworksBaseURL /WebObjects/MyApp.woa/ Contents/Frameworks i.e., the WOFrameworksBaseURL is specifically getting set (whereas in the past this used to not be the case). Now I'm building with maven (using the woproject-maven plugin) but it's highly possible that seeing as it shares some functionality with woproject ant stuff that this is also happening for you for embedded builds. If yours also has this - then this *is* the problem. That's why your properties are getting ignored - because the first property wins. This is definitely an Apple bug. It doesn't occur in WebObjects 5.3.3 but does occur in WebObjects 5.4.3. Are you deploying using WebObjects 5.4.3 in your apps which use WOFrameworksBaseURL? I was seeing this for 5.3.3 - not because of WO but because of the woproject (maven plugin at least) setting the WOFrameworkBaseURL in the app script. Below is what I already posted to the WebObjects deploy mailing list I saw that yes. which shows that when you first call WOApplication.frameworksBaseURL() it actually changes the value from whatever you have set it, to /WebObjects/Frameworks. This is particularly dangerous in a deploy situation because you think it is using the latest ajax scripts from your embedded frameworks in your split install, but in fact it is using some old ajax javascript that happened to be sitting /Library/WebServer/Documents/WebObjects/ Frameworks. Sure. I'm just suggesting to double check the end of the app script i.e., $ tail YourApp.woa/YourApp and check if it's adding the frameworkbase url arg. If not then everything you've said still holds. 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: OpenBase & WebObjects for scaling
Andrew, Another thing that's impressed me with OpenBase is the clustering failover. I doubt many people have used this feature. Any SQL written to any database in the cluster is automatically propagated to other OpenBase databases in that cluster within five seconds without any primary key collisions. Additionally, if the master database fails your WebObjects app will automatically begin using another database in the cluster (no code needed to handle this case). Once the master database recovers, its SQL, from the other databases, is updated and it resumes handling the WO app's SQL. Ciao, Joe On Dec 30, 2008, at 00:39:27, Andrew Lindesay wrote: Hello Joe; I think this problem may be slightly different as it is not necessarily to do with PK's. My understanding is that "OpenBasePKPlugIn" is there to get EOF to use the OPENBASE PK- generation scheme rather than EO_PK_TABLE. cheers. I think I ran into the exact problem you mentioned about the deadlock in OpenBase 10 using the default primary key generation. Scott Keith advised me to compile the WO apps against the OpenBasePKPlugin.framework which uses the OpenBaseJDBC.jar and, even under heavy load, I've never had a problem using OB 10 with the plugin. I just had to add a single line to my Application.java: JDBCPlugIn .setPlugInNameForSubprotocol ("com.webobjects.jdbcadaptor.OpenBasePKPlugIn", "openbase"); ___ 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: Bug ID 6342679: NSTimestamp Happy New Year Bug
Bardi, OK - it took me all of 10 minutes to solve this. 1. You choose Atlantic/Reykjavik, not GMT, like we suggested. 2. In 1969, Iceland stopped respecting Daylight Savings Time: http://www.timeanddate.com/worldclock/timezone.html?n=211&syear=1960 date in yearFromDate : 1968-01-01 00:00:00 Etc/GMT yearFromDate : 1967 TimeZone:Atlantic/Reykjavik date in yearFromDate : 1969-01-01 00:00:00 Etc/GMT yearFromDate : 1969 If you had chosen GMT, where there's no shifts for daylight savings time, it's always accurate. Ken On Jan 13, 2009, at 12:02 PM, Barði Einarsson wrote: It is a bug: run happyNewYear(1964) output: TimeZone:Atlantic/Reykjavik date in yearFromDate : 1964-01-01 00:00:00 Etc/GMT yearFromDate : 1963 package some.packagename; import java.util.GregorianCalendar; import java.util.TimeZone; import com.webobjects.foundation.NSTimeZone; import com.webobjects.foundation.NSTimestamp; public class HappyNewYear { static { TimeZone.setDefault(TimeZone.getTimeZone("Atlantic/Reykjavik")); NSTimeZone.setDefault(TimeZone.getTimeZone("Atlantic/ Reykjavik")); } public static int yearFromDate(NSTimestamp date) { if (null == date) { return 0; } System.out.println("TimeZone:" + TimeZone.getDefault().getID()); GregorianCalendar cal = new GregorianCalendar(); cal.setTime(date); System.out.println("date in yearFromDate : " + date); int result = cal.get(GregorianCalendar.YEAR); System.out.println("yearFromDate : " + result); return result; } public static void happyNewYear(int year) { NSTimestamp newYear = new NSTimestamp(year, 1, 1, 0, 0, 0, null); yearFromDate(newYear); } } -Original Message- From: Ken Anderson [mailto:kenli...@anderhome.com] Sent: Fri 09-Jan-09 15:23 To: Lachlan Deck Cc: Barði Einarsson; WebObjects-Dev Mailing List List Subject: Re: Bug ID 6342679: NSTimestamp Happy New Year Bug Bardi, I think the most important thing to understand about how dates are moved around is that the value is always GMT based. Timezones are there for convenience... For instance, when you create a new timestamp with a timezone, the timezone is used to adjust the date/time you sent in to GMT and the GMT value is stored. When formatting a date or extracting day/month/ year from GregorianCalendar, the timezone is used WHEN FORMATTING THE RESULT. If you work with these tenets, things will hopefully be easier. Ken On Jan 8, 2009, at 6:54 PM, Lachlan Deck wrote: On 09/01/2009, at 3:10 AM, Ken Anderson wrote: I do exactly what you're doing all the time, and I do not have the issue you're experiencing. One thing I do at the beginning of my WOApplication subclass is this: TimeZone.setDefault(TimeZone.getTimeZone("GMT")); NSTimeZone.setDefault(TimeZone.getTimeZone("GMT")); This will make sure that you're really working in GMT across the board. Can you do the above and try your tests again? Yep. Behaves correctly - no way Yes way :-) NSTimestamp reports a timezone which is not used by GregorianCalendar ?? GregorianCalendar does *not* change its timezone based on the date passed to it. You are responsible for determining that. That's nothing to do with NSTimestamp. This is a difficult bug. Just more a misunderstanding on your part. 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/kenlists%40anderhome.com This email sent to kenli...@anderhome.com Fyrirvari á tölvupósti / e-mail disclaimer http://us.is/Apps/WebObjects/US.woa/wa/dp?id=3776 ___ 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/kenlists%40anderhome.com This email sent to kenli...@anderhome.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
Bug ID 6342679: NSTimestamp Happy New Year Bug
It is a bug: run happyNewYear(1964) output: TimeZone:Atlantic/Reykjavik date in yearFromDate : 1964-01-01 00:00:00 Etc/GMT yearFromDate : 1963 package some.packagename; import java.util.GregorianCalendar; import java.util.TimeZone; import com.webobjects.foundation.NSTimeZone; import com.webobjects.foundation.NSTimestamp; public class HappyNewYear { static { TimeZone.setDefault(TimeZone.getTimeZone("Atlantic/Reykjavik")); NSTimeZone.setDefault(TimeZone.getTimeZone("Atlantic/Reykjavik")); } public static int yearFromDate(NSTimestamp date) { if (null == date) { return 0; } System.out.println("TimeZone:" + TimeZone.getDefault().getID()); GregorianCalendar cal = new GregorianCalendar(); cal.setTime(date); System.out.println("date in yearFromDate : " + date); int result = cal.get(GregorianCalendar.YEAR); System.out.println("yearFromDate : " + result); return result; } public static void happyNewYear(int year) { NSTimestamp newYear = new NSTimestamp(year, 1, 1, 0, 0, 0, null); yearFromDate(newYear); } } -Original Message- From: Ken Anderson [mailto:kenli...@anderhome.com] Sent: Fri 09-Jan-09 15:23 To: Lachlan Deck Cc: Barði Einarsson; WebObjects-Dev Mailing List List Subject: Re: Bug ID 6342679: NSTimestamp Happy New Year Bug Bardi, I think the most important thing to understand about how dates are moved around is that the value is always GMT based. Timezones are there for convenience... For instance, when you create a new timestamp with a timezone, the timezone is used to adjust the date/time you sent in to GMT and the GMT value is stored. When formatting a date or extracting day/month/ year from GregorianCalendar, the timezone is used WHEN FORMATTING THE RESULT. If you work with these tenets, things will hopefully be easier. Ken On Jan 8, 2009, at 6:54 PM, Lachlan Deck wrote: > On 09/01/2009, at 3:10 AM, Ken Anderson wrote: > >> I do exactly what you're doing all the time, and I do not have the >> issue you're experiencing. One thing I do at the beginning of my >> WOApplication subclass is this: >> >> TimeZone.setDefault(TimeZone.getTimeZone("GMT")); >> NSTimeZone.setDefault(TimeZone.getTimeZone("GMT")); >> >> This will make sure that you're really working in GMT across the >> board. Can you do the above and try your tests again? > > Yep. > >>> Behaves correctly - no way > > Yes way :-) > >>> NSTimestamp reports a timezone which is not used by >>> GregorianCalendar ?? > > GregorianCalendar does *not* change its timezone based on the date > passed to it. You are responsible for determining that. That's > nothing to do with NSTimestamp. > >>> This is a difficult bug. > > Just more a misunderstanding on your part. > > 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/kenlists%40anderhome.com > > This email sent to kenli...@anderhome.com Fyrirvari á tölvupósti / e-mail disclaimer http://us.is/Apps/WebObjects/US.woa/wa/dp?id=3776 ___ 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 do I debug this jdbc error?
wo version? wonder/version? did you diff your model? what changed? do any of your changes look suspicious? On Jan 13, 2009, at 7:22 AM, James Cicenia wrote: OK - The old app does write without the exception. It uses the same model, adaptor, etc. The new app crashes upon: currentObject.editingContext().saveChanges(); Thoughts? Thanks James On Jan 13, 2009, at 8:29 AM, Ken Anderson wrote: James, What are you doing when this occurs? Do other operations work? Ken On Jan 13, 2009, at 9:21 AM, James Cicenia wrote: How do I debug this error. I have never seen it before. I am working with SYBASE as the database. Is this the jdbc adaptor issue? thanks James Cicenia [2009-01-13 08:15:51 CST] : Exception occurred while handling request: java.lang.NullPointerException [2009-01-13 08:15:51 CST] java.lang.NullPointerException at com .webobjects .jdbcadaptor.JDBCAdaptor.isValidQualifierType(JDBCAdaptor.java:659) at com .webobjects .eoaccess .EODatabaseContext .isValidQualifierTypeForAttribute(EODatabaseContext.java:5174) at com .webobjects .eoaccess .EODatabaseContext .lockingNonQualifiableAttributes(EODatabaseContext.java:5188) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperationAttributes (EODatabaseContext.java:5374) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperation (EODatabaseContext.java:5548) at com .webobjects .eoaccess.EODatabaseContext.performChanges(EODatabaseContext.java: 6365) at com .webobjects .eocontrol .EOObjectStoreCoordinator .saveChangesInEditingContext(EOObjectStoreCoordinator.java:415) at com .webobjects .eocontrol.EOEditingContext.saveChanges(EOEditingContext.java:3223) at EditPerson.tryToSaveChanges(EditPerson.java:192) at EditPerson.saveAction(EditPerson.java:512) at sun.reflect.NativeMethodAccessorImpl.invoke0(Nat ___ 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/kenlists%40anderhome.com This email sent to kenli...@anderhome.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/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 do I debug this jdbc error?
OK - The old app does write without the exception. It uses the same model, adaptor, etc. The new app crashes upon: currentObject.editingContext().saveChanges(); Thoughts? Thanks James On Jan 13, 2009, at 8:29 AM, Ken Anderson wrote: James, What are you doing when this occurs? Do other operations work? Ken On Jan 13, 2009, at 9:21 AM, James Cicenia wrote: How do I debug this error. I have never seen it before. I am working with SYBASE as the database. Is this the jdbc adaptor issue? thanks James Cicenia [2009-01-13 08:15:51 CST] : Exception occurred while handling request: java.lang.NullPointerException [2009-01-13 08:15:51 CST] java.lang.NullPointerException at com .webobjects .jdbcadaptor.JDBCAdaptor.isValidQualifierType(JDBCAdaptor.java:659) at com .webobjects .eoaccess .EODatabaseContext .isValidQualifierTypeForAttribute(EODatabaseContext.java:5174) at com .webobjects .eoaccess .EODatabaseContext .lockingNonQualifiableAttributes(EODatabaseContext.java:5188) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperationAttributes (EODatabaseContext.java:5374) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperation(EODatabaseContext.java: 5548) at com .webobjects .eoaccess.EODatabaseContext.performChanges(EODatabaseContext.java: 6365) at com .webobjects .eocontrol .EOObjectStoreCoordinator .saveChangesInEditingContext(EOObjectStoreCoordinator.java:415) at com .webobjects .eocontrol.EOEditingContext.saveChanges(EOEditingContext.java:3223) at EditPerson.tryToSaveChanges(EditPerson.java:192) at EditPerson.saveAction(EditPerson.java:512) at sun.reflect.NativeMethodAccessorImpl.invoke0(Nat ___ 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/kenlists%40anderhome.com This email sent to kenli...@anderhome.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: split install issue with 5.4.3
This is definitely an Apple bug. It doesn't occur in WebObjects 5.3.3 but does occur in WebObjects 5.4.3. Yes, it's definitely an Apple bug in 5.4.3 and it affects ApplicationBaseURL also, if you set that. 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: How do I debug this jdbc error?
hmm, Good question. I have only been doing reads and that part seems to be working fine. But, I just took over this project to add some attributes and when I hit save... boom. Maybe it never did work... I will check a prior version and then the drivers. Thanks James On Jan 13, 2009, at 8:29 AM, Ken Anderson wrote: James, What are you doing when this occurs? Do other operations work? Ken On Jan 13, 2009, at 9:21 AM, James Cicenia wrote: How do I debug this error. I have never seen it before. I am working with SYBASE as the database. Is this the jdbc adaptor issue? thanks James Cicenia [2009-01-13 08:15:51 CST] : Exception occurred while handling request: java.lang.NullPointerException [2009-01-13 08:15:51 CST] java.lang.NullPointerException at com .webobjects .jdbcadaptor.JDBCAdaptor.isValidQualifierType(JDBCAdaptor.java:659) at com .webobjects .eoaccess .EODatabaseContext .isValidQualifierTypeForAttribute(EODatabaseContext.java:5174) at com .webobjects .eoaccess .EODatabaseContext .lockingNonQualifiableAttributes(EODatabaseContext.java:5188) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperationAttributes (EODatabaseContext.java:5374) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperation(EODatabaseContext.java: 5548) at com .webobjects .eoaccess.EODatabaseContext.performChanges(EODatabaseContext.java: 6365) at com .webobjects .eocontrol .EOObjectStoreCoordinator .saveChangesInEditingContext(EOObjectStoreCoordinator.java:415) at com .webobjects .eocontrol.EOEditingContext.saveChanges(EOEditingContext.java:3223) at EditPerson.tryToSaveChanges(EditPerson.java:192) at EditPerson.saveAction(EditPerson.java:512) at sun.reflect.NativeMethodAccessorImpl.invoke0(Nat ___ 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/kenlists%40anderhome.com This email sent to kenli...@anderhome.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 do I debug this jdbc error?
James, What are you doing when this occurs? Do other operations work? Ken On Jan 13, 2009, at 9:21 AM, James Cicenia wrote: How do I debug this error. I have never seen it before. I am working with SYBASE as the database. Is this the jdbc adaptor issue? thanks James Cicenia [2009-01-13 08:15:51 CST] : Exception occurred while handling request: java.lang.NullPointerException [2009-01-13 08:15:51 CST] java.lang.NullPointerException at com .webobjects .jdbcadaptor.JDBCAdaptor.isValidQualifierType(JDBCAdaptor.java:659) at com .webobjects .eoaccess .EODatabaseContext .isValidQualifierTypeForAttribute(EODatabaseContext.java:5174) at com .webobjects .eoaccess .EODatabaseContext .lockingNonQualifiableAttributes(EODatabaseContext.java:5188) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperationAttributes (EODatabaseContext.java:5374) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperation(EODatabaseContext.java: 5548) at com .webobjects .eoaccess.EODatabaseContext.performChanges(EODatabaseContext.java: 6365) at com .webobjects .eocontrol .EOObjectStoreCoordinator .saveChangesInEditingContext(EOObjectStoreCoordinator.java:415) at com .webobjects .eocontrol.EOEditingContext.saveChanges(EOEditingContext.java:3223) at EditPerson.tryToSaveChanges(EditPerson.java:192) at EditPerson.saveAction(EditPerson.java:512) at sun.reflect.NativeMethodAccessorImpl.invoke0(Nat ___ 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/kenlists%40anderhome.com This email sent to kenli...@anderhome.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
How do I debug this jdbc error?
How do I debug this error. I have never seen it before. I am working with SYBASE as the database. Is this the jdbc adaptor issue? thanks James Cicenia [2009-01-13 08:15:51 CST] : Exception occurred while handling request: java.lang.NullPointerException [2009-01-13 08:15:51 CST] java.lang.NullPointerException at com .webobjects .jdbcadaptor.JDBCAdaptor.isValidQualifierType(JDBCAdaptor.java:659) at com .webobjects .eoaccess .EODatabaseContext .isValidQualifierTypeForAttribute(EODatabaseContext.java:5174) at com .webobjects .eoaccess .EODatabaseContext .lockingNonQualifiableAttributes(EODatabaseContext.java:5188) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperationAttributes (EODatabaseContext.java:5374) at com .webobjects .eoaccess .EODatabaseContext .createAdaptorOperationsForDatabaseOperation(EODatabaseContext.java: 5548) at com .webobjects .eoaccess.EODatabaseContext.performChanges(EODatabaseContext.java:6365) at com .webobjects .eocontrol .EOObjectStoreCoordinator .saveChangesInEditingContext(EOObjectStoreCoordinator.java:415) at com .webobjects .eocontrol.EOEditingContext.saveChanges(EOEditingContext.java:3223) at EditPerson.tryToSaveChanges(EditPerson.java:192) at EditPerson.saveAction(EditPerson.java:512) at sun.reflect.NativeMethodAccessorImpl.invoke0(Nat ___ 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: split install issue with 5.4.3
On 13/01/2009, at 4:38 PM, Lachlan Deck wrote: On 13/01/2009, at 11:14 AM, D Tim Cummings wrote: Yes, bug radar 6487590 This may, of course, not be a bug of Apple's but with the final build. Check the executable script for your app. i.e., $ less YourApp.woa/YourApp The last line of mine has this: eval exec ${JAVA_EXECUTABLE} ${JAVA_EXECUTABLE_ARGS} -classpath WOBootstrap.jar com.webobjects._bootstrap.WOBootstrap $ {COMMAND_LINE_ARGS} -WOFrameworksBaseURL /WebObjects/MyApp.woa/ Contents/Frameworks i.e., the WOFrameworksBaseURL is specifically getting set (whereas in the past this used to not be the case). Now I'm building with maven (using the woproject-maven plugin) but it's highly possible that seeing as it shares some functionality with woproject ant stuff that this is also happening for you for embedded builds. If yours also has this - then this *is* the problem. That's why your properties are getting ignored - because the first property wins. with regards, -- Lachlan Deck Hi Lachlan This is definitely an Apple bug. It doesn't occur in WebObjects 5.3.3 but does occur in WebObjects 5.4.3. Are you deploying using WebObjects 5.4.3 in your apps which use WOFrameworksBaseURL? If so you need to check the urls of any static webserver resources from frameworks because I would say they are coming from the wrong place. Below is what I already posted to the WebObjects deploy mailing list which shows that when you first call WOApplication.frameworksBaseURL() it actually changes the value from whatever you have set it, to / WebObjects/Frameworks. This is particularly dangerous in a deploy situation because you think it is using the latest ajax scripts from your embedded frameworks in your split install, but in fact it is using some old ajax javascript that happened to be sitting /Library/ WebServer/Documents/WebObjects/Frameworks. To identify the bug I added some more logging and overrode some WOApplication methods. As you can see the first call to frameworksBaseURL() in WebObjects 5.4.3 actually calls setFrameworksBaseURL("/WebObjects/Frameworks"). This does not happen in WebObjects 5.3.3 public class Application extends WOApplication { public static void main(String[] argv) { WOApplication.main(argv, Application.class); } public Application() { NSLog.out.appendln("Welcome to " + name() + " !"); /* ** put your initialization code in here ** */ if ( System.getProperty("WOFrameworksBaseURL") != null ) setFrameworksBaseURL(System.getProperty("WOFrameworksBaseURL")); frameworksBaseURL(); if ( System.getProperty("WOFrameworksBaseURL") != null ) setFrameworksBaseURL(System.getProperty("WOFrameworksBaseURL")); frameworksBaseURL(); } @Override public String frameworksBaseURL() { NSLog.out.appendln("frameworksBaseURL() pre super: WOProperties.TheFrameworksBaseURL = " + WOProperties.TheFrameworksBaseURL); NSLog.out.appendln("frameworksBaseURL() pre super: System.getProperty(WOFrameworksBaseURL) = " + System.getProperty("WOFrameworksBaseURL")); String s = super.frameworksBaseURL(); NSLog.out.appendln("frameworksBaseURL() post super: WOProperties.TheFrameworksBaseURL = " + WOProperties.TheFrameworksBaseURL); NSLog.out.appendln("frameworksBaseURL() post super: System.getProperty(WOFrameworksBaseURL) = " + System.getProperty("WOFrameworksBaseURL")); NSLog.out.appendln("frameworksBaseURL() post super: super.frameworksBaseURL() = " + s); NSLog.out.appendln(""); return s; } @Override public void setFrameworksBaseURL(String string) { NSLog.out.appendln("setFrameworksBaseURL(String string): change from " + WOProperties.TheFrameworksBaseURL + " to " + string); super.setFrameworksBaseURL(string); } } WEBOBJECTS 5.4.3 - SHOWS BUG [2009-1-11 11:26:8 EST] WOFrameworksBaseURL=/WebObjects/ WeboTest.woa/Frameworks ... [2009-1-11 11:26:8 EST] WebObjects version = 5.4.3 ... Welcome to WeboTest ! setFrameworksBaseURL(String string): change from null to /WebObjects/ WeboTest.woa/Frameworks frameworksBaseURL() pre super: WOProperties.TheFrameworksBaseURL = /WebObjects/WeboTest.woa/ Frameworks frameworksBaseURL() pre super: System.getProperty(WOFrameworksBaseURL) = /WebObjects/WeboTest.woa/ Frameworks setFrameworksBaseURL(String string): change from /WebObjects/ WeboTest.woa/Frameworks to /WebObjects/Frameworks <--WHO'S CALLING THIS frameworksBaseURL() post super: WOProperties.TheFrameworksBaseURL = /WebObjects/Frameworks frameworksBaseURL() post super: System.getProperty(WOFrameworksBaseURL) = /WebObjects/WeboTest.woa/ Frameworks frameworksBaseURL() post super: super.frameworksBaseURL() = /We