Quantcast
Channel: Exchange Server Development forum
Viewing all 7132 articles
Browse latest View live

REST API + inline images

$
0
0

Hi,

I am trying to display (in my C# app) messages received via REST API with inline images (image in body html with src="cid:image001.png@01D0349B.665C13B0").

I can see no image/attachments in message.

Can u pls advise?

tnx

MK


From None Sender

$
0
0

I have Exchange 2010 SP3 and when i try to see queue i found MSG from empty sender and i install exchange anti spam and choose Block MSG that didn't have sender information BUT still see MSG from empty sender so what can i do :)  .

PIC

How to count number of attachments in a mailbox?

$
0
0

Hi everybody,

I want to count the number of attachments in mailbox. Kindly help me.

Thanks & regards,

Talib Hussain




Microsoft Exchange Server 2013 Cumulative Update 7 Setup - Active Directory Topology service on server 'TopologyClientTcpEndpoint (localhost)' returned an error - Set-SharedConfigDC

$
0
0

What am I trying to do?

I have tried installing Microsoft Exchange Server 2013 Cumulative Update 7 Setup on a fresh install of Windows Server 2012 R2 but it gets stuck when running the setup exe on Step 8 of 14 “Mailbox Transport Service” I have included full error logs at the bottom of the page but the basics are in order it will throw which loop around are:

 

[01/20/2015 17:13:20.0084] [2] Beginning processing Set-SharedConfigDC

[01/20/2015 17:13:20.0178] [2] The call to Microsoft Exchange Active Directory Topology service on server 'TopologyClientTcpEndpoint (localhost)' returned an error. Error details No Minimal Required Number of Suitable Directory Servers Found in Forest mydomain.com Site Default-First-Site and connected Sites..

[01/20/2015 17:13:20.0178] [2] No Minimal Required Number of Suitable Directory Servers Found in Forest mydomain.com Site Default-First-Site and connected Sites.

 

Exchange is currently running in the envirmonet on 2010 Sp3 I am installing 2013 CU7 fresh so I can migrate the databases over.

 

What am I running?

2 X DC on domain and forest functional level 2008R2 both writable

1 X fresh install of Windows 2012 R2 which is domain joined

What have I tried?

  • Checked Ipv6 is enabled on all DC NICS and Existing Exchange Servers
  • Rebooted every server
  • Run setup as Administrator
  • My account is part of the domain Enterprise Admin group
  • Tried adding "Exchange Server" or "Exchange Enterprise Servers" to the group policy and doing the relevant gpupdate /force and reboot :

Computer ConfigurationWindows SettingsSecurity Settings+ Local PoliciesUser Rights AssignmentMange auditing and security log

  • Turned off firewall on DC and Exchange Server even stopped the service
  • Turned off all AV on the DC and Exchange Server
  • Checked I could telnet to global catalog servers on port 3268 which I can
  • Checked the global catalog records existed in DNS which they all do
  • Done the obvious ping tests all round which confirms connectivity
  • Schema has been prepared using appropriate commands before running the setup exe

 

setup.exe /PrepareSchema /IacceptExchangeServerLicenseTerms

  • Making sure the following path has full permissions:

EXCHANGE14:\Current\Release\Shared\Datacenter\Setup

  • Restarted Microsoft Exchange Active Directory Topology service
  • DcDiag all looks good

 

 

What have I noticed that is suspicious?

  • Microsoft Exchange Transport service will not start even though both of its dependences services have started:

Microsoft Filtering Management Service

Microsoft Exchange Active Directory Topology Service

It will eventually error with

“Windows could not start the Microsoft Exchange Transport Service on local computer

Error 1053: This Service did not respond to the start of control request in a timely fashion”

 

 

 

 

 

 

 

 

 

 

 

 

 

 

This error is from the GUI wizard itself:

Error:

The following error was generated when "$error.Clear();

         $maxWait = New-TimeSpan -Minutes 8

         $timeout = Get-Date;

         $timeout = $timeout.Add($maxWait);

         $currTime = Get-Date;

         $successfullySetConfigDC = $false;

 

         while($currTime -le $timeout)

         {

           $setSharedCDCErrors = @();

           try

           {

             Set-SharedConfigDC -DomainController $RoleDomainController -ErrorVariable setSharedCDCErrors -ErrorAction SilentlyContinue;

             $successfullySetConfigDC = ($setSharedCDCErrors.Count -eq 0);

 

             if($successfullySetConfigDC)

             {

               break;

             }

             Write-ExchangeSetupLog -Info ("An error ocurred while setting shared config DC. Error: " + $setSharedCDCErrors[0]);

           }

           catch

           {

             Write-ExchangeSetupLog -Info ("An exception ocurred while setting shared config DC. Exception: " + $_.Exception.Message);

           }

 

           Write-ExchangeSetupLog -Info ("Waiting 30 seconds before attempting again.");

           Start-Sleep -Seconds 30;

           $currTime = Get-Date;

         }

 

         if( -not $successfullySetConfigDC)

         {

           Write-ExchangeSetupLog -Error "Unable to set shared config DC.";

         }

       " was run: "System.Exception: Unable to set shared config DC.

  at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target, Boolean reThrow, String helpUrl)

  at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target)

  at Microsoft.Exchange.Management.Deployment.WriteExchangeSetupLog.InternalProcessRecord()

  at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__b()

  at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".

 

 

 

 

 

