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

Lon Varscsak <[email protected]> Fri, 20 Mar 2009 16:47:47 -0700
Newsgroups gmane.comp.web.webobjects.devel
Message-ID <[email protected]>
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"; }


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
>
>
>
>
>
>
>

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