OrchardCMS / Orchard

Orchard is a free, open source, community-focused Content Management System built on the ASP.NET MVC platform.
https://orchardproject.net
BSD 3-Clause "New" or "Revised" License
2.38k stars 1.12k forks source link

The connection string is empty #2530

Closed orchardbot closed 9 years ago

orchardbot commented 12 years ago

gelistir created: https://orchard.codeplex.com/workitem/18703

Here is the repro:

Using WebMatrix, I install Orchard CMS (currently 1.4.1.0), gives random port: mine was: http://localhost:20974 Default install settings with SQL CE installation. OK, homepage. Admin to dashboard and go to modules and install MultiTenancy module. Click Tenants from Admin Menu Add Tenant

Name: XYZ Host: localhost:20974/XYZ (I guess or am I wrong) At least I tried with default setup, and SQL CE selected OK

then, when I try click it cannot find website or when I click to edit or run setup gets the error.

btw: machine conf. windows 7 , home premium 64bit. local IIS gives errors like this with tenant, but to repro purposes i dont mention about them in here.

Here is the full error log: Page: http://localhost:20974/Admin/MultiTenancy

Server Error in '/' Application.

Instances cannot be resolved and nested lifetimes cannot be created from this LifetimeScope as it has already been disposed.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ObjectDisposedException: Instances cannot be resolved and nested lifetimes cannot be created from this LifetimeScope as it has already been disposed.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[ObjectDisposedException: Instances cannot be resolved and nested lifetimes cannot be created from this LifetimeScope as it has already been disposed.] Autofac.Core.Lifetime.LifetimeScope.ResolveComponent(IComponentRegistration registration, IEnumerable1 parameters) +407 lambda_method(Closure ) +130 Orchard.Environment.DefaultOrchardShell.Terminate() in d:\Builds\OrchardFull\src\Orchard\Environment\DefaultOrchardShell.cs:51 Orchard.Environment.DefaultOrchardHost.ActivateShell(ShellSettings settings) in d:\Builds\OrchardFull\src\Orchard\Environment\DefaultOrchardHost.cs:249 Orchard.Environment.DefaultOrchardHost.StartUpdatedShells() in d:\Builds\OrchardFull\src\Orchard\Environment\DefaultOrchardHost.cs:116 Orchard.WarmupStarter.Starter1.OnBeginRequest(HttpApplication application) in d:\Builds\OrchardFull\src\Orchard.WarmupStarter\Starter.cs:68

[TargetInvocationException: Exception has been thrown by the target of an invocation.] System.RuntimeMethodHandle._InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeType typeOwner) +0 System.RuntimeMethodHandle.InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeType typeOwner) +152 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +396 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +38 System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) +35 System.Web.Util.ArglessEventHandlerProxy.Callback(Object sender, EventArgs e) +74 System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +80 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +270

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272

orchardbot commented 12 years ago

gelistir commented:

Sorry the correct error log is: the above one is solved when I restart IIS or Restart button in WebMatrix.

Server Error in '/' Application.

