# mulesoft Microsoft Dynamics GP Connector - Full Documentation
---
product: Microsoft Dynamics GP Connector
version: 2.1
---
# Microsoft Dynamics GP Connector 2.1
> For the full documentation index, see: https://docs.mulesoft.com/llms.txt
Microsoft Dynamics GP Connector v2.1
Anypoint Connector for Microsoft Dynamics GP enables Mule applications to interact with the
Microsoft Dynamics Great Plains (GP) Web Services.
Release Notes:
[Microsoft Dynamics GP Connector Release Notes](https://docs.mulesoft.com/release-notes/connector/microsoft-dynamics-gp-connector-release-notes-mule-4)
Exchange:
[Microsoft Dynamics GP Connector](https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-microsoft-dynamics-gp-connector/)
## Before You Begin
To use this information, you should be familiar with Microsoft Dynamics GP, Mule runtime engine
(Mule), Anypoint Connectors, Anypoint Studio, Mule concepts, elements in a Mule flow, and Global
Elements.
To use this connector, you need:
- Microsoft Dynamics GP instance.
- Valid credentials for a Kerberos connection.
- MuleSoft Enterprise License.
## POM File Information
```xml
com.mulesoft.connectors
mule-microsoft-dynamics-gp-connector
x.x.x
mule-plugin
```
Replace `x.x.x` with the version that corresponds to the connector you are using.
To obtain the most up-to-date `pom.xml` file information, access the connector in
[Anypoint Exchange](https://www.mulesoft.com/exchange/) and click **Dependency Snippets**.
## Add the Connector to a Studio Project
Anypoint Studio provides two ways to add the connector to your Studio project: from the Exchange
button in the Studio taskbar or from the Mule Palette view.
### Add the Connector Using Exchange
1. In Studio, create a Mule project.
2. Click the Exchange icon **(X)** in the upper-left of the Studio task bar.
3. In Exchange, click **Login** and supply your Anypoint Platform username and password.
4. In Exchange, search for "gp".
5. Select the connector and click **Add to project**.
6. Follow the prompts to install the connector.
### Add the Connector in Studio
1. In Studio, create a Mule project.
2. In the Mule Palette view, click **(X) Search in Exchange**.
3. In **Add Modules to Project**, type "gp" in the search field.
4. Click this connector’s name in **Available modules**.
5. Click **Add**.
6. Click **Finish**.
### Configure in Studio
1. Drag the connector operation to the Studio canvas.
2. Configure the global element for the connector.

## Use Case: Studio
- [Create Customer](#use-case-1)
- [Get Customer](#use-case-2)
- [Update Customer](#use-case-3)
- [Delete Customer](#use-case-4)
- [Get Customer List](#use-case-5)
### Create Customer

1. From the Mule Palette drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /createCustomer.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#CreateCustomer: {
ns0#customer: {
ns02#Key: {
ns02#Id: attributes.queryParams.customerKeyID
},
ns02#Name: attributes.queryParams.customerName
},
ns0#context: {
ns01#OrganizationKey @(xsi#"type": "ns01:CompanyKey") : {
ns01#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Drag a Microsoft Dynamics GP connector next to the Transform Message.
4. Set its configuration and fill in the required fields, this applies to any other Dynamics GP
connectors that are dragged into the flows.
5. Select the operation Create Entity. Pick the Customer entity from the drop-down list. Leave the
Input Reference as it is.
6. Drag a Set Payload element next to the Connector and set its value to `Success`.
### Get Customer

1. From the Mule Palette, drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /getCustomer.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#GetCustomerByKey: {
ns0#key: {
ns01#Id: attributes.queryParams.customerKeyID
},
ns0#context: {
ns02#OrganizationKey @(xsi#"type": "ns02:CompanyKey") : {
ns02#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Drag a Microsoft Dynamics GP connector next to the Transform Message.
4. Select the operation Get Entity By Key. Pick the Customer entity from the drop-down list. Leave
the Input Reference as it is.
5. Drag a Transform Message next to the connector and add:
```dataweave
%dw 2.0
output application/json
---
payload
```
### Update Customer

1. From the Mule Palette, drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /updateCustomer.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#GetCustomerByKey: {
ns0#key: {
ns02#Id: attributes.queryParams.keyId
},
ns0#context: {
ns01#OrganizationKey @(xsi#"type": "ns01:CompanyKey") : {
ns01#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Create a variable called 'updatedComment' on this Transform Message with this value:
```dataweave
%dw 2.0
output application/java
---
{
comment1: payload.customer.comment1
}
```
4. Drag a Microsoft Dynamics GP connector next to the Transform Message.
5. Select the Get Entity By Key operation. Pick the Customer entity from the drop-down list. Leave
the Input Reference as it is.
6. Drag a Transform Message element next to the Connector and add:
```dataweave
%dw 2.0
output application/java
---
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#UpdateCustomer: {
ns0#customer: {
ns02#Comment1: vars.comment1,
ns02#Key: {
ns02#Id: payload.key.id
},
ns02#Name: payload.name
},
ns0#context: {
ns01#OrganizationKey @(xsi#"type": "ns01:CompanyKey") : {
ns01#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
7. Drag a Microsoft Dynamics GP connector next to the Transform Message.
8. Select the Update Entity operation. Pick the Customer entity from the drop-down list. Leave the
Input Reference as it is.
9. Drag a Set Payload element next to the connector and set its value to `Success`.
### Delete Customer

1. From the Mule Palette, drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /deleteCustomer.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#DeleteCustomer: {
ns0#key: {
ns01#Id: attributes.queryParams.customerKeyID
},
ns0#context: {
ns02#OrganizationKey @(xsi#"type": "ns02:CompanyKey") : {
ns02#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Drag a Microsoft Dynamics GP connector next to the Transform Message.
4. Select the Delete Entity. Pick the Customer entity from the drop-down list. Leave the Input
Reference as it is.
5. Drag a Set Payload element next to the connector and set its value to `Success`.
### Get Customer List

1. From the Mule Palette, drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /getCustomerList.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#GetCustomerList: {
ns0#criteria: {
ns02#Name: {
ns01#Like: attributes.queryParams.like
}
},
ns0#context: {
ns01#OrganizationKey @(xsi#"type": "ns01:CompanyKey") : {
ns01#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Drag a Microsoft Dynamics GP connector next to the Transform Message.
4. Select the Get Entity List. Pick the Customer entity from the drop-down list. Leave the Input
Reference as it is.
5. Drag a Transform Message next to the connector and add:
```dataweave
%dw 2.0
output application/json
---
payload
```
## See Also
[Salesforce Help](https://help.salesforce.com)
---
product: Microsoft Dynamics GP Connector
version: 2.1
---
# Microsoft Dynamics GP Connector 2.1 Reference
> For the full documentation index, see: https://docs.mulesoft.com/llms.txt
Microsoft Dynamics GP Connector v2.1
Release Notes:
[Microsoft Dynamics GP Connector Release Notes](https://docs.mulesoft.com/release-notes/connector/microsoft-dynamics-gp-connector-release-notes-mule-4)
## Default Configuration
### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Name | | The name for this configuration. Connectors reference the configuration with this name. | | |
Connection | | The connection types to provide to this configuration. | | |
Expiration Policy | | Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform expires the instance at the exact moment that it becomes eligible. The runtime purges the instances when it sees fit. | | |
### Connection Types
#### Kerberos Authentication
##### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Username | | | | |
Password | | | | |
Endpoint URL | | Base URL where the SOAP services are exposed. | | |
SPN | | The Service Principal Name that identifies the service instance | | |
Login Conf. Location | | Path to a customized Login Properties File | | |
Krb5 Conf. Location | | Path to a customized Kerberos Properties File | | |
Timeout Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| A time unit that qualifies Connection Timeout and Read Timeout attributes. Defaults to SECONDS. | | |
Connection Timeout | | The HTTP connection timeout value. This attribute works in tandem with Timeout Unit. Defaults to 5. | | |
Read Timeout | | The HTTP read timeout value. This attribute works in tandem with Timeout Unit. Defaults to 5. | | |
Reconnection | | When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy. | | |
## Operations
- [Create Entity](#createEntity)
- [Delete Entity](#deleteEntity)
- [Get Entity By Key](#getEntityByKey)
- [Get Entity List](#getEntityList)
- [Multitenant Enabled](#multitenantEnabled)
- [Update Entity](#updateEntity)
- [Void Entity](#voidEntity)
### Create Entity
``
Creates a new entity in Dynamics GP.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to create. | | |
Input | | The web service input, containing the entity to create, the context and policy. | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:UNKNOWN
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Delete Entity
``
Deletes an existing entity in Dynamics GP.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to delete. | | |
Input | | The web service input, containing the key object, the context and policy. | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:UNKNOWN
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Get Entity By Key
``
Retrieves an entity from Dynamics GP, based on the key values supplied.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to retrieve. | | |
Input | | The web service input, containing the key object and the context. | | |
Streaming Strategy | | Configure to use repeatable streams. | | |
Target Variable | | The name of a variable to store the operation’s output. | | |
Target Value | | An expression to evaluate against the operation’s output and store the expression outcome in the target variable | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
#### Output
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:UNKNOWN
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Get Entity List
``
Retrieves a list of entities from Dynamics GP that match the specified criteria.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to fetch. | | |
Input | | The web service input, containing the search criteria and the context. | | |
Streaming Strategy | | Configure to use repeatable streams. | | |
Target Variable | | The name of a variable to store the operation’s output. | | |
Target Value | | An expression to evaluate against the operation’s output and store the expression outcome in the target variable | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
#### Output
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:UNKNOWN
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Multitenant Enabled
``
Indicates whether the Dynamics GP service is installed in a multi-tenant configuration.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Target Variable | | The name of a variable to store the operation’s output. | | |
Target Value | | An expression to evaluate against the operation’s output and store the expression outcome in the target variable | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
#### Output
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:UNKNOWN
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Update Entity
``
Updates an existing entity in Dynamics GP.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to update. | | |
Input | | The web service input, containing the entity to update, the context and policy. | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:UNKNOWN
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Void Entity
``
Voids an existing entity in Dynamics GP.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to void. | | |
Input | | The web service input, containing the key object, the context and policy. | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:UNKNOWN
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
## Types
### Reconnection
| Field | Type | Description | Default Value | Required |
|---|
Fails Deployment | | When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy. | | |
Reconnection Strategy | | The reconnection strategy to use. | | |
### Reconnect
| Field | Type | Description | Default Value | Required |
|---|
Frequency | | How often to reconnect (in milliseconds) | | |
Count | | The number of reconnection attempts to make | | |
blocking | | If false, the reconnection strategy runs in a separate, non-blocking thread | | |
### Reconnect Forever
| Field | Type | Description | Default Value | Required |
|---|
Frequency | | How often in milliseconds to reconnect | | |
blocking | | If false, the reconnection strategy runs in a separate, non-blocking thread | | |
### Expiration Policy
| Field | Type | Description | Default Value | Required |
|---|
Max Idle Time | | A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it’s considered eligible for expiration | | |
Time Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| A time unit that qualifies the maxIdleTime attribute | | |
### Repeatable In Memory Stream
| Field | Type | Description | Default Value | Required |
|---|
Initial Buffer Size | | The amount of memory that will be allocated to consume the stream and provide random access to it. If the stream contains more data than can be fit into this buffer, then the buffer expands according to the bufferSizeIncrement attribute, with an upper limit of maxInMemorySize. | | |
Buffer Size Increment | | This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full. | | |
Max Buffer Size | | The maximum amount of memory to use. If more than that is used then a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised. A value lower than or equal to zero means no limit. | | |
Buffer Unit | | The unit in which all these attributes are expressed | | |
### Repeatable File Store Stream
| Field | Type | Description | Default Value | Required |
|---|
In Memory Size | | Defines the maximum memory that the stream should use to keep data in memory. If more than that is consumed then it will start to buffer the content on disk. | | |
Buffer Unit | | The unit in which maxInMemorySize is expressed | | |
## See Also
[Salesforce Help](https://help.salesforce.com)
---
product: Microsoft Dynamics GP Connector
version: 3.0
is-latest-version: true
---
# Microsoft Dynamics GP Connector 3.0
> For the full documentation index, see: https://docs.mulesoft.com/llms.txt
Anypoint Connector for Microsoft Dynamics GP enables Mule applications to interact with the
Microsoft Dynamics Great Plains (GP) Web Services.
Release Notes:
[Microsoft Dynamics GP Connector Release Notes](https://docs.mulesoft.com/release-notes/connector/microsoft-dynamics-gp-connector-release-notes-mule-4)
Exchange:
[Microsoft Dynamics GP Connector](https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-microsoft-dynamics-gp-connector/)
## Before You Begin
To use this information, you should be familiar with Microsoft Dynamics GP, Mule runtime engine
(Mule), Anypoint Connectors, Anypoint Studio, Mule concepts, elements in a Mule flow, and Global
Elements.
To use this connector, you need:
- Microsoft Dynamics GP instance.
- Valid credentials for a Kerberos connection.
- MuleSoft Enterprise License.
## POM File Information
```xml
com.mulesoft.connectors
mule-microsoft-dynamics-gp-connector
x.x.x
mule-plugin
```
Replace `x.x.x` with the version that corresponds to the connector you are using.
To obtain the most up-to-date `pom.xml` file information, access the connector in
[Anypoint Exchange](https://www.mulesoft.com/exchange/) and click **Dependency Snippets**.
## Add the Connector to a Studio Project
Anypoint Studio provides two ways to add the connector to your Studio project: from the Exchange
button in the Studio taskbar or from the Mule Palette view.
### Add the Connector Using Exchange
1. In Studio, create a Mule project.
2. Click the Exchange icon **(X)** in the upper-left of the Studio task bar.
3. In Exchange, click **Login** and supply your Anypoint Platform username and password.
4. In Exchange, search for "gp".
5. Select the connector and click **Add to project**.
6. Follow the prompts to install the connector.
### Add the Connector in Studio
1. In Studio, create a Mule project.
2. In the Mule Palette view, click **(X) Search in Exchange**.
3. In **Add Modules to Project**, type "gp" in the search field.
4. Click this connector’s name in **Available modules**.
5. Click **Add**.
6. Click **Finish**.
### Configure in Studio
1. Drag the connector operation to the Studio canvas.
2. Configure the global element for the connector.

On the Advanced tab, the global element includes optional **Timeout unit**, **Connection
timeout**, and **Read timeout** fields. When you don’t set them, the Kerberos Authentication
**Timeout Configuration** values remain in effect. Each operation can override those values in
the **Timeout Override** group on its Advanced tab.
## Use Case: Studio
- [Create Customer](#use-case-1)
- [Get Customer](#use-case-2)
- [Update Customer](#use-case-3)
- [Delete Customer](#use-case-4)
- [Get Customer List](#use-case-5)
### Create Customer

1. From the Mule Palette drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /createCustomer.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#CreateCustomer: {
ns0#customer: {
ns02#Key: {
ns02#Id: attributes.queryParams.customerKeyID
},
ns02#Name: attributes.queryParams.customerName
},
ns0#context: {
ns01#OrganizationKey @(xsi#"type": "ns01:CompanyKey") : {
ns01#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Drag a Microsoft Dynamics GP connector next to the Transform Message.
4. Set its configuration and fill in the required fields, this applies to any other Dynamics GP
connectors that are dragged into the flows.
5. Select the operation Create Entity. Pick the Customer entity from the drop-down list. Leave the
Input Reference as it is.
6. Drag a Set Payload element next to the Connector and set its value to `Success`.
### Get Customer

1. From the Mule Palette, drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /getCustomer.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#GetCustomerByKey: {
ns0#key: {
ns01#Id: attributes.queryParams.customerKeyID
},
ns0#context: {
ns02#OrganizationKey @(xsi#"type": "ns02:CompanyKey") : {
ns02#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Drag a Microsoft Dynamics GP connector next to the Transform Message.
4. Select the operation Get Entity By Key. Pick the Customer entity from the drop-down list. Leave
the Input Reference as it is.
5. Drag a Transform Message next to the connector and add:
```dataweave
%dw 2.0
output application/json
---
payload
```
### Update Customer

1. From the Mule Palette, drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /updateCustomer.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#GetCustomerByKey: {
ns0#key: {
ns02#Id: attributes.queryParams.keyId
},
ns0#context: {
ns01#OrganizationKey @(xsi#"type": "ns01:CompanyKey") : {
ns01#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Create a variable called 'updatedComment' on this Transform Message with this value:
```dataweave
%dw 2.0
output application/java
---
{
comment1: payload.customer.comment1
}
```
4. Drag a Microsoft Dynamics GP connector next to the Transform Message.
5. Select the Get Entity By Key operation. Pick the Customer entity from the drop-down list. Leave
the Input Reference as it is.
6. Drag a Transform Message element next to the Connector and add:
```dataweave
%dw 2.0
output application/java
---
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#UpdateCustomer: {
ns0#customer: {
ns02#Comment1: vars.comment1,
ns02#Key: {
ns02#Id: payload.key.id
},
ns02#Name: payload.name
},
ns0#context: {
ns01#OrganizationKey @(xsi#"type": "ns01:CompanyKey") : {
ns01#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
7. Drag a Microsoft Dynamics GP connector next to the Transform Message.
8. Select the Update Entity operation. Pick the Customer entity from the drop-down list. Leave the
Input Reference as it is.
9. Drag a Set Payload element next to the connector and set its value to `Success`.
### Delete Customer

1. From the Mule Palette, drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /deleteCustomer.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#DeleteCustomer: {
ns0#key: {
ns01#Id: attributes.queryParams.customerKeyID
},
ns0#context: {
ns02#OrganizationKey @(xsi#"type": "ns02:CompanyKey") : {
ns02#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Drag a Microsoft Dynamics GP connector next to the Transform Message.
4. Select the Delete Entity. Pick the Customer entity from the drop-down list. Leave the Input
Reference as it is.
5. Drag a Set Payload element next to the connector and set its value to `Success`.
### Get Customer List

