none
1.2.1 Beta Exchange Problems

    Question

  • We have been holding out for WebSitePanel to support Exchange 2010 SP2 on permise exchange mode. Now that the beta is out we isntalled it, but are having some problems.

    We have a DC and and an Exchange 2010 server with SP2 setup and configured with Website Panel 1.2.1 Beta 2, but cannot create mailboxes or contacts (or anything related to Exchange). We get the following error inside of WSP:

    Error creating contact. See audit log for more details.

    System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.Exception: Error executing 'CREATE_CONTACT' task on '' EXCHANGE ---> System.Exception: Error executing 'CREATE_ORG' task on 'MPCP' EXCHANGE ---> System.Exception: Error executing 'CREATE_ORG' task on 'MPCP' EXCHANGE ---> System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.Management.Automation.CmdletInvocationException: Value cannot be null. Parameter name: parameters ---> System.ArgumentNullException: Value cannot be null. Parameter name: parameters at Microsoft.Exchange.Configuration.Tasks.TaskVerboseStringHelper.FormatUserSpecifiedParameters(PropertyBag parameters) at Microsoft.Exchange.Configuration.Tasks.Task.LogCmdletIterationEvent() at Microsoft.Exchange.Configuration.Tasks.Task.BeginProcessing() at System.Management.Automation.Cmdlet.DoBeginProcessing() at System.Management.Automation.CommandProcessorBase.DoBegin() --- End of inner exception stack trace --- at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input) at System.Management.Automation.Runspaces.Pipeline.Invoke() at WebsitePanel.Providers.HostedSolution.Exchange2007.ExecuteShellCommand(Runspace runSpace, Command cmd, Boolean useDomainController, Object[]& errors) at WebsitePanel.Providers.HostedSolution.Exchange2010.OpenRunspace() at WebsitePanel.Providers.HostedSolution.Exchange2007.ExtendToExchangeOrganizationInternal(String organizationId, String securityGroup) at WebsitePanel.Server.ExchangeServer.ExtendToExchangeOrganization(String organizationId, String securityGroup) --- End of inner exception stack trace --- at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at WebsitePanel.Providers.Exchange.ExchangeServer.ExtendToExchangeOrganization(String organizationId, String securityGroup) at WebsitePanel.EnterpriseServer.ExchangeServerController.ExtendToExchangeOrganization(Organization& org) --- End of inner exception stack trace --- at WebsitePanel.EnterpriseServer.ExchangeServerController.ExtendToExchangeOrganization(Organization& org) --- End of inner exception stack trace --- at WebsitePanel.EnterpriseServer.ExchangeServerController.ExtendToExchangeOrganization(Organization& org) at WebsitePanel.EnterpriseServer.ExchangeServerController.CreateContact(Int32 itemId, String displayName, String email) --- End of inner exception stack trace --- at WebsitePanel.EnterpriseServer.ExchangeServerController.CreateContact(Int32 itemId, String displayName, String email) --- End of inner exception stack trace ---


    We turned on extended logging and Windows Event Log shows us errors like this:

    [2/23/2012 2:43:02 PM] ERROR: Exchange CreateOrganizationInternal
    System.Management.Automation.CmdletInvocationException: Value cannot be null.
    Parameter name: parameters ---> System.ArgumentNullException: Value cannot be null.
    Parameter name: parameters
       at Microsoft.Exchange.Configuration.Tasks.TaskVerboseStringHelper.FormatUserSpecifiedParameters(PropertyBag parameters)
       at Microsoft.Exchange.Configuration.Tasks.Task.LogCmdletIterationEvent()
       at Microsoft.Exchange.Configuration.Tasks.Task.BeginProcessing()
       at System.Management.Automation.Cmdlet.DoBeginProcessing()
       at System.Management.Automation.CommandProcessorBase.DoBegin()
       --- End of inner exception stack trace ---
       at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input)
       at System.Management.Automation.Runspaces.Pipeline.Invoke()
       at WebsitePanel.Providers.HostedSolution.Exchange2007.ExecuteShellCommand(Runspace runSpace, Command cmd, Boolean useDomainController, Object[]& errors)
       at WebsitePanel.Providers.HostedSolution.Exchange2010.OpenRunspace()
       at WebsitePanel.Providers.HostedSolution.Exchange2007.ExtendToExchangeOrganizationInternal(String organizationId, String securityGroup)
    


    Log Event 2

    [2/23/2012 2:43:02 PM] ERROR: Exchange Rollback error
    System.Management.Automation.CmdletInvocationException: Value cannot be null.
    Parameter name: parameters ---> System.ArgumentNullException: Value cannot be null.
    Parameter name: parameters
       at Microsoft.Exchange.Configuration.Tasks.TaskVerboseStringHelper.FormatUserSpecifiedParameters(PropertyBag parameters)
       at Microsoft.Exchange.Configuration.Tasks.Task.LogCmdletIterationEvent()
       at Microsoft.Exchange.Configuration.Tasks.Task.BeginProcessing()
       at System.Management.Automation.Cmdlet.DoBeginProcessing()
       at System.Management.Automation.CommandProcessorBase.DoBegin()
       --- End of inner exception stack trace ---
       at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input)
       at System.Management.Automation.Runspaces.Pipeline.Invoke()
       at WebsitePanel.Providers.HostedSolution.Exchange2007.ExecuteShellCommand(Runspace runSpace, Command cmd, Boolean useDomainController, Object[]& errors)
       at WebsitePanel.Providers.HostedSolution.Exchange2010.OpenRunspace()
       at WebsitePanel.Providers.HostedSolution.Exchange2007.RollbackTransaction(ExchangeTransaction transaction)
    


    Log Event 3

    [2/23/2012 2:43:02 PM] ERROR: 'Hosted Microsoft Exchange Server 2010' ExtendToExchangeOrganization
    System.Management.Automation.CmdletInvocationException: Value cannot be null.
    Parameter name: parameters ---> System.ArgumentNullException: Value cannot be null.
    Parameter name: parameters
       at Microsoft.Exchange.Configuration.Tasks.TaskVerboseStringHelper.FormatUserSpecifiedParameters(PropertyBag parameters)
       at Microsoft.Exchange.Configuration.Tasks.Task.LogCmdletIterationEvent()
       at Microsoft.Exchange.Configuration.Tasks.Task.BeginProcessing()
       at System.Management.Automation.Cmdlet.DoBeginProcessing()
       at System.Management.Automation.CommandProcessorBase.DoBegin()
       --- End of inner exception stack trace ---
       at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input)
       at System.Management.Automation.Runspaces.Pipeline.Invoke()
       at WebsitePanel.Providers.HostedSolution.Exchange2007.ExecuteShellCommand(Runspace runSpace, Command cmd, Boolean useDomainController, Object[]& errors)
       at WebsitePanel.Providers.HostedSolution.Exchange2010.OpenRunspace()
       at WebsitePanel.Providers.HostedSolution.Exchange2007.ExtendToExchangeOrganizationInternal(String organizationId, String securityGroup)
       at WebsitePanel.Server.ExchangeServer.ExtendToExchangeOrganization(String organizationId, String securityGroup)
    

    We thought the problem might be with permissions with AD, but it appears that Organizational units are being made just fine. Appears the problem is with communicating with Exchange?

    We are unsure and any help is greatly appreciated. Thanks guys!

    jeudi 23 février 2012 22:53

