On Jun 21, 2012, at 11:12 PM, Johann Werner wrote: > Hi list, > > working with the H2 plugin I got an interesting issue with prototypes. > Looking at ERPrototypes there is an entity EOJDBCH2Prototypes so I assume > that adding my own prototypes should have an entity named > EOJDBCH2CustomPrototypes. Now I have tracked down that during access of a > model the prototypes for this model are created after calling > ERXEOAccessUtilities.guessPluginNameForConnectionDictionary(). > > The H2 plugin needs only the URL field in the connection dictionary (e.g. > jdbc:h2:mem:myDB) so it will look up the class name that has been registered > for the h2 prototcol. That class is ERH2PlugIn from which the "PlugIn" part > is subtracted leaving "ERH2". That means that WO looks for a > EOJDBCERH2Prototypes which of course doesn't exist falling back to > EOJDBCPrototypes which gives wrong external data types. > > A solution would be to not only strip off a trailing "PlugIn" but also a > leading "ER", this would affect the H2 and the Derby plugin. What makes me > wonder is that apparently no one had this problem before. Changing the > mentioned method would make WO look for a differently named prototype entity > so it could break for some. Are there any objections against that > modification? It seems that guessing a name "ERH2" instead of "H2" should be > wrong. > > jw
Smells bad. Parsing for magic strings is gross. Have you tried registering the H2PlugIn class instead of the ERH2PlugIn class in the h2 principal class? Seems like that should work. Ramsey _______________________________________________ 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: https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com