Error on login to axapta 'Microsoft.Dynamics.BusinessConnectorNet.LogonFailedException'

1.9k views Asked by At

I have an ASP.net webforms project that connects to axapta 2009 through Business Connector file version (5.0.1500.4570). Everything was ok until suddenly I started having this error

    'Microsoft.Dynamics.BusinessConnectorNet.LogonFailedException' occurred in ******.dataaccess.dll but was not handled in user code

       at b2b.logosoft.com.tr.dataaccess.AxaptaConnectorHelper.AxaptaObject() in d:\Projects\B2B\b2b.logosoft.com.tr.site\b2b.logosoft.com.tr.dataaccess\AxaptaConnectorHelper.cs:line 29
   at b2b.logosoft.com.tr.dataaccess.CurrencyDataAccess.GetCurrency(String fromcurrency, String tocurrency) in d:\Projects\B2B\b2b.logosoft.com.tr.site\b2b.logosoft.com.tr.dataaccess\CurrencyDataAccess.cs:line 14
   at b2b.logosoft.com.tr.businessmanager.CurrencyService.GetCurrencyRate(String fromcurrency, String tocurrency) in d:\Projects\B2B\b2b.logosoft.com.tr.site\b2b.logosoft.com.tr.businessmanager\CurrencyService.cs:line 17
   at b2b.logosoft.com.tr.businessmanager.CurrencyService.GetRates() in d:\Projects\B2B\b2b.logosoft.com.tr.site\b2b.logosoft.com.tr.businessmanager\CurrencyService.cs:line 80
   at b2b.logosoft.com.tr.site.UserControls.Header.Page_Load(Object sender, EventArgs e) in d:\Projects\B2B\b2b.logosoft.com.tr.site\b2b.logosoft.com.tr.site\UserControls\header.ascx.cs:line 34
   at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)

The Output is:

 'iisexpress.exe' (CLR v4.0.30319: /LM/W3SVC/2/ROOT-1-131200350151628806): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_32\System.Transactions\v4.0_4.0.0.0__b77a5c561934e089\System.Transactions.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'iisexpress.exe' (CLR v4.0.30319: /LM/W3SVC/2/ROOT-1-131200350151628806): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Numerics\v4.0_4.0.0.0__b77a5c561934e089\System.Numerics.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'iisexpress.exe' (CLR v4.0.30319: /LM/W3SVC/2/ROOT-1-131200350151628806): Loaded 'C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.8387_none_5094ca96bcb6b2bb\msvcm90.dll'. Cannot find or open the PDB file.
'iisexpress.exe' (CLR v4.0.30319: DefaultDomain): Loaded 'C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.8387_none_5094ca96bcb6b2bb\msvcm90.dll'. Cannot find or open the PDB file.
'iisexpress.exe' (CLR v4.0.30319: DefaultDomain): Loaded 'C:\Windows\assembly\GAC_32\Microsoft.Dynamics.BusinessConnectorNet\5.0.0.0__31bf3856ad364e35\Microsoft.Dynamics.BusinessConnectorNet.dll'. Cannot find or open the PDB file.
A first chance exception of type 'Microsoft.Dynamics.BusinessConnectorNet.LogonFailedException' occurred in Microsoft.Dynamics.BusinessConnectorNet.dll
A first chance exception of type 'Microsoft.Dynamics.BusinessConnectorNet.LogonFailedException' occurred in b2b.logosoft.com.tr.dataaccess.dll
A first chance exception of type 'System.Threading.ThreadAbortException' occurred in mscorlib.dll
A first chance exception of type 'Microsoft.Dynamics.BusinessConnectorNet.LogonFailedException' occurred in Microsoft.Dynamics.BusinessConnectorNet.dll
A first chance exception of type 'Microsoft.Dynamics.BusinessConnectorNet.LogonFailedException' occurred in b2b.logosoft.com.tr.dataaccess.dll
'iisexpress.exe' (CLR v4.0.30319: /LM/W3SVC/2/ROOT-1-131200350151628806): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualStudio.Debugger.Runtime\12.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.Debugger.Runtime.dll'. 
'iisexpress.exe' (CLR v4.0.30319: /LM/W3SVC/2/ROOT-1-131200350151628806): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualStudio.DebuggerVisualizers\12.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.DebuggerVisualizers.dll'. Cannot find or open the PDB file.

Here is the connector helper class:

public class AxaptaConnectorHelper
{
    #region Class Properties
    public static Axapta Ax { get; set; }
    public static string UserName { get { return AxaptaConnectionInfo.AxUserName; } }
    public static string Password { get { return AxaptaConnectionInfo.AxPassword; } }
    public static string Domain { get { return AxaptaConnectionInfo.AxDomain; } }
    public static string Company { get { return AxaptaConnectionInfo.AxCompany; } }
    public static string Aos { get { return AxaptaConnectionInfo.AxAos; } }
    #endregion
    public Axapta AxaptaObject()
    {
        try
        {
            var nc = new NetworkCredential(UserName, Password, Domain);
            Ax = new Axapta();
            Ax.LogonAs(UserName, Domain, nc, Company, "", Aos, "");
        }
        catch (Exception ex)
        {
            Ax = null;
            throw ex;
        }
        return Ax;
    }
}

I have tried the following:

  1. Clean the solution and rebuild
  2. Remove the reference for the Business connector and then rebuild
  3. Added the reference for the Business connector for all the projects in my solution
  4. Changed the Build property Platform Target to x86 for all the projects
  5. Cleaned the Temp folder for the project

Nothing seems to solve the problem.

1

There are 1 answers

5
Tom V On

A LogonFailedException simply means your objAX.Logon() or objAX.LogonAs() has failed. This usually doesn't have anything to do with the build or temp folders but with your code not actually being able to connect to the AOS using your hostname/port/configuration or username.

You don't show the actual code calling logon/logonas but your code either doesn't find the AOS or can't log on to it using the username/password you provide or your service/execution account.

Make sure the service is running, you can connect to it (i.e. no firewall) and the user is not disabled or locked in Active Directory and still a user in AX.

Come to think of it, the AOS (maybe part of a cluster) could be rejecting connections known as draining