Exchange logs which have been written:

**The error will loop around for 8 minutes on trying to set-sharedconfig DC whatever this is trying to do ??

 

[01/20/2015 17:13:20.0084] [2] Active Directory session settings for 'Set-SharedConfigDC' are: View Entire Forest: 'True', Configuration Domain Controller:mydomain.com', Preferred Global Catalog: 'mydomain.com', Preferred Domain Controllers: '{ mydomain.com}'

[01/20/2015 17:13:20.0084] [2] User specified parameters: -DomainController:mydomain.com' -ErrorVariable:'setSharedCDCErrors' -ErrorAction:'SilentlyContinue'

[01/20/2015 17:13:20.0084] [2] Beginning processing Set-SharedConfigDC

[01/20/2015 17:13:20.0178] [2] The call to Microsoft Exchange Active Directory Topology service on server 'TopologyClientTcpEndpoint (localhost)' returned an error. Error details No Minimal Required Number of Suitable Directory Servers Found in Forest mydomain.com Site Default-First-Site and connected Sites..

[01/20/2015 17:13:20.0178] [2] No Minimal Required Number of Suitable Directory Servers Found in Forest mydomain.com Site Default-First-Site and connected Sites.

[01/20/2015 17:13:20.0178] [2] The call to Microsoft Exchange Active Directory Topology service on server 'TopologyClientTcpEndpoint (localhost)' returned an error. Error details No Minimal Required Number of Suitable Directory Servers Found in Forest mydomain.com Site Default-First-Site and connected Sites..

[01/20/2015 17:13:20.0178] [2] No Minimal Required Number of Suitable Directory Servers Found in Forest mydomain.com Site Default-First-Site and connected Sites.

[01/20/2015 17:13:20.0178] [2] Ending processing Set-SharedConfigDC

[01/20/2015 17:13:20.0193] [2] Beginning processing Write-ExchangeSetupLog

[01/20/2015 17:13:20.0193] [2] An error ocurred while setting shared config DC. Error: The call to Microsoft Exchange Active Directory Topology service on server 'TopologyClientTcpEndpoint (localhost)' returned an error. Error details No Minimal Required Number of Suitable Directory Servers Found in Forest mydomain.com Site Default-First-Site and connected Sites..

[01/20/2015 17:13:20.0193] [2] Ending processing Write-ExchangeSetupLog

[01/20/2015 17:13:20.0193] [2] Beginning processing Write-ExchangeSetupLog

[01/20/2015 17:13:20.0193] [2] Waiting 30 seconds before attempting again.

[01/20/2015 17:13:20.0193] [2] Ending processing Write-ExchangeSetupLog

[01/20/2015 17:13:50.0195] [2] Beginning processing Write-ExchangeSetupLog

[01/20/2015 17:13:50.0273] [2] [ERROR] Unable to set shared config DC.

