Re: Stumped on "Attempt to insert null object...." when connecting to DB

Lon Varscsak <[email protected]> Fri, 20 Mar 2009 17:00:36 -0700
Newsgroups gmane.comp.web.webobjects.devel
Message-ID <[email protected]>
I've never done anything special with erprototypes, but it is in my other
projects and not causing any issues.  However, I did just remove it (the
ERPrototypes framework) from my project and the error goes away!  So you did
solve the issue...I just don't get what's different...but I'm not sure that
I care now. :)
Thanks for your time,

Lon

On Fri, Mar 20, 2009 at 4:49 PM, Chuck Hill <[email protected]>wrote:

>
> On Mar 20, 2009, at 4:47 PM, Lon Varscsak wrote:
>
>  It seems reasonable (I removed passwords and server/port):
>>
>> Mar 20 16:45:40 DataBuilder[2500] INFO  NSLog  - erprototypes
>> Mar 20 16:45:40 DataBuilder[2500] INFO  NSLog  - {driver =
>> "com.sybase.jdbc3.jdbc.SybDriver"; password = "<password>"; plugin =
>> "com.webobjects.jdbcadaptor.SybasePlugIn"; username = "varscsak"; }
>>
>
> Me, I see no URL in that.  And it is complaining about there being no URL.
>  Seems unlikely that is a co-inkydink.  I don't use that part of Wonder so
> you are alone in the wilderness.
>
>
> Chuck
>
>
>
>
>  Mar 20 16:45:40 DataBuilder[2500] INFO  NSLog  - product
>> Mar 20 16:45:40 DataBuilder[2500] INFO  NSLog  - {plugin =
>> "com.webobjects.jdbcadaptor.SybasePlugIn"; username = "varscsak"; driver =
>> "com.sybase.jdbc3.jdbc.SybDriver"; password = "<password>"; URL =
>> "jdbc:sybase:Tds:<servername>:<port>"; }
>>
>> -Lon
>>
>> On Fri, Mar 20, 2009 at 4:27 PM, Chuck Hill <[email protected]>
>> wrote:
>>
>> On Mar 20, 2009, at 4:17 PM, Lon Varscsak wrote:
>>
>> I dug up the docs on what you were talking about and I set it all and I
>> still get an exception (although it is using the SybasePlugIn now):
>>
>> Mar 20 16:16:01 DataBuilder[2500] WARN  er.extensions.eof.ERXModelGroup  -
>> Clearing previous class descriptions
>> Mar 20 16:16:04 DataBuilder[2500] DEBUG NSLog  - Using JDBCPlugIn
>> 'com.webobjects.jdbcadaptor.SybasePlugIn' for ERXJDBCAdaptor@10651400
>> java.lang.IllegalArgumentException: Attempt to insert null object into an
>> com.webobjects.foundation.NSMutableDictionary.
>>       at
>> com.webobjects.foundation.NSMutableDictionary.setObjectForKey(NSMutableDictionary.java:68)
>>       at
>> com.webobjects.jdbcadaptor.JDBCContext.connect(JDBCContext.java:230)
>>       at
>> er.extensions.jdbc.ERXJDBCAdaptor$Context.connect(ERXJDBCAdaptor.java:248)
>>       at
>> com.webobjects.jdbcadaptor.JDBCContext._tryConnect(JDBCContext.java:362)
>>       at
>> com.webobjects.jdbcadaptor.JDBCContext._channelWillOpen(JDBCContext.java:505)
>>       at
>> com.webobjects.jdbcadaptor.JDBCChannel.openChannel(JDBCChannel.java:111)
>>       at
>> com.webobjects.eoaccess.EODatabaseChannel._openChannel(EODatabaseChannel.java:713)
>>       at
>> com.webobjects.eoaccess.EODatabaseContext.availableChannel(EODatabaseContext.java:1324)
>>
>>
>> Before your first database access (but after Wonder has done it's thing),
>> get EOModelGroup.defaultModelGroup().models() and iterate over it printing
>> out the model name and connection dictionary.  The answer is in there
>> somewhere.
>>
>>
>>
>> Chuck
>>
>>
>>
>>
>> On Fri, Mar 20, 2009 at 3:46 PM, Lon Varscsak <[email protected]>
>> wrote:
>> URL:  jdbc:sybase:Tds:<server>:<port>
>>
>> Hmm...well, I'm not doing anything specific to make that work (or not
>> work)...but my Postgres projects seem okay with the same configuration.
>>
>> -Lon
>>
>>
>> On Fri, Mar 20, 2009 at 3:37 PM, Chuck Hill <[email protected]>
>> wrote:
>>
>> On Mar 20, 2009, at 3:27 PM, Lon Varscsak wrote:
>>
>> lol, Chuck...you should get that cough looked at....although I did like
>> what came out. :)
>>
>> I'm still missing something...hopefully you still have some
>> informational-phlegm left.
>>
>> I specified com.webobjects.jdbcadaptor.SybasePlugIn in the model, but I
>> still see this in the log:
>>
>> Mar 20 15:20:55 DataBuilder[2500] DEBUG NSLog  - Using JDBCPlugIn
>> 'com.webobjects.jdbcadaptor.JDBCPlugIn' for ERXJDBCAdaptor@2610469
>>
>> and I still get my error.
>>
>> How are you specifying it?  What is the URL?  Are you using Wonder to set
>> the connection dictionary into all of the models?   I am guessing that you
>> don't have this configured, but I could be wrong.
>>
>>
>> Chuck
>>
>>
>>
>>
>> On Fri, Mar 20, 2009 at 3:20 PM, Chuck Hill <[email protected]>
>> wrote:
>>
>> On Mar 20, 2009, at 3:14 PM, Lon Varscsak wrote:
>>
>> I have a new project I'm working on that connects to Sybase (I've been
>> working with Postgres lately...and haven't done a sybase wo project in
>> years).  I created a new model, I can connect to the database through Entity
>> Modeler in Eclipse just fine.  Whenever I ask for an "availableChannel" on
>> the EODatabaseContext I get this exception:
>>
>> Mar 20 15:07:02 DataBuilder[2500] WARN  er.extensions.eof.ERXModelGroup  -
>> The EOModel 'erprototypes' has an empty connection dictionary.
>> java.lang.IllegalArgumentException: Attempt to insert null object into an
>> com.webobjects.foundation.NSMutableDictionary.
>>     at
>> com.webobjects.foundation.NSMutableDictionary.setObjectForKey(NSMutableDictionary.java:68)
>>     at
>> com.webobjects.jdbcadaptor.JDBCContext.connect(JDBCContext.java:230)
>>     at
>> er.extensions.jdbc.ERXJDBCAdaptor$Context.connect(ERXJDBCAdaptor.java:248)
>>     at
>> com.webobjects.jdbcadaptor.JDBCContext._tryConnect(JDBCContext.java:362)
>>     at
>> com.webobjects.jdbcadaptor.JDBCContext._channelWillOpen(JDBCContext.java:505)
>>     at
>> com.webobjects.jdbcadaptor.JDBCChannel.openChannel(JDBCChannel.java:111)
>>     at
>> com.webobjects.eoaccess.EODatabaseChannel._openChannel(EODatabaseChannel.java:713)
>>     at
>> com.webobjects.eoaccess.EODatabaseContext.availableChannel(EODatabaseContext.java:1324)
>>     at
>> com.smarthealth.database.util.SPEOUtilities._connection(SPEOUtilities.java:38)
>>
>> I have no idea what I'm doing wrong here...I'm sure I'm missing something
>> obvious, although I can do the same thing with a Postgres project and not
>> get the error.  Of note, I don't think a plugin for sybase exists, so I'm
>> just using the JDBCPlugin.
>>
>> <cough>
>>
>> http://developer.apple.com/documentation/MacOSXServer/Reference/WO54_Reference/com/webobjects/jdbcadaptor/SybasePlugIn.html
>> <cough>
>>
>>
>>
>> Any thoughts would be appreciated.
>>
>> Thanks,
>>
>> Lon
>>
>> P.S. -- Using WO 5.4.3 with Wonder nightly from a couple of weeks ago.
>> _______________________________________________
>> WebObjects-dev mailing list
>> [email protected]
>> http://www.omnigroup.com/mailman/listinfo/webobjects-dev
>>
>> --
>> 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
>>
>>
>>
>>
>>
>>
>>
>>
>> --
>> 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
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> --
>> 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
>>
>>
>>
>>
>>
>>
>>
>>
> --
> 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
>
>
>
>
>
>
>

_______________________________________________
WebObjects-dev mailing list
[email protected]
http://www.omnigroup.com/mailman/listinfo/webobjects-dev