Réponses

  • Update:
    A silly error on our part. We were looking through errors in the event logs and not warnings. Not sure how we filtered that out by accident!

    Event logs showed that WSP was looking for a Public Folder entry and could find none (Did not check clients older than 2003 during install). I created a Public Folder and was able to get mailboxes to create now for the different organizations.

    I've found one thing: In OWA the GAL appear to be separated but in Outlook, you are able to see all users from different organizations and address lists. Can anyone comment on this? Is this expected behavior? Is there a way to make Outlook also not see other organizations as OWA does?


    lundi 27 février 2012 20:55

Toutes les réponses

  • Hi

    I'm not sure if you have solved this or not but I'll be doing the same later on today or sometime early next week and will let you know if there is a general issue or not with the beta.

    Prior to that have you checked that your WSP account is a member of the Exchange Org Management security group or whatever its called now!

    Adam

    samedi 25 février 2012 15:59
  • Hi Adam42,

    Thanks for your reply! I have made sure that the WSP account is a member of Organization Management Group. I have even deployed another environment where I made the DC, Exchange and WSP on the same single server and applied same process with same error.

    Any other ideas?

    lundi 27 février 2012 17:11
  • Hi

    Are you sure you are definitely running the beta 1.2.1 components i.e. you have made changes to the web.config file and run an update?

    I experienced some similar issues and later found I was running 1.2.1 installer but only 1.2.0 components. For some reason it took a few attempts to pick up the beta components as well.

    Also are you definitely running Exchange 2010 SP2?

    You have hosted organisation/system and Exchange 2010 services (Not hosting mode) installed on your servers and have a virtual server setup with all these?

    Your WP Server account for Exchange is in the local admins group?

    Just some brain dumps really. We tested this and it worked fine apart from the ABP support which could be made better. Looks like when WSP creates the ABP policy the All Rooms gets dumped into it, which opens up all room mailboxes to the tenants.

    Adam

    lundi 27 février 2012 18:31
  • Hi Adam,

    We added the changes to web.config and I can confirm that we did in fact install 1.2.1

    We are running Exchange version 14.02.00.247.005 which is Exchange 2010 SP2 and we installed regular on premise mode (non /hosting switch). We for sure are using the Hosted Exchange Provider 2010.

    Virtual is setup with Hosted Organization, System OS and Hosted Exchange (One box). We originally had them separated out but for testing purposes we tried an environment with just one box.

    WP Server account has access to Administrators (Builtin for DC), Domain Admins, Domain Users, Enterprise Admins, IIS_IUSRS and Organization Management.

    In summary, I am sure perhaps we are doing something wrong but I can't figure out what it is!

    The error we are seeing is:

    System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.Exception: Error executing 'CREATE_USER' task on '' ORGANIZATION ---> System.Exception: Error executing 'CREATE_ORG' task on 'Test' EXCHANGE ---> System.Exception: Error executing 'CREATE_ORG' task on 'Test' EXCHANGE ---> System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.ArgumentException: Execution result does not contain any object at WebsitePanel.Providers.HostedSolution.Exchange2007.GetResultObjectDN(Collection`1 result) at WebsitePanel.Providers.HostedSolution.Exchange2007.CreateOfflineAddressBook(Runspace runSpace, String organizationId, String server, String oabVirtualDirs) at WebsitePanel.Providers.HostedSolution.Exchange2007.CreateOrganizationOfflineAddressBookInternal(String organizationId, String securityGroup, String oabVirtualDir) at WebsitePanel.Server.ExchangeServer.CreateOrganizationOfflineAddressBook(String organizationId, String securityGroup, String oabVirtualDir) --

    Specifically, the problem appears to be " Server was unable to process request. ---> System.ArgumentException: Execution result does not contain any object at WebsitePanel.Providers...."

    Any one have any other ideas?

    lundi 27 février 2012 19:16
  • Update:
    A silly error on our part. We were looking through errors in the event logs and not warnings. Not sure how we filtered that out by accident!

    Event logs showed that WSP was looking for a Public Folder entry and could find none (Did not check clients older than 2003 during install). I created a Public Folder and was able to get mailboxes to create now for the different organizations.

    I've found one thing: In OWA the GAL appear to be separated but in Outlook, you are able to see all users from different organizations and address lists. Can anyone comment on this? Is this expected behavior? Is there a way to make Outlook also not see other organizations as OWA does?


    lundi 27 février 2012 20:55
  • Is Exchange operating OK otherwise, can you create an OAB and an address list, any errors in the applications logs?

    Are your web services responsive. You could try browsing to https://server.company.com/EWS/Exchange.asmx and see what that comes back with and you could also try browsing to the OAB virtual directory <a href="https://server.company.com/oab//oab.xml">https://server.company.com/oab/<guid>/oab.xml and see if that responds correctly.

    Clutching at straws...........Do you have any AV installed that will likely block WSP?

    Thanks

    Adam

    lundi 27 février 2012 21:09
  • Glad you got it sorted in the end. in regard to your other issue, can you see an ABP in the EMC?

    Did you enable ABP support?

    do you see an ABP for the tenant org in EMC?

    Adam

    lundi 27 février 2012 21:36
  • By "Did you enable ABP support" do you mean adding the two lines to web.config? If so, yes we did do that.

    There are two Address Book Policies shown in the EMC. One for each of the two organizations we created. However, in Outlook Organization A user account can see Organization B distribution list and username.

    However, in OWA it correctly separates both organizations and does not show users/lists from the other organization. Any thoughts on this?

    Thanks a million for your help Adam!

    mardi 28 février 2012 01:19
  • I noticed this from this link

    "Don’t run the Client Access server role on the global catalog server. Doing so results in Active Directory being used for Name Service Provider Interface (NSPI) instead of the Microsoft Exchange Address Book service. "

    This test environment has Exchange on the DC. I think this might be to blame for the ABP not working? I will use a separate exchange box and report back.

    mardi 28 février 2012 16:28
  • Chris,

    I also encountered the same problem of having Organization A user account to see Organization B user and distribution lists. But, this problem does not happen in OWA. In another word, address book segregration works in OWA, but not in Outlook 2007/2010.

    Now, in my setup, I have three separated machines, 1) WSP Enterprise/Portal server, 2) AD DC, 3) Exchange 2010 SP2. All are using default settings including the ACL in the domain root, and tenant OU in AD. WSP v1.2.1.2 (v1.2.1 beta 2) is used with modifying the web.config file in WSP server as below:

    <add key="WebsitePanel.Exchange.ClearQueryBaseDN" value="true" />
    <add key="WebsitePanel.Exchange.enableSP2abp" value="true" />

    Any ideas from others? Thanks.

    mercredi 29 février 2012 06:02
  • @Simonkw: We recreated the environment and did NOT setup Exchange on the DC. This helped resolve the problem of Outlook not separating organization data. Also, make sure that you are not re-adding those two <add key=> lines. They already exist in the config file. Simply change the values to true and run iisreset.


    One more problem we are having:
    We can get mailboxes to connect to Outlook from the FIRST organization created, however any mailboxes or any organization after will not resolve when setting up Exchange in Outlook (2010).  Outlook responds with error "The name cannot be matched to a name in the address list". However, if we force Outlook to always prompt for credentials it appears to work.

    This problem is exactly as outlined here

    Can someone with knowledge on this please shine some light? A user in that thread says "I removed the permissions from the default global address list and now it works fine." What does he mean by he removed the permission from the global address list?

    mercredi 29 février 2012 19:08
  • Can you confirm that this method also needs to be applied when dealing with Exchange 2010 SP2 with 1.2.1 On Premise ABP support?
    jeudi 1 mars 2012 19:22
  • The answer is yes.
    vendredi 2 mars 2012 20:18