[01/20/2015 17:13:50.0273] [2] [ERROR] Unable to set shared config DC.

[01/20/2015 17:13:50.0288] [2] Ending processing Write-ExchangeSetupLog

[01/20/2015 17:13:50.0288] [1] The following 1 error(s) occurred during task execution:

[01/20/2015 17:13:50.0288] [1] 0.  ErrorRecord: Unable to set shared config DC.

[01/20/2015 17:13:50.0288] [1] 0.  ErrorRecord: System.Exception: Unable to set shared config DC.

   at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target, Boolean reThrow, String helpUrl)

   at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target)

   at Microsoft.Exchange.Management.Deployment.WriteExchangeSetupLog.InternalProcessRecord()

   at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__b()

   at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)

[01/20/2015 17:13:50.0288] [1] [ERROR] The following error was generated when "$error.Clear();

         $maxWait = New-TimeSpan -Minutes 8

         $timeout = Get-Date;

         $timeout = $timeout.Add($maxWait);

         $currTime = Get-Date;

         $successfullySetConfigDC = $false;

 

         while($currTime -le $timeout)

         {

           $setSharedCDCErrors = @();

           try

           {

             Set-SharedConfigDC -DomainController $RoleDomainController -ErrorVariable setSharedCDCErrors -ErrorAction SilentlyContinue;

             $successfullySetConfigDC = ($setSharedCDCErrors.Count -eq 0);

 

             if($successfullySetConfigDC)

             {

               break;

             }

             Write-ExchangeSetupLog -Info ("An error ocurred while setting shared config DC. Error: " + $setSharedCDCErrors[0]);

           }

           catch

           {

             Write-ExchangeSetupLog -Info ("An exception ocurred while setting shared config DC. Exception: " + $_.Exception.Message);

           }

 

           Write-ExchangeSetupLog -Info ("Waiting 30 seconds before attempting again.");

           Start-Sleep -Seconds 30;

           $currTime = Get-Date;

         }

 

         if( -not $successfullySetConfigDC)

         {

           Write-ExchangeSetupLog -Error "Unable to set shared config DC.";

         }

        " was run: "System.Exception: Unable to set shared config DC.

   at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target, Boolean reThrow, String helpUrl)

   at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target)

   at Microsoft.Exchange.Management.Deployment.WriteExchangeSetupLog.InternalProcessRecord()

   at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__b()

   at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".

[01/20/2015 17:13:50.0288] [1] [ERROR] Unable to set shared config DC.

[01/20/2015 17:13:50.0288] [1] [ERROR-REFERENCE] Id=AllADRolesCommonServiceControl___ee47ab1c06fb47919398e2e95ed99c6c Component=EXCHANGE14:\Current\Release\Shared\Datacenter\Setup

[01/20/2015 17:13:50.0288] [1] Setup is stopping now because of one or more critical errors.

[01/20/2015 17:13:50.0288] [1] Finished executing component tasks.

[01/20/2015 17:13:50.0304] [1] Ending processing Install-BridgeheadRole

 

 

Windows Event Viewer:

Process Microsoft.Exchange.Directory.TopologyService.exe (PID=5276) Forest mydomain.com. Exchange Active Directory Provider couldn't find minimal required number of suitable Global Catalog servers in either the local site 'Default-First-Site' or the following sites:

 

 

How to import emails from a pst file to a mailbox?

$
0
0

Hi everyone,

I want to import some emails in a mailbox. How to do this?

The closest I have been to is this PowerShell script:

New-MailboxImportRequest -Mailbox user -FilePath \\servers\pst\sample.pst -TargetRootFolder "Inbox" -IncludeFolders "#Inbox#" -ExcludeDumpster

The result of this script is under the Inbox folder of user, one more Inbox folder is created. I don't want that. I want the emails of Inbox folder of the pst file directly into the Inbox folder of "user". Kindly help.

Thanks & regards,

Talib Hussain

Blocking OWA Attachment Extensions

$
0
0

We have exchange 2007...

we planning to implement to block certain attachment extensions only for OWA... in this case what will be impact on users who are using MAc with Outlook 2011.


Sathya

Check forwarding email addresses on exchange 2003

$
0
0

