Try commenting out the <component> line in web.config, and uncomment the line in Global.asax. You'll see it works fine using it that way. So, what's wrong with my syntax in the web.config? This worked until I upgraded Castle.
On Jan 26, 8:19 am, Krzysztof Koźmic (2) <[email protected]> wrote: > Mark, > > Windsor is fine. > Your class does not implement that interface. > > Krzysztof > > On 26 Sty, 13:48, Mark Richman <[email protected]> wrote: > > > I uploaded a test website that demonstrates the issue. Please > > seehttp://groups.google.com/group/castle-project-users/web/WindsorTest.zip > > > Thank you! > > > On Jan 26, 8:08 am, Krzysztof Ko 1/4 mic <[email protected]> > > wrote: > > > > were you able to create a reproduction you could post here? > > > > Krzysztof > > > > On 2010-01-26 02:18, Mark Richman wrote: > > > > > Oddly, this imperative version works perfectly: > > > > > container.AddComponentLifeStyle("entityurlsprovider.picker", > > > > typeof > > > > (IWebAdminEntityPickerEntityUrlsProvider<>), > > > > typeof > > > > (WebAdminEntityPickerEntityUrlsProvider<>), > > > > LifestyleType.Transient); > > > > > the declarative version still fails though...syntax error? > > > > > <component id="entityurlsprovider.picker" > > > > > service="KGroup.KMS.Administration.IWebAdminEntityPickerEntityUrlsProvider`1, > > > > KGroup.KMS.Core" > > > > > type="KGroup.KMS.Administration.Common.WebAdminEntityPickerEntityUrlsProvider`1, > > > > KGroup.KMS.Core" > > > > lifestyle="transient"/> > > > > > Thanks, > > > > Mark > > > > > On Jan 25, 5:24 pm, Krzysztof Ko 1/4 mic<[email protected]> > > > > wrote: > > > > >> By reproduction I mean a minimalistic solution that exhibits the issue. > > > >> I just tried to re-create your scenario and I hate to tell you that it > > > >> works on my machine. > > > > >> The fact that the exception message says > > > > >> Type '' > > > > >> is misleading. > > > >> It means you used open generic type. If the type was indeed not being > > > >> found, an other exception would be thrown. > > > >> Try to isolate the issue and post the solution here. > > > >> At this point I can't really think of anything that could cause this > > > >> issue. > > > > >> Krzysztof > > > > >> On 2010-01-25 23:20, Mark Richman wrote: > > > > >>> What do you mean by reproduction? There is nothing I'm doing > > > >>> explicitly in my code to try loading the class other than new > > > >>> WindsorContainer(new XmlInterpreter()). From there, the Windsor code > > > >>> takes over and eventually throws an exception. Seems to me like the > > > >>> method for parsing the web.config<component> element may have > > > >>> changed, causing an empty string to be passed as the 'type' argument > > > >>> to > > > >>> Castle.Windsor.Installer.DefaultComponentInstaller.AssertImplementsService > > > >>> (id,service,type). Like I mentioned, I have made zero changes to my > > > >>> code, other than replacing the Castle*.dll files. > > > > >>> On Jan 25, 5:00 pm, Krzysztof Ko 1/4 mic<[email protected]> > > > >>> wrote: > > > > >>>> Stack trace is not really helpful here. > > > >>>> Can you create a reproduction and post it? > > > >>>> This does not really seem to make much sense to me > > > > >>>> Krzysztof > > > > >>>> On 2010-01-25 22:42, Mark Richman wrote: > > > > >>>>> Maybe this stack trace will help: > > > > >>>>> [Exception: Could not set up component 'entityurlsprovider.picker'. > > > >>>>> Type '' does not implement service > > > >>>>> 'KGroup.KMS.Administration.IWebAdminEntityPickerEntityUrlsProvider`1, > > > >>>>> KGroup.KMS.Core, Version=1.0.0.0, Culture=neutral, > > > >>>>> PublicKeyToken=null'] > > > > >>>>> Castle.Windsor.Installer.DefaultComponentInstaller.AssertImplementsService > > > >>>>> (String id, Type service, Type type) +255 > > > >>>>> > > > >>>>> Castle.Windsor.Installer.DefaultComponentInstaller.SetUpComponents > > > >>>>> (IConfiguration[] configurations, IWindsorContainer container) +348 > > > >>>>> Castle.Windsor.Installer.DefaultComponentInstaller.SetUp > > > >>>>> (IWindsorContainer container, IConfigurationStore store) +124 > > > >>>>> Castle.Windsor.WindsorContainer.RunInstaller() +98 > > > >>>>> > > > >>>>> Castle.Windsor.WindsorContainer..ctor(IConfigurationInterpreter > > > >>>>> interpreter) +167 > > > >>>>> Global.Application_Start(Object sender, EventArgs e) > > > > >>>>> On Jan 25, 4:33 pm, Mark Richman<[email protected]> wrote: > > > > >>>>>> I did a Clean Solution, Rebuild Solution. I even deleted the > > > >>>>>> contents > > > >>>>>> of /bin and rebuilt. I get the same error. > > > > >>>>>> On Jan 25, 4:25 pm, Krzysztof Ko 1/4 > > > >>>>>> mic<[email protected]> > > > >>>>>> wrote: > > > > >>>>>>> Looks like it somehow does not pick your implementation type. Do > > > >>>>>>> Clean > > > >>>>>>> in Visual Studio, and then Build all projects > > > > >>>>>>> On 2010-01-25 22:16, Mark Richman wrote: > > > > >>>>>>>> I am trying to upgrade from these versions: > > > > >>>>>>>> Castle.Core 1.1.0.542 > > > >>>>>>>> Castle.DynamicProxy2 2.1.0.5642 > > > >>>>>>>> Castle.MicroKernel 2.0.0.5642 > > > >>>>>>>> Castle.Windsor 2.0.0.5642 > > > > >>>>>>>> to the current versions: > > > > >>>>>>>> Castle.Core 1.2.0.6623 > > > >>>>>>>> Castle.DynamicProxy2 2.2.0.6628 > > > >>>>>>>> Castle.MicroKernel 2.1.0.6655 > > > >>>>>>>> Castle.Windsor 2.1.0.6655 > > > > >>>>>>>> I get the following exception at startup: > > > > >>>>>>>> Could not set up component 'entityurlsprovider.picker'. Type '' > > > >>>>>>>> does > > > >>>>>>>> not implement service > > > >>>>>>>> 'KGroup.KMS.Administration.IWebAdminEntityPickerEntityUrlsProvider`1, > > > >>>>>>>> KGroup.KMS.Core, Version=1.0.0.0, Culture=neutral, > > > >>>>>>>> PublicKeyToken=null' > > > > >>>>>>>> in this line of code in Application_Start: > > > > >>>>>>>> var container = new WindsorContainer(new XmlInterpreter()); > > > > >>>>>>>> for this configuration: > > > > >>>>>>>> <component id="entityurlsprovider.picker" > > > >>>>>>>> service="KGroup.KMS.Administration.IWebAdminEntityPickerEntityUrlsProvider`1, > > > >>>>>>>> KGroup.KMS.Core" > > > >>>>>>>> type="KGroup.KMS.Administration.Common.WebAdminEntityPickerEntityUrlsProvider`1, > > > >>>>>>>> KGroup.KMS.Core" > > > >>>>>>>> lifestyle="transient"/> > > > > >>>>>>>> I have not changed a single line of code, other than swapping > > > >>>>>>>> out the > > > >>>>>>>> dll's above and recompiling without errors. > > > > >>>>>>>> Is there a breaking change I should be aware of? > > > > >>>>>>>> Thanks, > > > >>>>>>>> Mark -- You received this message because you are subscribed to the Google Groups "Castle Project Users" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/castle-project-users?hl=en.