1. From the Mule Palette, drag an HTTP Listener element to the canvas and use the default
configuration but with the path set to /getCustomerList.
2. Drag a Transform Message element next to the HTTP Listener and add:
```dataweave
%dw 2.0
output application/xml
ns ns0 http://schemas.microsoft.com/dynamics/gp/2010/01
ns ns01 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.Common
ns ns02 http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.GP
ns xsi http://www.w3.org/2001/XMLSchema-instance
---
{
ns0#GetCustomerList: {
ns0#criteria: {
ns02#Name: {
ns01#Like: attributes.queryParams.like
}
},
ns0#context: {
ns01#OrganizationKey @(xsi#"type": "ns01:CompanyKey") : {
ns01#Id: attributes.queryParams.companyKeyID
}
}
}
}
```
3. Drag a Microsoft Dynamics GP connector next to the Transform Message.
4. Select the Get Entity List. Pick the Customer entity from the drop-down list. Leave the Input
Reference as it is.
5. Drag a Transform Message next to the connector and add:
```dataweave
%dw 2.0
output application/json
---
payload
```
## See Also
[Salesforce Help](https://help.salesforce.com)
---
product: Microsoft Dynamics GP Connector
version: 3.0
is-latest-version: true
---
# Microsoft Dynamics GP Connector 3.0 Reference
> For the full documentation index, see: https://docs.mulesoft.com/llms.txt
Microsoft Dynamics GP Connector v3.0
Release Notes:
[Microsoft Dynamics GP Connector Release Notes](https://docs.mulesoft.com/release-notes/connector/microsoft-dynamics-gp-connector-release-notes-mule-4)
## Default Configuration
### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Name | | The name for this configuration. Connectors reference the configuration with this name. | | |
Connection | | The connection types to provide to this configuration. | | |
Timeout unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| Time unit for Connection timeout and Read timeout on the Advanced tab. When you don’t set this value, the Kerberos Authentication Timeout Configuration values remain in effect. | | |
Connection timeout | | HTTP connection timeout on the Advanced tab. When you don’t set this value, the Timeout Configuration connection timeout remains in effect. | | |
Read timeout | | HTTP read timeout on the Advanced tab. When you don’t set this value, the Timeout Configuration read timeout remains in effect. | | |
Name | | ID used to reference this configuration. | | |
Expiration Policy | | Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform expires the instance at the exact moment that it becomes eligible. The runtime purges the instances when it sees fit. | | |
### Connection Types
#### Kerberos Authentication
``
**Timeout Unit**, **Connection Timeout**, and **Read Timeout** are in the **Timeout Configuration**
group on the Advanced tab.
##### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Username | | | | |
Password | | | | |
Endpoint URL | | Base URL where the SOAP services are exposed. | | |
SPN | | The Service Principal Name that identifies the service instance | | |
Login Conf. Location | | Path to a customized Login Properties File | | |
Krb5 Conf. Location | | Path to a customized Kerberos Properties File | | |
Timeout Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| A time unit that qualifies Connection Timeout and Read Timeout attributes. Defaults to SECONDS. | | |
Connection Timeout | | The HTTP connection timeout value. This attribute works in tandem with Timeout Unit. Defaults to 5. | | |
Read Timeout | | The HTTP read timeout value. This attribute works in tandem with Timeout Unit. Defaults to 5. | | |
Reconnection | | When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy. | | |
## Operations
- [Create Entity](#createEntity)
- [Delete Entity](#deleteEntity)
- [Get Entity By Key](#getEntityByKey)
- [Get Entity List](#getEntityList)
- [Multitenant Enabled](#multitenantEnabled)
- [Update Entity](#updateEntity)
- [Void Entity](#voidEntity)
### Create Entity
``
Creates a new entity in Dynamics GP.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to create. | | |
Input | | The web service input, containing the entity to create, the context and policy. | | |
Config Ref | | The name of the configuration to use to execute this component. | | |
Timeout Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| Time unit for Connection Timeout and Read Timeout in the Timeout Override group on the Advanced tab. When you don’t set this value, the configuration value is used. Setting only this field doesn’t change the connection timeout. | | |
Connection Timeout | | HTTP connection timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Read Timeout | | HTTP read timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Error Mappings | | | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Delete Entity
``
Deletes an existing entity in Dynamics GP.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to delete. | | |
Input | | The web service input, containing the key object, the context and policy. | | |
Config Ref | | The name of the configuration to use to execute this component. | | |
Timeout Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| Time unit for Connection Timeout and Read Timeout in the Timeout Override group on the Advanced tab. When you don’t set this value, the configuration value is used. Setting only this field doesn’t change the connection timeout. | | |
Connection Timeout | | HTTP connection timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Read Timeout | | HTTP read timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Error Mappings | | | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Get Entity By Key
``
Retrieves an entity from Dynamics GP, based on the key values supplied.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to retrieve. | | |
Input | | The web service input, containing the key object and the context. | | |
Config Ref | | The name of the configuration to use to execute this component. | | |
Streaming Strategy | | Configure to use repeatable streams. | | |
Target Variable | | The name of a variable to store the operation’s output. | | |
Target Value | | An expression to evaluate against the operation’s output and store the expression outcome in the target variable | | |
Timeout Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| Time unit for Connection Timeout and Read Timeout in the Timeout Override group on the Advanced tab. When you don’t set this value, the configuration value is used. Setting only this field doesn’t change the connection timeout. | | |
Connection Timeout | | HTTP connection timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Read Timeout | | HTTP read timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Error Mappings | | | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
#### Output
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Get Entity List
``
Retrieves a list of entities from Dynamics GP that match the specified criteria.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to fetch. | | |
Input | | The web service input, containing the search criteria and the context. | | |
Config Ref | | The name of the configuration to use to execute this component. | | |
Streaming Strategy | | Configure to use repeatable streams. | | |
Target Variable | | The name of a variable to store the operation’s output. | | |
Target Value | | An expression to evaluate against the operation’s output and store the expression outcome in the target variable | | |
Timeout Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| Time unit for Connection Timeout and Read Timeout in the Timeout Override group on the Advanced tab. When you don’t set this value, the configuration value is used. Setting only this field doesn’t change the connection timeout. | | |
Connection Timeout | | HTTP connection timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Read Timeout | | HTTP read timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Error Mappings | | | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
#### Output
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Multitenant Enabled
``
Indicates whether the Dynamics GP service is installed in a multi-tenant configuration.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Config Ref | | The name of the configuration to use to execute this component. | | |
Target Variable | | The name of a variable to store the operation’s output. | | |
Target Value | | An expression to evaluate against the operation’s output and store the expression outcome in the target variable | | |
Timeout Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| Time unit for Connection Timeout and Read Timeout in the Timeout Override group on the Advanced tab. When you don’t set this value, the configuration value is used. Setting only this field doesn’t change the connection timeout. | | |
Connection Timeout | | HTTP connection timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Read Timeout | | HTTP read timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Error Mappings | | | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
#### Output
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Update Entity
``
Updates an existing entity in Dynamics GP.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to update. | | |
Input | | The web service input, containing the entity to update, the context and policy. | | |
Config Ref | | The name of the configuration to use to execute this component. | | |
Timeout Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| Time unit for Connection Timeout and Read Timeout in the Timeout Override group on the Advanced tab. When you don’t set this value, the configuration value is used. Setting only this field doesn’t change the connection timeout. | | |
Connection Timeout | | HTTP connection timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Read Timeout | | HTTP read timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Error Mappings | | | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
### Void Entity
``
Voids an existing entity in Dynamics GP.
#### Parameters
| Name | Type | Description | Default Value | Required |
|---|
Configuration | | The name of the configuration to use. | | |
Entity | | The type of the entity to void. | | |
Input | | The web service input, containing the key object, the context and policy. | | |
Config Ref | | The name of the configuration to use to execute this component. | | |
Timeout Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| Time unit for Connection Timeout and Read Timeout in the Timeout Override group on the Advanced tab. When you don’t set this value, the configuration value is used. Setting only this field doesn’t change the connection timeout. | | |
Connection Timeout | | HTTP connection timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Read Timeout | | HTTP read timeout in the Timeout Override group on the Advanced tab. When you set this value, it overrides the configuration. When you don’t set it, the configuration value is used. | | |
Error Mappings | | | | |
Reconnection Strategy | | A retry strategy in case of connectivity errors. | | |
### For Configurations
[Default Configuration](#config)
#### Throws
- DYNAMICSGP:CONNECTIVITY
- DYNAMICSGP:DYNAMICSGP\_INTERNAL
- DYNAMICSGP:RETRY\_EXHAUSTED
- DYNAMICSGP:WS\_SECURITY
- DYNAMICSGP:XML\_PARSING
## Types
### Reconnection
Configures a reconnection strategy for an operation.
| Field | Type | Description | Default Value | Required |
|---|
Fails Deployment | | When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy. | | |
Reconnection Strategy | | The reconnection strategy to use. | | |
### Reconnect
Configures a standard reconnection strategy, which specifies how often to reconnect and how many
reconnection attempts the connector source or operation can make.
| Field | Type | Description | Default Value | Required |
|---|
Frequency | | How often to reconnect (in milliseconds) | | |
Count | | The number of reconnection attempts to make | | |
blocking | | If false, the reconnection strategy runs in a separate, non-blocking thread | | |
### Reconnect Forever
Configures a forever reconnection strategy by which the connector source or operation attempts to
reconnect at a specified frequency for as long as the Mule app runs.
| Field | Type | Description | Default Value | Required |
|---|
Frequency | | How often in milliseconds to reconnect | | |
blocking | | If false, the reconnection strategy runs in a separate, non-blocking thread | | |
### Expiration Policy
Configures an expiration policy strategy.
| Field | Type | Description | Default Value | Required |
|---|
Max Idle Time | | A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it’s considered eligible for expiration | | |
Time Unit | NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS
| A time unit that qualifies the maxIdleTime attribute | | |
### Error Mapping
Maps a source error type to a target error type.
| Field | Type | Description | Default Value | Required |
|---|
Source | ANY REDELIVERY_EXHAUSTED TRANSFORMATION EXPRESSION SECURITY CLIENT_SECURITY SERVER_SECURITY ROUTING CONNECTIVITY RETRY_EXHAUSTED TIMEOUT
| The source error type to map from. | | |
Target | | The target error type to map to. | | |
### Repeatable In Memory Stream
Configures the in-memory streaming strategy by which the request fails if the data exceeds the
maximum buffer size. Always run performance tests to find the optimal buffer size for your specific
use case.
| Field | Type | Description | Default Value | Required |
|---|
Initial Buffer Size | | The amount of memory that will be allocated to consume the stream and provide random access to it. If the stream contains more data than can be fit into this buffer, then the buffer expands according to the bufferSizeIncrement attribute, with an upper limit of maxInMemorySize. | | |
Buffer Size Increment | | This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full. | | |
Max Buffer Size | | The maximum amount of memory to use. If more than that is used then a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised. A value lower than or equal to zero means no limit. | | |
Buffer Unit | | The unit in which all these attributes are expressed | | |
### Repeatable File Store Stream
Configures the repeatable file-store streaming strategy by which Mule keeps a portion of the stream
content in memory. If the stream content is larger than the configured buffer size, Mule backs up
the buffer’s content to disk and then clears the memory.
| Field | Type | Description | Default Value | Required |
|---|
In Memory Size | | Defines the maximum memory that the stream should use to keep data in memory. If more than that is consumed then it will start to buffer the content on disk. | | |
Buffer Unit | | The unit in which maxInMemorySize is expressed | | |
## See Also
[Salesforce Help](https://help.salesforce.com)
---
product: Microsoft Dynamics GP Connector
version: 3.0
is-latest-version: true
---
# Upgrading and Migrating Microsoft Dynamics GP Connector to 3.x
> For the full documentation index, see: https://docs.mulesoft.com/llms.txt
Upgrade Anypoint Connector for Microsoft Dynamics GP (Microsoft Dynamics GP Connector) from version
2.x to version 3.x.
## Supported Upgrade Paths
## Changes in This Release
### 3.0
- This connector is now compatible with Java 17 only.
- Connector failures are now reported as `DYNAMICSGP:DYNAMICSGP_INTERNAL`, instead of
`DYNAMICSGP:UNKNOWN`. A condition on `ANY` still matches `DYNAMICSGP:DYNAMICSGP_INTERNAL` and
`DYNAMICSGP:XML_PARSING`. A handler that names `DYNAMICSGP:UNKNOWN` doesn’t match this release.
- You can now set optional **Timeout unit**, **Connection timeout**, and **Read timeout** fields on
the [Default Configuration](https://docs.mulesoft.com/microsoft-dynamics-gp-connector/latest/ms-dynamics-gp-connector-reference#config) Advanced tab. Each
operation can override these values in the **Timeout Override** group on the Advanced tab. An
override applies when you set **Connection Timeout** or **Read Timeout**. When you don’t set those
values, the Kerberos Authentication **Timeout Configuration** values remain in effect.
- Generated sources and WSDL bindings now use Jakarta XML packages, instead of Java EE packages.
Operation names, the XML namespace, and the `dynamicsgp` configuration prefix are unchanged.
- These libraries are upgraded to address reported security vulnerabilities:
- The Apache CXF library is upgraded to version 4.2.4.
- The Web Services Security library is upgraded to version 4.0.2.
- The Apache XML Security (Santuario) library is upgraded to version 4.0.4.
- The Apache Commons Lang library is upgraded to version 3.21.0.
- The Apache Neethi library is upgraded to version 3.2.4.
- The Apache Xerces library is upgraded to version 2.12.2.
- These libraries are added to address reported security vulnerabilities:
- The Guava library is added at 33.7.2-jre.
- The Apache XMLSchema Core library is added at 2.3.3.
- The Jakarta XML Binding API library is added at 4.0.5.
- The Jakarta XML Web Services library is added at 4.0.3.
- The Jakarta XML SOAP Binding library is added at 3.0.2.
- The Jakarta annotation API library is added at 2.1.1.
- The JAXB runtime library is added at 4.0.9.
- The SAAJ implementation library is added at 3.0.6.
- The ASM library is added at 9.11. This pin replaces ASM 9.10.1 from Apache CXF 4.2.4 and
addresses CVE-2026-110257, CVE-2026-110258, CVE-2026-110259, CVE-2026-110260, CVE-2026-110261,
and CVE-2026-110263.
## Requirements
Ensure your system meets the following compatibility requirements before you perform the upgrade:
| Application/Service | Version |
|---|
Mule runtime | 4.9.0 and later |
Java | 17 |
Microsoft Dynamics GP | 2010 R2 2013 (Version 12) 2013 R2 2015 (Version 14) 2015 R2
|
## Upgrade Prerequisites
Before you perform the upgrade, you must:
1. Create a backup of your files, data, and configuration in case you need to restore to the
previous version.
2. Ensure that your environment meets the version 3.x requirements, including Java 17 and Mule
runtime 4.9.0 or later.
3. If an error handler names `DYNAMICSGP:UNKNOWN`, update it to `DYNAMICSGP:DYNAMICSGP_INTERNAL`. A
condition on `ANY` still matches `DYNAMICSGP:DYNAMICSGP_INTERNAL` and `DYNAMICSGP:XML_PARSING`.
4. Install Microsoft Dynamics GP Connector 3.x to replace the connector operations that were
previously included in version 2.x.
## Upgrade Steps
Follow these steps to perform the upgrade from Microsoft Dynamics GP Connector 2.x to Microsoft
Dynamics GP Connector 3.x:
1. In Anypoint Studio, create a Mule project.
2. In the Mule Palette view, click **Search in Exchange**.
3. In the **Add Dependencies to Project** window, enter `Microsoft Dynamics GP` in the search
field.
4. In the **Available modules** section, select **Microsoft Dynamics GP Connector** and click
**Add**.
5. Click **Finish**.
6. Verify that the `mule-microsoft-dynamics-gp-connector` dependency version is `3.x.x` in the
`pom.xml` file, where `x.x` is the minor release and patch version number. For example, if you
are upgrading to version 3.0, the dependency version in the `pom.xml` file should be `3.0.0`.
Studio upgrades the connector automatically.
## Verify the Upgrade
After you install the latest version of the connector, follow these steps to verify the upgrade:
1. In Studio, verify that there are no errors in the **Problems** or **Console** views.
2. Check the project `pom.xml` file and verify that there are no problems.
3. Test the connection and verify that the operations work.
4. If the application handles `DYNAMICSGP:UNKNOWN`, confirm that the handler now uses
`DYNAMICSGP:DYNAMICSGP_INTERNAL`.
## Troubleshooting
If there are problems with caching the parameters and caching the metadata, try restarting Studio.
## Revert the Upgrade
If it is necessary to revert to the previous version of Microsoft Dynamics GP Connector, change the
`mule-microsoft-dynamics-gp-connector` dependency version in the project’s `pom.xml` file to the
previous version.
You must update the project’s `pom.xml` file in Anypoint Studio.
## See Also
- [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors)
- [Salesforce Help](https://help.salesforce.com)