We are moving to a hosted 2013 platform for emails

At the moment we a running of a 2003 exchange server

We are getting rid of almost 100 addresses that are no longer in use

They are currently forwarding to other address some even forwarding through 2 or 3 different accounts

Is there a tool or a quicker way to sort this mess out to see what aliases we would need to set up?

Thanks for any advice given!

 


Cheers, Owen

Why SOAP Request as Impersonator account fails?

$
0
0

Hi everyone,



I have created an Impersonator account and accessing item of another account using SOAP Request. I am unable to query the account. The request is as follows:

<?xml version="1.0" encoding="utf-8"?><soap:Envelope
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"><soap:Header><t:RequestServerVersion Version="Exchange2013"/></soap:Header><soap:Body><GetItem
      xmlns="http://schemas.microsoft.com/exchange/services/2006/messages"
      xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"><ItemShape><t:BaseShape>Default</t:BaseShape><t:IncludeMimeContent>true</t:IncludeMimeContent></ItemShape><ItemIds><t:ItemId Id="AAMkADhiYjY0NGIxLTMyZTYtNDA2YS04ZmM1LTBiZjRmZGJjMDY0NABGAAAAAAABEJy6UddET6O8EWfW99taBwABc/Z+U4EQRZ7tUFT0S/bsAAA76u/+AAABc/Z+U4EQRZ7tUFT0S/bsAAA9Cn6iAAA=" /></ItemIds></GetItem></soap:Body></soap:Envelope>

And the response is as follows:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Header><h:ServerVersionInfo MajorVersion="15" MinorVersion="0" MajorBuildNumber="516" MinorBuildNumber="29" Version="Exchange2013" xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" xmlns="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/></s:Header><s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><m:GetItemResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"><m:ResponseMessages><m:GetItemResponseMessage ResponseClass="Error"><m:MessageText>Access is denied. Check credentials and try again.</m:MessageText><m:ResponseCode>ErrorAccessDenied</m:ResponseCode><m:DescriptiveLinkKey>0</m:DescriptiveLinkKey><m:Items/></m:GetItemResponseMessage></m:ResponseMessages></m:GetItemResponse></s:Body></s:Envelope>

When I query using that account, then it is successful. Kindly help me?

Thanks & regards,

Talib Hussain



"Birthday" field value gives one day less when pulled using REST APIs

$
0
0

When a contact record is pulled using REST API, for "Birthday" field the value will be in date/time format ex: 2015-01-02T18:30:00Z even though the date configured in Office365 is "2015-01-03".

Is this right behavior w.r.t office365 working?

Can you have a Powershell script trigger from Transport Rule being broken

$
0
0

Hi,

I have a question hopefully some experts might be able to answer.  I am running Exchange 2010 SP1 and am trying to set some transport rules in the Hub Transport, I was wondering whether it was possible to have a Powershell script run off the back of a transport rule being triggered?

The main reason for this is I am wanting to send a new email out when the rule is triggered, whilst also then forwarding/moving the original triggering email into a holding quarantine mailbox.  I have looked through the EMS commands available for New-TransportRule and can't see any actions to send a new email out, also there doesn't seem to be anything for moving the triggering email into a quarantine folder (EMS New-TransportRule commands).  So I was thinking that if a PowerShell script could be an action then I could use that to do the above?

Any help would be be really appreciated!

Cheers,

Tom

Exchange 2010 Hybrid Configuration

$
0
0

Hi,

I'm presently using Symantec bridgemail.

I'm planing to move to O365 with hybrid configuration with Exchange 2010.

Can any one help me / give me plan of action / precautions before deploying hybrid.


Sathish

How to trigger an event web service when a mail received in Exchange Server ?

$
0
0

Hi,

I have a requirement of Triggering the event in Web-service with related data (Mail Details) whenever mail received in Exchange Server..

I have done R&D on this, but I couldn't find answer.

Is there any possibility of triggering the service ? If Yes, how can I achieve this?

Thanks in Advance.

Cannot connect to office 365 Smtp Server using c# code

$
0
0

Hello

I'm trying to send an e mail using c# code and the SmtpClient class but I get this error: " 'The remote name could not be resolved: '​smtp.office365.com​''.

