NullPointerException in DerbyPlugIn$DerbyExpression.isLOBAttribute
Hi,I am new to WebObjects and am working through the documentation and Apple's Movies tutorial found here: http://developer.apple.com/legacy/mac/library/documentation/DeveloperTools/Conceptual/WOTutorial/DatabaseApplication/DatabaseApplication.html.I am running on Mac OS 10.6.4.I was able to get WebObects installed (version 5.4.3) along with the WOLips plugin for eclipse obtained from: http://wiki.objectstyle.org/confluence/display/WOL/Installing+WOLips. I installed it using method 2.I am using the built in VelocityEOGenerator with the Entity.java templates obtained from: http://wiki.objectstyle.org/confluence/display/WOL/EOGenerator+Templates+and+Additions.I have created the Movies database and have generated the Movies entities using the EO Generator and can launch the application but when I do a search as instructed in the tutorial I get the following exception. I have searched this mailing list archive and the web for elements of this error but have not had any luck Does anyone have any idea what is going wrong?Thanks for the help.Marvin[2010-9-4 4:3:15 EDT] main Waiting for requests...java.lang.NullPointerException at com.webobjects.jdbcadaptor.DerbyPlugIn$DerbyExpression.isLOBAttribute(DerbyPlugIn.java:345) at com.webobjects.jdbcadaptor.DerbyPlugIn$DerbyExpression.shouldUseBindVariableForAttribute(DerbyPlugIn.java:361) at com.webobjects.eoaccess.EOSQLExpression.sqlStringForValue(EOSQLExpression.java:1965) at com.webobjects.eoaccess.EOSQLExpression.sqlStringForKeyValueQualifier(EOSQLExpression.java:1659) at com.webobjects.eoaccess.EOQualifierSQLGeneration$_KeyValueQualifierSupport.sqlStringForSQLExpression(EOQualifierSQLGeneration.java:463) at com.webobjects.eoaccess.EOQualifierSQLGeneration$Support._sqlStringForSQLExpression(EOQualifierSQLGeneration.java:165) at com.webobjects.eoaccess.EOSQLExpression.sqlStringForArrayOfQualifiers(EOSQLExpression.java:1528) at com.webobjects.eoaccess.EOSQLExpression.sqlStringForConjoinedQualifiers(EOSQLExpression.java:1560) at com.webobjects.eoaccess.EOQualifierSQLGeneration$_AndQualifierSupport.sqlStringForSQLExpression(EOQualifierSQLGeneration.java:541) at com.webobjects.eoaccess.EOQualifierSQLGeneration$Support._sqlStringForSQLExpression(EOQualifierSQLGeneration.java:165) at com.webobjects.eoaccess.EOSQLExpression.prepareSelectExpressionWithAttributes(EOSQLExpression.java:997) at com.webobjects.jdbcadaptor.JDBCExpression.prepareSelectExpressionWithAttributes(JDBCExpression.java:146) at com.webobjects.eoaccess.EOSQLExpressionFactory.selectStatementForAttributes(EOSQLExpressionFactory.java:225) at com.webobjects.jdbcadaptor.JDBCChannel.selectAttributes(JDBCChannel.java:213) at com.webobjects.eoaccess.EODatabaseChannel._selectWithFetchSpecificationEditingContext(EODatabaseChannel.java:897) at com.webobjects.eoaccess.EODatabaseChannel.selectObjectsWithFetchSpecification(EODatabaseChannel.java:234) at com.webobjects.eoaccess.EODatabaseContext._objectsWithFetchSpecificationEditingContext(EODatabaseContext.java:3055) at com.webobjects.eoaccess.EODatabaseContext.objectsWithFetchSpecification(EODatabaseContext.java:3195) at com.webobjects.eocontrol.EOObjectStoreCoordinator.objectsWithFetchSpecification(EOObjectStoreCoordinator.java:488) at com.webobjects.eocontrol.EOEditingContext.objectsWithFetchSpecification(EOEditingContext.java:4069) at com.webobjects.eocontrol.EOEditingContext.objectsWithFetchSpecification(EOEditingContext.java:) at your.app.eo._Movie.fetchMovies(_Movie.java:84) at your.app.components.Main.searchMovies(Main.java:75) at sunreflect.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:597) at com.webobjects.foundation.NSKeyValueCoding$ValueAccessor$1.methodValue(NSKeyValueCoding.java:636) at com.webobjects.foundation.NSKeyValueCoding$_MethodBinding.valueInObject(NSKeyValueCoding.java:1134) 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 com.webobjects.appserver._private.WOSubmitButton.invokeAction(WOSubmitButton.java:81) 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.WOForm.invokeAction(WOForm.java:141) at
Re: NullPointerException in DerbyPlugIn$DerbyExpression.isLOBAttribute
Thanks Mike and Chuck. I did forget to enter values for the external types. I had been through the steps to set up the EOModel so many times trying to get it to work that I eventually convinced myself that the docs were wrong and those values weren't used for anything. Eventually I just started overlooking them in the setup. It would help to have warnings for required fields. Thanks for getting me unstuck. Marvin On Sep 4, 2010, at 11:13 AM, Mike Schrag wrote: soca? Apparently the iPhone thought I wanted to say soca instead of docs. Sent from my iPhone On Sep 4, 2010, at 11:12 AM, Mike Schrag msch...@pobox.com wrote: No way apple's soca teach prototypes, right? I seem to recall those soca only teach bad practices. Sent from my iPhone On Sep 4, 2010, at 10:46 AM, Chuck Hill ch...@global-village.net wrote: Or the prototypes are not configured or not loading properly? On Sep 4, 2010, at 10:40 AM, Mike Schrag wrote: I don't have source in front of me at the moment, but I seem to recall this is when you accidentally forget to fill in the external type of an attribute (the varchar part). Go back through the attributes in your model and give then a once-over. I should really add a check to entity modeler for JDBC attributes with missing required values. Sent from my iPhone On Sep 4, 2010, at 4:58 AM, Marvin marvin.pub...@me.com wrote: Hi, I am new to WebObjects and am working through the documentation and Apple's Movies tutorial found here: http://developer.apple.com/legacy/mac/library/documentation/DeveloperTools/Conceptual/WOTutorial/DatabaseApplication/DatabaseApplication.html. I am running on Mac OS 10.6.4. I was able to get WebObects installed (version 5.4.3) along with the WOLips plugin for eclipse obtained from: http://wiki.objectstyle.org/confluence/display/WOL/Installing+WOLips. I installed it using method 2. I am using the built in VelocityEOGenerator with the Entity.java templates obtained from: http://wiki.objectstyle.org/confluence/display/WOL/EOGenerator+Templates+and+Additions. I have created the Movies database and have generated the Movies entities using the EO Generator and can launch the application but when I do a search as instructed in the tutorial I get the following exception. I have searched this mailing list archive and the web for elements of this error but have not had any luck Does anyone have any idea what is going wrong? Thanks for the help. Marvin [2010-9-4 4:3:15 EDT] main Waiting for requests... java.lang.NullPointerException at com.webobjects.jdbcadaptor.DerbyPlugIn$DerbyExpression.isLOBAttribute(DerbyPlugIn.java:345) at com.webobjects.jdbcadaptor.DerbyPlugIn$DerbyExpression.shouldUseBindVariableForAttribute(DerbyPlugIn.java:361) at com.webobjects.eoaccess.EOSQLExpression.sqlStringForValue(EOSQLExpression.java:1965) at com.webobjects.eoaccess.EOSQLExpression.sqlStringForKeyValueQualifier(EOSQLExpression.java:1659) at com.webobjects.eoaccess.EOQualifierSQLGeneration$_KeyValueQualifierSupport.sqlStringForSQLExpression(EOQualifierSQLGeneration.java:463) at com.webobjects.eoaccess.EOQualifierSQLGeneration$Support._sqlStringForSQLExpression(EOQualifierSQLGeneration.java:165) at com.webobjects.eoaccess.EOSQLExpression.sqlStringForArrayOfQualifiers(EOSQLExpression.java:1528) at com.webobjects.eoaccess.EOSQLExpression.sqlStringForConjoinedQualifiers(EOSQLExpression.java:1560) at com.webobjects.eoaccess.EOQualifierSQLGeneration$_AndQualifierSupport.sqlStringForSQLExpression(EOQualifierSQLGeneration.java:541) at com.webobjects.eoaccess.EOQualifierSQLGeneration$Support._sqlStringForSQLExpression(EOQualifierSQLGeneration.java:165) at com.webobjects.eoaccess.EOSQLExpression.prepareSelectExpressionWithAttributes(EOSQLExpression.java:997) at com.webobjects.jdbcadaptor.JDBCExpression.prepareSelectExpressionWithAttributes(JDBCExpression.java:146) at com.webobjects.eoaccess.EOSQLExpressionFactory.selectStatementForAttributes(EOSQLExpressionFactory.java:225) at com.webobjects.jdbcadaptor.JDBCChannel.selectAttributes(JDBCChannel.java:213) at com.webobjects.eoaccess.EODatabaseChannel._selectWithFetchSpecificationEditingContext(EODatabaseChannel.java:897) at com.webobjects.eoaccess.EODatabaseChannel.selectObjectsWithFetchSpecification(EODatabaseChannel.java:234) at com.webobjects.eoaccess.EODatabaseContext._objectsWithFetchSpecificationEditingContext(EODatabaseContext.java:3055) at com.webobjects.eoaccess.EODatabaseContext.objectsWithFetchSpecification(EODatabaseContext.java:3195) at com.webobjects.eocontrol.EOObjectStoreCoordinator.objectsWithFetchSpecification(EOObjectStoreCoordinator.java:488) at com.webobjects.eocontrol.EOEditingContext.objectsWithFetchSpecification(EOEditingContext.java:4069) at com.webobjects.eocontrol.EOEditingContext.objectsWithFetchSpecification(EOEditingContext.java: