[ https://issues.apache.org/jira/browse/AMQNET-324?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13014520#comment-13014520 ]
Frank Gynnild commented on AMQNET-324: -------------------------------------- Wow, that was quick! Kudos to you for fixing it so quickly. :-) > Add inner exceptions to the NMSException called "Error creating transport" > -------------------------------------------------------------------------- > > Key: AMQNET-324 > URL: https://issues.apache.org/jira/browse/AMQNET-324 > Project: ActiveMQ .Net > Issue Type: Improvement > Components: NMS > Affects Versions: 1.5.0 > Reporter: Frank Gynnild > Assignee: Timothy Bish > Fix For: 1.5.1, 1.6.0 > > > The latest 1.5.0 version of Apache.NMS.ActiveMQ uses reflection to find > connection factories. > However, when there are System.Reflection.ReflectionTypeLoadException (Unable > to load one or more of the requested types.) > being thrown, these exceptions and InnerExceptions are not being encaspulated > and rethrown, so they are kind of difficult to spot. > This can happen if the dll get ILMerged into another assembly, and there are > some issues with this exception. > In TransportFactory.cs: > {code} > try > { > factory = NewInstance(scheme.ToLower()); > } > catch(NMSConnectionException) > { > throw; > } > catch > { > throw new NMSConnectionException("Error > creating transport."); > } > {code} > The NMSConnectionException("Error creating transport.") doesn't tell you the > glory details. > In FactoryFinder.cs, inside the method called private Type > SearchAssembly(Assembly assembly, string factoryId) you have this: > {code} > Type[] types = assembly.GetTypes(); > {code} > This code can throw ReflectionTypeLoadException and it can have multiple > InnerException that will tell you why it is unable to get > the types. It would be awesome if this exception can be propagated up to the > NMSConnectionException as an InnerException. > That way we can trace the real problem much easier. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira