Developer forum

Forum » Integration » Error from DynamicwebConnectorService 1.0.0.6

Error from DynamicwebConnectorService 1.0.0.6

Kenneth Radoor
Reply

Hi.

We are in the process of migrating an instance of  DynamicwebConnectorService 1.0.0.6 to a new windows server and a new NAV instance.

After all is intalled as described in the documentation, we get an error using the testtool: "Method "Process" is invalid!" as the response when calling it with this request: <GetEcomData><tables><Products type="all"/></tables></GetEcomData>

Looking at the eventviewer we get the attached stracktrace.

Is there any specific requirements regarding the .Net framework that sould be in the server? Version 4.7.03190 is installed.

The new NAV is "Business Central On-premise CU 7" with the legacy codeunint for liveintegration v1 installed, and it is working and returning data if called by a another program.

Is there any known issues regarding connection between DynamicwebConnectorService 1.0.0.6 and Business Central On-premise CU 7 ?

Is it posible to use a mix where we use the the DynamicwebConnectorService 2.0.0.x, and having the legacy Liveintegration Dynamicweb9.Ecommerce.LiveIntegration.dll(1.0.0.20) installed on the DW side, and a custom version of NAV codeunit installed on NAV.

In short is it posible to upgrade the DynamicwebConnectorService and still have things running? Comparing the 2versions of the NavConnectorAddIn.dll, they seems to be the same.

Regards

/Kenneth


Replies

 
Dmitriy Benyuk Dynamicweb Employee
Dmitriy Benyuk
Reply

Hi Kenneth,

I can not download the attached file. Could you upload it again or write the stack trace content?
Regards, Dmitrij

 
Kenneth Radoor
Reply

Here you go

 

Server instance: Drift
Category: Runtime
ClientSessionId: 00000000-0000-0000-0000-000000000000
ClientActivityId: 375691c5-2ce0-4767-83c7-f73d4dc4b57f
ServerSessionUniqueId: 9c06e326-e8a1-4c60-86d9-922bccd7d22d
ServerActivityId: 68915764-30fc-4a62-b50d-0e34b42aad88
EventTime: 09/30/2019 11:38:31
Message (ServiceBrokerException): RootException: ServiceBrokerException
Method "Process" is invalid!
ExceptionStackTrace:
   at Microsoft.Dynamics.Nav.Service.SOAP.ServiceCodeunitXmlAdapter.Dispatch(XmlElement input, XmlWWriter output)
   at Microsoft.Dynamics.Nav.Service.SOAP.XmlWWriter.Element(String name, XmlCallback elementHandler)
   at Microsoft.Dynamics.Nav.Service.SOAP.XmlWWriter.Element(String name, XmlCallback elementHandler)
   at Microsoft.Dynamics.Nav.Service.SOAP.XmlWWriter.SetNamespace(QNamespace namespace, XmlCallback nodeHandler)
   at Microsoft.Dynamics.Nav.Service.SOAP.SoapHandler.Microsoft.Dynamics.Nav.Service.SOAP.IXmlRequestHandler.Dispatch(XmlElement input, XmlWWriter output)
   at Microsoft.Dynamics.Nav.Service.SOAP.ServiceBroker.DispatchSoap(WebServiceUrlInfo relivantURLPart, XmlReader input, TextWriter output, NavTenant tenant, PerformanceLog perfLog)
   at Microsoft.Dynamics.Nav.Service.SOAP.ServiceBroker.Invoke(Boolean isSoapMessage, Uri url, XmlReader input, TextWriter output, NavUserAuthentication navUserAuthentication, PerformanceLog performanceLog)
CallerStackTrace:
   at Microsoft.Dynamics.Nav.Service.SOAP.ServiceBroker.Invoke(Boolean isSoapMessage, Uri url, XmlReader input, TextWriter output, NavUserAuthentication navUserAuthentication, PerformanceLog performanceLog)
   at Microsoft.Dynamics.Nav.Service.SOAP.NavWebService.<>c__DisplayClass3_2.<ProcessMessage>b__2()
   at Microsoft.Dynamics.Nav.Service.SOAP.Disposer.Scope(Code code)
   at Microsoft.Dynamics.Nav.Service.SOAP.WCFUtil.GetPopulatedMemoryStream(StreamFillingCallback callback)
   at Microsoft.Dynamics.Nav.Service.SOAP.NavWebService.ProcessMessage(Message message)
   at SyncInvokeProcessMessage(Object , Object[] , Object[] )
   at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
   at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
   at System.ServiceModel.Dispatcher.MessageRpc.Wrapper.Resume(Boolean& alreadyResumedNoLock)
   at System.ServiceModel.Dispatcher.ThreadBehavior.ResumeProcessing(IResumeMessageRpc resume)
   at Microsoft.Dynamics.Nav.Runtime.NavSynchronizationContext.<>c__DisplayClass1_0.<ClearThreadLocalStorageDelegate>b__0(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()

 
Dmitriy Benyuk Dynamicweb Employee
Dmitriy Benyuk
Reply

Check your web services. Do you have a webservice like shown below?



Can you browse its wsdl by visit the url like that?
http://dwis-navbc.dynamic-systems.lan:7047/DynamicsNAV130/WS/CRONUS%20Danmark%20A%2FS/Codeunit/DWWebService

 

<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="urn:microsoft-dynamics-schemas/codeunit/DWWebService" targetNamespace="urn:microsoft-dynamics-schemas/codeunit/DWWebService">
<types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="urn:microsoft-dynamics-schemas/codeunit/DWWebService">
<element name="Process">
<complexType>
<sequence>
<element minOccurs="1" maxOccurs="1" name="request" type="string"/>
</sequence>
</complexType>
</element>

 

 
Kenneth Radoor
Reply

Hi 

On the server we can browse both the NAVEndpoint and the WebserviceURI, and get the an OK response.

The WebserviceURI we can also browse from outsite the firewall.

We have the excact same setup on both servers.

 

/Kenneth

 
Kenneth Radoor
Reply

But I can see we at missing all the content of the types node :(

Any ideas ?

/Kenneth

 
Dmitriy Benyuk Dynamicweb Employee
Dmitriy Benyuk
Reply
This post has been marked as an answer

Hi Kenneth,
try to check the functionVisibility property of the Process method and set it to External:

Regards, Dmitrij

Votes for this answer: 1
 
Kenneth Radoor
Reply

Thanks a lot.

That did the trick :)

Regards

/Kenneth

 

You must be logged in to post in the forum