|
From: <fab...@us...> - 2011-03-23 21:48:57
|
Revision: 5514
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5514&view=rev
Author: fabiomaulo
Date: 2011-03-23 21:48:51 +0000 (Wed, 23 Mar 2011)
Log Message:
-----------
Fix NH-2580
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate/Event/Default/DefaultLoadEventListener.cs
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2580/
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2580/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2580/Mappings.hbm.xml
Modified: trunk/nhibernate/src/NHibernate/Event/Default/DefaultLoadEventListener.cs
===================================================================
--- trunk/nhibernate/src/NHibernate/Event/Default/DefaultLoadEventListener.cs 2011-03-23 18:41:28 UTC (rev 5513)
+++ trunk/nhibernate/src/NHibernate/Event/Default/DefaultLoadEventListener.cs 2011-03-23 21:48:51 UTC (rev 5514)
@@ -41,7 +41,13 @@
if (persister == null)
{
- throw new HibernateException("Unable to locate persister: " + @event.EntityClassName);
+
+ var message = new StringBuilder(512);
+ message.AppendLine(string.Format("Unable to locate persister for the entity named '{0}'.", @event.EntityClassName));
+ message.AppendLine("The persister define the persistence strategy for an entity.");
+ message.AppendLine("Possible causes:");
+ message.AppendLine(string.Format(" - The mapping for '{0}' was not added to the NHibernate configuration.", @event.EntityClassName));
+ throw new HibernateException(message.ToString());
}
if (persister.IdentifierType.IsComponentType)
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2580/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2580/Fixture.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2580/Fixture.cs 2011-03-23 21:48:51 UTC (rev 5514)
@@ -0,0 +1,23 @@
+using NUnit.Framework;
+using SharpTestsEx;
+
+namespace NHibernate.Test.NHSpecificTest.NH2580
+{
+ public class Fixture: BugTestCase
+ {
+ private class MyClass
+ {
+
+ }
+
+ [Test]
+ public void WhenPersisterNotFoundShouldThrowAMoreExplicitException()
+ {
+ using (var s = OpenSession())
+ {
+ var exeption = s.Executing(x=> x.Get<MyClass>(1)).Throws<HibernateException>().Exception;
+ exeption.Message.ToLowerInvariant().Should().Contain("possible cause");
+ }
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2580/Mappings.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2580/Mappings.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2580/Mappings.hbm.xml 2011-03-23 21:48:51 UTC (rev 5514)
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
+
+</hibernate-mapping>
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-23 18:41:28 UTC (rev 5513)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-23 21:48:51 UTC (rev 5514)
@@ -657,6 +657,7 @@
<Compile Include="NHSpecificTest\NH2530\Fixture.cs" />
<Compile Include="NHSpecificTest\NH2565\Domain.cs" />
<Compile Include="NHSpecificTest\NH2565\Fixture.cs" />
+ <Compile Include="NHSpecificTest\NH2580\Fixture.cs" />
<Compile Include="NHSpecificTest\Properties\CompositePropertyRefTest.cs" />
<Compile Include="NHSpecificTest\Properties\DynamicEntityTest.cs" />
<Compile Include="NHSpecificTest\Properties\Model.cs" />
@@ -2479,6 +2480,7 @@
<EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" />
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="NHSpecificTest\NH2580\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2390\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2491\Mappings.hbm.xml" />
<EmbeddedResource Include="Insertordering\Mapping.hbm.xml" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|