I have looked up the Smtp settings on my online Outlook and have used the same settings as a test in the desktop version of Outlook.

I'm pretty sure I'm using the SmtpClient class correctly and have set:

- Server = smtp.office365.com

- Port = 587

- EnableSsl = true

-The To and From e mail address is a valid user in Office 365

Why does my desktop Outlook connect to the Smtp server but the c# code cannot?

Thanks

copy emails (entire mailbox) to another exchange server 2013

$
0
0

Hi,

We are a hosted Exchange server 2013 solution provider, and we want to migrate customer mailboxes (from exchange 2007, 2010) to Exchange 2013 using some API, as we have a web portal for other admin tasks too. Someone told us that we can use EWS Managed API for this purpose.

Is there any article  in this regard, which can help us?

Or, is there any other API which we can use?

Thanks in anticipation.


Regards, David Johnson

Retrieving email using ews

$
0
0

Hello All,

I am trying to retrieve the mails from exchange using ews. However, my issue is; my each conversation of one mail is getting treated as different mail. I am displaying the mails in grid view. So, each conversation of single mail is shown on different row; instead it should show on single row with latest reply/conversation. 

Because of this I am not able to use offset property to retrieve emails.

My aim is all of the conversation in single mail should be treated as one mail; So If I set the offset property then it should easily give me the mail from that point.

Below is my code

public void RetriveEMails()
        {
            String Subject;
            String Sender;
            String EmailBody;
            String[] Recipients;
            Boolean blnHasAttachments;
            int pagesize = 10;
            int offset = 0;
            Boolean more = true;
            String EmailDateTimeReceived;
            String EmailItemID;
            String EmailDisplayTo;


            ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013);
            service.Credentials = new NetworkCredential("my id", "my password");
            service.PreAuthenticate = true;
            service.Url = new Uri("https://outlook.office365.com/EWS/Exchange.asmx");
            service.TraceEnabled = true;
            service.TraceFlags = TraceFlags.All;

            ItemView view = new ItemView(pagesize, offset, OffsetBasePoint.Beginning);

            FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, view);

            view.PropertySet = new PropertySet(
               BasePropertySet.IdOnly, ItemSchema.Subject, ItemSchema.DateTimeReceived, ItemSchema.DisplayTo,
               EmailMessageSchema.ToRecipients, EmailMessageSchema.From, EmailMessageSchema.IsRead, EmailMessageSchema.HasAttachments,
               ItemSchema.MimeContent, EmailMessageSchema.Body, EmailMessageSchema.Sender, ItemSchema.Body) { RequestedBodyType = BodyType.HTML };

            view.Traversal = ItemTraversal.Shallow;
            service.LoadPropertiesForItems(findResults, view.PropertySet);

            foreach (EmailMessage email in findResults)
            {
                Sender = email.From.Address;
                Subject = email.Subject;
                EmailDateTimeReceived = email.DateTimeReceived.ToShortDateString();
                blnHasAttachments = email.HasAttachments;
                EmailItemID = Convert.ToString(email.Id);
                EmailDisplayTo = email.DisplayTo;
                EmailBody = email.Body; //.Text;
                //string[] Recipients = email.ToRecipients;
            }

        }

Any help on this appreciated !

Regards,

Rohit



[E2010] [EWSMA] [VB.NET] List calendar items from a shared mailbox using EWS Managed API

$
0
0

Hi,

I am trying to list the calendar entries for a shared mailbox, but I am not sure how to do it.  I have only just found out about EWS but it seems to be the solution to what I need.

I have some code that lists the calendar entries for the logged on user and displays them in a text box (just so I can see the info).  The code below shows the main routine that gets the calendar info

Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.Threading.Tasks
Imports Microsoft.Exchange.WebServices.Data ' This is the Exchange Web Services API.

