BizTalk Orchestration Error Message – property ‘Microsoft.XLANGs.BaseTypes.Address’ is read-only for non-dynamic ports

I have an orchestration process that dynamic send email notifications:

msgEmail(SMTP.EmailBodyText) = “my body”;
msgEmail(SMTP.Subject) = “my Subject”
msgEmail(SMTP.From) = “nd@nd.pt”;
msgEmail(SMTP.SMTPHost) = “smtp server”
msgEmail(SMTP.SMTPAuthenticate) = 1;
msgEmail(SMTP.EmailBodyTextCharset) = “ISO-8859-1”;
msgEmail(SMTP.Password) = “****”;
msgEmail(SMTP.Username) = “xxxx”;

EmailPort(Microsoft.XLANGs.BaseTypes.Address) = “mailto:nd@nd.pt”;

When I first try to compile the orchestration I receive back the following error message:

Error 22 – ‘EmailPort’: property ‘Microsoft.XLANGs.BaseTypes.Address’ is read-only for non-dynamic ports

Cause

  • The port bind is not specified as Dynamic.

Solution

  • Open the Port Configuration Wizard.
    • Select a Port Type. On this page, you first select whether you want a New Port Type or an Existing Port Type. If you select Existing Port Type, you then use a tree control to choose which existing port type to assign.
      If you select New Port Type, you then need to type the name of the port type in the Name text box or accept the suggested default name. You also select the port type’s communication pattern (one-way or request-response) and any access restrictions to impose on the new port type.
  • Communication pattern: One-Way
  • Port Binding. On this page, you specify the direction of communication, also known as the polarity, and the binding type of the port.
    The polarity choice you make depends in part on the communication pattern of the port type that you selected on the preceding page of the wizard, Select a Port Type.
    • The direction of communication: I will always be sending messages on this port
    • Port binding: Dynamic
Dynamic Port

Dynamic ports are only valid for Send Ports.

Dynamic option only appears if you first change the port to be a “Send Port”, by selecting the “I’ll always be sending messages on this port” option in the “Port direction of communication” combo box, otherwise it does not appear as an option (when you’re creating a Receive port).

Author: Sandro Pereira

Sandro Pereira lives in Portugal and works as a consultant at DevScope. In the past years, he has been working on implementing Integration scenarios both on-premises and cloud for various clients, each with different scenarios from a technical point of view, size, and criticality, using Microsoft Azure, Microsoft BizTalk Server and different technologies like AS2, EDI, RosettaNet, SAP, TIBCO etc. He is a regular blogger, international speaker, and technical reviewer of several BizTalk books all focused on Integration. He is also the author of the book “BizTalk Mapping Patterns & Best Practices”. He has been awarded MVP since 2011 for his contributions to the integration community.

1 thought on “BizTalk Orchestration Error Message – property ‘Microsoft.XLANGs.BaseTypes.Address’ is read-only for non-dynamic ports”

  1. “Dynamic ports are only valid for Send Ports” – new thing I came to know about Dynamic Ports.. thanks sandro !!

Leave a Reply

Your email address will not be published. Required fields are marked *

turbo360

Back to Top