The connection string is empty

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentException: The connection string is empty

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[ArgumentException: The connection string is empty] Orchard.Data.Providers.SqlServerDataServicesProvider.GetPersistenceConfigurer(Boolean createDatabase) in d:\Builds\OrchardFull\src\Orchard\Data\Providers\SqlServerDataServicesProvider.cs:21 Orchard.Data.Providers.AbstractDataServicesProvider.BuildConfiguration(SessionFactoryParameters parameters) in d:\Builds\OrchardFull\src\Orchard\Data\Providers\AbstractDataServicesProvider.cs:0 Orchard.Data.<>cDisplayClass3.b2() in d:\Builds\OrchardFull\src\Orchard\Data\SessionFactoryHolder.cs:94 Orchard.Data.SessionConfigurationCache.GetConfiguration(Func1 builder) in d:\Builds\OrchardFull\src\Orchard\Data\SessionConfigurationCache.cs:51 Orchard.Data.SessionFactoryHolder.BuildConfiguration() in d:\Builds\OrchardFull\src\Orchard\Data\SessionFactoryHolder.cs:93 Orchard.Data.SessionFactoryHolder.GetConfiguration() in d:\Builds\OrchardFull\src\Orchard\Data\SessionFactoryHolder.cs:71 Orchard.Data.SessionFactoryHolder.BuildSessionFactory() in d:\Builds\OrchardFull\src\Orchard\Data\SessionFactoryHolder.cs:83 Orchard.Data.SessionFactoryHolder.GetSessionFactory() in d:\Builds\OrchardFull\src\Orchard\Data\SessionFactoryHolder.cs:61 Orchard.Data.SessionLocator.For(Type entityType) in d:\Builds\OrchardFull\src\Orchard\Data\SessionLocator.cs:29 Orchard.Data.Repository1.get_Session() in d:\Builds\OrchardFull\src\Orchard\Data\Repository.cs:26 Orchard.Data.Repository1.get_Table() in d:\Builds\OrchardFull\src\Orchard\Data\Repository.cs:30 Orchard.Data.Repository1.Fetch(Expression1 predicate) in d:\Builds\OrchardFull\src\Orchard\Data\Repository.cs:126 Orchard.Data.Repository1.Get(Expression1 predicate) in d:\Builds\OrchardFull\src\Orchard\Data\Repository.cs:91 Orchard.Data.Repository1.Orchard.Data.IRepository.Get(Expression1 predicate) in d:\Builds\OrchardFull\src\Orchard\Data\Repository.cs:60 Orchard.Core.Settings.Descriptor.ShellDescriptorManager.GetDescriptorRecord() in d:\Builds\OrchardFull\src\Orchard.Web\Core\Settings\Descriptor\ShellDescriptorManager.cs:57 Orchard.Core.Settings.Descriptor.ShellDescriptorManager.GetShellDescriptor() in d:\Builds\OrchardFull\src\Orchard.Web\Core\Settings\Descriptor\ShellDescriptorManager.cs:30 Orchard.Environment.ShellBuilders.ShellContextFactory.CreateShellContext(ShellSettings settings) in d:\Builds\OrchardFull\src\Orchard\Environment\ShellBuilders\ShellContextFactory.cs:66 Orchard.Environment.DefaultOrchardHost.ActivateShell(ShellSettings settings) in d:\Builds\OrchardFull\src\Orchard\Environment\DefaultOrchardHost.cs:257 Orchard.Environment.DefaultOrchardHost.StartUpdatedShells() in d:\Builds\OrchardFull\src\Orchard\Environment\DefaultOrchardHost.cs:116 Orchard.Environment.DefaultOrchardHost.BeginRequest() in d:\Builds\OrchardFull\src\Orchard\Environment\DefaultOrchardHost.cs:215 Orchard.Environment.DefaultOrchardHost.Orchard.Environment.IOrchardHost.BeginRequest() in d:\Builds\OrchardFull\src\Orchard\Environment\DefaultOrchardHost.cs:78 Orchard.Web.MvcApplication.HostBeginRequest(HttpApplication application, IOrchardHost host) in d:\Builds\OrchardFull\src\Orchard.Web\Global.asax.cs:38 Orchard.WarmupStarter.Starter1.OnBeginRequest(HttpApplication application) in d:\Builds\OrchardFull\src\Orchard.WarmupStarter\Starter.cs:68 Orchard.Web.MvcApplication.Application_BeginRequest() in d:\Builds\OrchardFull\src\Orchard.Web\Global.asax.cs:29

[TargetInvocationException: Exception has been thrown by the target of an invocation.] System.RuntimeMethodHandle._InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeType typeOwner) +0 System.RuntimeMethodHandle.InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeType typeOwner) +72 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +335 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +28 System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) +19 System.Web.Util.ArglessEventHandlerProxy.Callback(Object sender, EventArgs e) +57 System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +148 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272

orchardbot commented 12 years ago

@sebastienros commented:

Could you try again with 1.4.2 which is now on WebPI ?

orchardbot commented 12 years ago

gelistir commented:

Testing on v.1.4.2.0 OS: Win 7 64-bit Using WebMatrix from Web Gallery Default install settings with SQL CE installation. OK, homepage. Admin to dashboard and go to modules and install MultiTenancy module. Click Tenants from Admin Menu Add Tenant

Name: XYZ Host: localhost:20974/XYZ (I guess or am I wrong) At least I tried with default setup, and SQL CE selected OK

then, when I try click it cannot find website or when I click to edit or run setup gets the error.

Server Error in '/' Application.

The specified table does not exist. [ Settings_ShellDescriptorRecord ]

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.SqlServerCe.SqlCeException: The specified table does not exist. [ Settings_ShellDescriptorRecord ]

Source Error:

orchardbot commented 12 years ago

gelistir commented:

Can you also show or write here on how to add tenants under localhost? Especially with random port (because module gets confused with port number and errors like potentially dangerous url detected..) Maybe, I cannot write correct values. So can you write your own repro, too?

Thanks in advance.

orchardbot commented 12 years ago

@sebastienros commented:

Actually when you create a tenant you should use a different domain without specifying the port. Something like http://foo.localhost, or http://127-0-0-1.org.uk which is a loopback domain (will always resolve to 127.0.0.1)