Private Sub Button_GetCalendarInfo_Click(sender As Object, e As EventArgs) Handles Button_GetCalendarInfo.Click
	Dim _EWSExchangeService As New ExchangeService(ExchangeVersion.Exchange2010_SP2)

	'Use the default credentials of the logged on user
	_EWSExchangeService.UseDefaultCredentials = True

	' Call AutoDiscover to return the URL of the most efficient CAS server for a given email address
	_EWSExchangeService.AutodiscoverUrl("SharedMailbox@domain.com", AddressOf RedirectionUrlValidationCallback) ' this line will only get info from the logged on user

	'Define a calendar Date range in which to search for appointments
	Dim EWSCalendarView As New CalendarView(DateTime.Today, DateTime.Today.AddDays(1))

	' Search for Appointments in the Calendar folder during the time range specified by the CalendarView above
	Dim appointments As FindItemsResults(Of Appointment) = _EWSExchangeService.FindAppointments(WellKnownFolderName.Calendar, EWSCalendarView)

	Dim MeetingSensitivity ' What sensitivity is the calendar, i.e. Normal or Private
    Dim MeetingShowAs ' Is the Meeting classed as Free, Tentative, Busy, Out of Office
    For Each meeting In appointments
        TextBox_CalendarEntries.AppendText("Start: " & meeting.Start & "   End: " & meeting.End & "    Subject: " & meeting.Subject & vbTab & vbTab & "   Sensitivity: " & Meeting.Sensitivity & vbTab & "  Status: " & Meeting.LegacyFreeBusyStatus & vbLf)
    Next
 End Sub

I have seen a post where the following was mentioned, but I don't know how to incorporate that into my code.

FolderId folderToAccess = new FolderId(WellKnownFolderName.Calendar, "<email address of shared calendar>");

In a FindAppointments call, that would look like:
service.FindAppointments(new FolderId(WellKnownFolderName.Calendar, "<email address of shared calendar>"), calendarView);
Any help would be greatly appreciated.

EWS JAVA API - 1.3 - cannot authenticate NTLM

$
0
0

Just some line to report my experience with the library EWS JAVA API (ews-java-api found at github).


I was trying to send email from my java test application via the EWS service published by an Exchange Server with only NTLM authentication enabled.

The first tries were all unsuccessful, resulting in a authentication problem.

In the end I found the post 14702764 at stackoverflow (how-to-use-ldap-authentication-for-the-exchange-web-services-connection-in-java) that solved my problem.


Once I changed the inner class NTLM inside EwsJCIFSNTLMScheme.java as described in the link above, the problem of authentication via NTLM disappeared.

Following is the error occuring before I changed the libary code:

2014-09-21 01:19:48,818 INFO  [AuthChallengeProcessor] - NTLM authentication scheme selected

2014-09-21 01:19:48,940 INFO  [HttpMethodDirector] - Failure authenticating with NTLM <any realm>@test.domail.com:443

Exception in thread "main" microsoft.exchange.webservices.data.ServiceRequestException: The request failed. null
at microsoft.exchange.webservices.data.SimpleServiceRequestBase.internalExecute(SimpleServiceRequestBase.java:63)
at microsoft.exchange.webservices.data.MultiResponseServiceRequest.execute(MultiResponseServiceRequest.java:142)
at microsoft.exchange.webservices.data.ExchangeService.internalCreateItems(ExchangeService.java:464)
at microsoft.exchange.webservices.data.ExchangeService.createItem(ExchangeService.java:535)

at microsoft.exchange.webservices.data.Item.internalCreate(Item.java:215)
at microsoft.exchange.webservices.data.EmailMessage.internalSend(EmailMessage.java:125)
at microsoft.exchange.webservices.data.EmailMessage.send(EmailMessage.java:253)
at com.vodafone.spp.test.testews.Main.main(Main.java:40)
Caused by: java.lang.NullPointerException
at microsoft.exchange.webservices.data.SimpleServiceRequestBase.readResponse(SimpleServiceRequestBase.java:141)
at microsoft.exchange.webservices.data.SimpleServiceRequestBase.internalExecute(SimpleServiceRequestBase.java:50)
... 7 more

