Exchange server connection between Sage CRM 7.2 and Outlook2010 (Second stage is invalid)

I am creating a new exchange server connection between Sage CRM 7.2 and Outlook2010 where i have to provide 4 pieces of information.

Exchange Web Service URL: https://remote.crm-software.ie

Exchange Server User Name: current name of the windows logon account

Domain: cbsdev

Password: current password of the windows logon account

When i try to save the connection the first stage is passed however the second stage is not.

This stage : The Sync Engine is attempting to create the connection to the Exchange Server. Please wait...

Error message : The Exchange Server connection could not be saved as the Sync Engine was unable to contact the Exchange Web Service. Please refer to the Exchange Server Integration chapter of the System Administration Guide for information on possible causes of the unavailability of the Exchange Web Service.

Where could the problem be? Is there some kind of step-by-step approach guide?

Can you please help me?

  • 0

    I have the same issue and a case with sage. The method now is to authenticate with the primary smtp details for the exchange user.

    But that's not viable for my site at the moment.

  • 0

    Hi MichalPoncak,

    Thanks for your post, can you confirm that you have exposed the EWS virtual directory as per the System Administrator guide which is available https://community.sagecrm.com/user_community/m/72_documentation/25771.aspx?

    The exchange connection steps are specifically in section 36-3 which covers Exchange 2007 and Exchange 2010.

    If you need further assistance please let me know.

    Regards

    Chris

  • 0

    Hi,

    You'll see more details in the ewaresystem.log - basically, you'll be expecting to see an error message stating that you should check the impersonated user email. There's a case raised with Development regarding using the primary SMTP address for the impersonated user account - generally, we'd suggest changing the primary SMTP address for the mailbox to user@domain. This email address isn't used to send any emails from Exchange, and won't appear in emails sent to customers, assuming you're using a machine account for the impersonated user account (i.e. it's not a real user's account).

    Thanks,

    Rob

  • 0

    Hi Rob,

    Thanks for the suggestion but that didn't work for me.

    This time i used the following info:

    Exchange Web Service URL: remote.crm-software.ie/.../Exchange.asmx (+ i also tested this link on a web browser where i had to provide user credentials and after that i could see an XML file)

    Exchange Server User Name: cbsadmin (+ i also checked for SMTP address in my exchange server and tried [email protected] but that didnt work either)

    Domain: cbsdev

    Password: current password of the windows logon account

    In addition as suggested i also checked ewaresystem.log file and this was the output for 'cbsadmin' username:

    Jan 2 2014 16:05:15.265 2272 4640 3 eWareBaseObject.Logon,LogonID EscalationService

    Jan 2 2014 16:05:15.858 2272 4640 3 CoeWareBase,Time 593

    Jan 2 2014 16:05:40.085 1948 276 4 StartUserAction,User,Action 1 1941

    Jan 2 2014 16:05:40.085 1948 276 5 START - doEndpointGet URL: CBS-DEV-SRV2/.../status

    Jan 2 2014 16:05:41.108 1948 276 5 FINISHED - doEndpointGet finished URL: CBS-DEV-SRV2/.../status

    Jan 2 2014 16:05:41.109 1948 276 1 CRMOpenThreadTokenWinVista

    Jan 2 2014 16:05:41.109 1948 276 5 START - doEndpointGet URL: CBS-DEV-SRV2/.../checkExchangeWebSiteAvailability

    Jan 2 2014 16:05:41.624 1948 276 5 FINISHED - doEndpointGet finished URL: CBS-DEV-SRV2/.../checkExchangeWebSiteAvailability

    Jan 2 2014 16:05:41.627 1948 276 1 CRMOpenThreadTokenWinVista

    Jan 2 2014 16:05:41.627 1948 276 5 START - doEndpointGet URL: CBS-DEV-SRV2/.../checkExchangeConnection

    Jan 2 2014 16:05:42.668 1948 276 5 FINISHED - doEndpointGet finished URL: CBS-DEV-SRV2/.../checkExchangeConnection

    Jan 2 2014 16:05:42.669 1948 276 5 ERROR: checkConnection

    CODE: 302

    URL : CBS-DEV-SRV2/.../checkExchangeConnection

    MSG : 302

    Jan 2 2014 16:05:42.999 1948 276 4 EndUserAction,User,Action,Time 1 1941 2933

    Kind Regards,

    Michal

  • 0

    Your default SMTP address in exchange impersonated mailbox should look like cbsadmin@cbsdev . Also please make sure the 'hide email from global address list' check box is not enabled in mail box properties area.

  • 0

    Thanks for the suggestion Dinesh but that didnt work for me either. No matter what login details i will use, good or wrong it will always produce the same error message.

  • 0

    Hi Michal,

    Sorry about the delay getting back to you on this. I know you mentioned that you're using SSL for the EWS URL in your first post, but that HTTP 302 you're getting back in the last set of logs looks interesting. I'm guessing that the Exchange box is trying to redirect you to a HTTPS schema. Can you recheck for me that you have the URL going to remote.crm-software.ie/.../Exchange.asmx

    If that doesn't work, you can enable CXF logging, which should show the communication between the synch engine and Exchange. You'll see that the requests out, and the responses returned will be tagged with a request ID, so it's pretty easy to match them up with each other.

    In ..\CRM\tomcat\webapps\crmExchangeSyncEngine\WEB-INF\log4j.properties replace the word ERROR with the word DEBUG:

    #cxf logging

    log4j.logger.org.apache.cxf=ERROR, cxfgeneral

    log4j.appender.cxfgeneral=com.sage.scrm.scrmcommons.util.DateFormatFileAppender

    log4j.appender.cxfgeneral.FileDateTimePattern=\yyyyMMdd\'cxf-general.log\'

    log4j.appender.cxfgeneral.File=${log.dir}/Exchange Integration/cxf-general.log

    log4j.appender.cxfgeneral.DatePattern=${roll.pattern.daily}

    log4j.appender.cxfgeneral.append=true

    log4j.appender.cxfgeneral.layout=org.apache.log4j.PatternLayout

    log4j.appender.cxfgeneral.layout.ConversionPattern=%d{${datestamp}} [%t] %-5p %C.%M %m%n

    log4j.appender.cxfgeneral.Encoding=UTF-8

    #cxf logging inbound traffic

    log4j.logger.org.apache.cxf.interceptor.LoggingInInterceptor=ERROR, ininterceptor

    log4j.appender.ininterceptor=com.sage.scrm.scrmcommons.util.DateFormatFileAppender

    log4j.appender.ininterceptor.FileDateTimePattern=\yyyyMMdd\'cxf-ininterceptor.log\'

    log4j.appender.ininterceptor.File=${log.dir}/Exchange Integration/cxf-ininterceptor.log

    log4j.appender.ininterceptor.DatePattern=${roll.pattern.daily}

    log4j.appender.ininterceptor.append=true

    log4j.appender.ininterceptor.layout=org.apache.log4j.PatternLayout

    log4j.appender.ininterceptor.layout.ConversionPattern=%d{${datestamp}} [%t] %-5p %C.%M %m%n

    log4j.appender.ininterceptor.Encoding=UTF-8

    #cxf logging outbound traffic

    log4j.logger.org.apache.cxf.interceptor.LoggingOutInterceptor=ERROR, outinterceptor

    log4j.appender.outinterceptor=com.sage.scrm.scrmcommons.util.DateFormatFileAppender

    log4j.appender.outinterceptor.FileDateTimePattern=\yyyyMMdd\'cxf-outinterceptor.log\'

    log4j.appender.outinterceptor.File=${log.dir}/Exchange Integration/cxf-outinterceptor.log

    log4j.appender.outinterceptor.DatePattern=${roll.pattern.daily}

    log4j.appender.outinterceptor.append=true

    log4j.appender.outinterceptor.layout=org.apache.log4j.PatternLayout

    log4j.appender.outinterceptor.layout.ConversionPattern=%d{${datestamp}} [%t] %-5p %C.%M %m%n

    log4j.appender.outinterceptor.Encoding=UTF-8

    Restart Tomcat. New logs will be generated in ..\Logs\Exchange Integration\

    Thanks,

    Rob

  • 0

    Hi Rob,

    Yes, when i use remote.crm-software.ie/.../Exchange.asmx after successful logo-in ill be redirected to remote.crm-software.ie/.../Services.wsdl, The same scenario applies when i use remote.crm-software.ie/.../Exchange.asmx. Both links are working when accessed from a web browser.

    I changed the word 'ERROR' in the file as suggested. I assume that CXF logging is enabled by changing the words.

    I also restarted tomcat server

    When using remote.crm-software.ie/.../Exchange.asmx link in Sage CRM this is the output:

    (standard log)

    Jan 10 2014 12:06:35.801 5400 4896 4 StartUserAction,User,Action 1 1941

    Jan 10 2014 12:06:35.810 5400 4896 5 START - doEndpointGet URL: CBS-DEV-SRV2/.../status

    Jan 10 2014 12:06:36.851 5400 4896 5 FINISHED - doEndpointGet finished URL: CBS-DEV-SRV2/.../status

    Jan 10 2014 12:06:36.852 5400 4896 1 CRMOpenThreadTokenWinVista

    Jan 10 2014 12:06:36.852 5400 4896 5 START - doEndpointGet URL: CBS-DEV-SRV2/.../checkExchangeWebSiteAvailability

    Jan 10 2014 12:06:37.503 5400 4896 5 FINISHED - doEndpointGet finished URL: CBS-DEV-SRV2/.../checkExchangeWebSiteAvailability

    Jan 10 2014 12:06:37.505 5400 4896 1 CRMOpenThreadTokenWinVista

    Jan 10 2014 12:06:37.505 5400 4896 5 START - doEndpointGet URL: CBS-DEV-SRV2/.../checkExchangeConnection

    Jan 10 2014 12:06:38.665 5400 4896 5 FINISHED - doEndpointGet finished URL: CBS-DEV-SRV2/.../checkExchangeConnection

    Jan 10 2014 12:06:38.665 5400 4896 5 ERROR: checkConnection

    CODE: 302

    URL : CBS-DEV-SRV2/.../checkExchangeConnection

    MSG : 302

    Jan 10 2014 12:06:39.002 5400 4896 4 EndUserAction,User,Action,Time 1

    (exchangesyncdefault file log in Exchange Integration folder)........................................................................................................................................................................................

    2014-01-10/12:16:07.160/GMT [Timer-0] DEBUG com.mchange.v2.resourcepool.BasicResourcePool$CheckIdleResourcesTask.run Refurbishing idle resources - Fri Jan 10 12:16:07 GMT 2014 [com.mchange.v2.resourcepool.BasicResourcePool@1d7aa76]

    2014-01-10/12:16:07.160/GMT [Timer-0] DEBUG com.mchange.v2.resourcepool.BasicResourcePool.trace trace com.mchange.v2.resourcepool.BasicResourcePool@1d7aa76 [managed: 5, unused: 5, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@3fc6c)

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Testing PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@1d2d699] on IDLE CHECK.

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Testing PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@106e721] on IDLE CHECK.

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Testing PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@3fc6c] on IDLE CHECK.

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Test of PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@1d2d699] on IDLE CHECK has SUCCEEDED.

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Test of PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@106e721] on IDLE CHECK has SUCCEEDED.

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Test of PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@3fc6c] on IDLE CHECK has SUCCEEDED.

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Testing PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@e87cca] on IDLE CHECK.

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Testing PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@1b124d2] on IDLE CHECK.

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Test of PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@e87cca] on IDLE CHECK has SUCCEEDED.

    2014-01-10/12:16:07.160/GMT [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] DEBUG com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.finerLoggingTestPooledConnection Test of PooledConnection [com.mchange.v2.c3p0.impl.NewPooledConnection@1b124d2] on IDLE CHECK has SUCCEEDED.

    (20140110exchangesynch log file in Exchange Integration folder)...........................................................................................................................................................................

    ERROR [http-apr-10009-exec-2]: 10-Jan-2014 12:19:06.105 ewsUrl: remote.crm-software.ie/.../Exchange.asmx, operation: checkExchangeConnection, error: , action: ESTABLISHING_CONNECTION_EWS_ENDPOINT

    ERROR [http-apr-10009-exec-5]: 10-Jan-2014 12:19:06.160 ewsUrl: remote.crm-software.ie/.../Exchange.asmx, operation: checkExchangeConnection, error: , action: ESTABLISHING_CONNECTION_EWS_ENDPOINT

    (20140110exchangesyncengine log file in Exchange Integration folder)...................................................................................................................................................................

    2014-01-10/12:19:04.457/GMT [http-apr-10009-exec-10] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.457/GMT [http-apr-10009-exec-10] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.473/GMT [http-apr-10009-exec-10] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.962/GMT [http-apr-10009-exec-10] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.962/GMT [http-apr-10009-exec-10] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.962/GMT [http-apr-10009-exec-10] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.962/GMT [http-apr-10009-exec-10] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.966/GMT [http-apr-10009-exec-10] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.967/GMT [Logging Thread] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.977/GMT [http-apr-10009-exec-1] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.977/GMT [http-apr-10009-exec-1] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:04.989/GMT [http-apr-10009-exec-1] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:05.906/GMT [http-apr-10009-exec-1] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:05.906/GMT [http-apr-10009-exec-1] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:05.906/GMT [http-apr-10009-exec-1] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:05.906/GMT [http-apr-10009-exec-1] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:05.911/GMT [http-apr-10009-exec-1] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:06.110/GMT [Logging Thread] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:54.114/GMT [Task Scheduler thread] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:54.114/GMT [Task Scheduler thread] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:54.114/GMT [Task Scheduler thread] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init

    2014-01-10/12:19:54.114/GMT [Task Scheduler thread] DEBUG com.sage.scrm.syncengine.core.context.AppContext.init