This is the code fragment to replace in file EwsJCIFSNTLMScheme.java :

    private class NTLM {
    /** Character encoding */
    public static final String DEFAULT_CHARSET = "ASCII";

    /**
    * The character was used by 3.x's NTLM to encode the username and
    * password. Apparently, this is not needed in when passing username,
    * password from NTCredentials to the JCIFS library
    */
    private String credentialCharset = DEFAULT_CHARSET;

    void setCredentialCharset(String credentialCharset) {
           this.credentialCharset = credentialCharset;
    }

    private static final int TYPE_1_FLAGS = NtlmFlags.NTLMSSP_NEGOTIATE_NTLM
                 | NtlmFlags.NTLMSSP_NEGOTIATE_UNICODE
                 | NtlmFlags.NTLMSSP_NEGOTIATE_NTLM2;

    private String generateType1Msg(String host, String domain) {
           jcifs.ntlmssp.Type1Message t1m = new jcifs.ntlmssp.Type1Message(
                        TYPE_1_FLAGS, domain, host);
           return jcifs.util.Base64.encode(t1m.toByteArray());
    }

    private String generateType3Msg(String username, String password,
                 String host, String domain, String challenge) {
           jcifs.ntlmssp.Type2Message t2m;
           try {
                 t2m = new jcifs.ntlmssp.Type2Message(
                               jcifs.util.Base64.decode(challenge));
           } catch (IOException e) {
                 throw new RuntimeException("Invalid Type2 message", e);
           }

           final int type2Flags = t2m.getFlags();
           final int type3Flags = type2Flags
                        & (0xffffffff ^ (NtlmFlags.NTLMSSP_TARGET_TYPE_DOMAIN | NtlmFlags.NTLMSSP_TARGET_TYPE_SERVER));

           jcifs.ntlmssp.Type3Message t3m = new jcifs.ntlmssp.Type3Message(
                        t2m, password, domain, username, host, type3Flags);
           return jcifs.util.Base64.encode(t3m.toByteArray());
    }



2nd Email Domain

$
0
0
I have Exchange 2013 running on Server 2012 and have had email for examplecompany.com running fine for over 7 months now. This was my first foray into setting up exchange and honestly was shocked that everything went off without a hitch. We have now started a 2nd company and I want to have email for 2ndcompany.com running on this same exchange server. First I believe this is possible, if not someone please tell , 2nd if I can someone point me to a walk through on how to do this keeping in mind I am still new to thisso I need to know how to add the domain the to the server and all of-that. Thanks in advance for the help should anyone be able to provide it . 

Setup General Email address to receive

$
0
0
I have a need to setup an email address that will receive emails from any e-mails to a certain company. For instanceMemberXXX@CompanyXYZ.com, where every email address will start with "Member" and be followed by a number, 0-999, and then the domain @ComapnyXYZ.com. Is this possible in exchange?

How to get contacts EmailAddress value [EWS]

$
0
0

I request list of contacts using FindItem operation with following xml

<m:FindItem Traversal="Shallow">     <m:ItemShape>          <t:BaseShape>IdOnly</t:BaseShape><t:AdditionalProperties>     <t:FieldURI FieldURI="contacts:DisplayName" /><t:FieldURI FieldURI="contacts:CompanyName" /><t:FieldURI FieldURI="contacts:JobTitle" /><t:FieldURI FieldURI="contacts:Department" /><t:IndexedFieldURI FieldURI="contacts:EmailAddress" FieldIndex="EmailAddress1" /></t:AdditionalProperties>     </m:ItemShape><m:IndexedPageItemView MaxEntriesReturned="500" Offset="0" BasePoint="Beginning" /><m:ParentFolderIds>          <t:DistinguishedFolderId Id="contacts"/></m:ParentFolderIds></m:FindItem>

And it works great, but some contacts has very strange values of emails. For example:

<t:Contact><t:ItemId Id="AA=" ChangeKey="EQAAH/ps"/><t:DisplayName>User Name</t:DisplayName><t:CompanyName/><t:EmailAddresses><t:Entry Key="EmailAddress1">/o=My Company/ou=Exchange Administrative Group (FYDI)/cn=Recipients/cn=User Name (uname)a</t:Entry></t:EmailAddresses><t:Department>User Department</t:Department><t:JobTitle>User Title</t:JobTitle></t:Contact>

I hope, somebody will help me. 

Thanks in advance

Viewing all 7132 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>