I'm trying to connect to Neuron Server running on my local machine and getting following PartyConnectException message while trying to establish connection to it.
Failed to connect to channel. An error occurred attempting to create the MSMQ Messaging Channel for the party to communicate with the Topic
Topic: TopicId
Party ID: PartyId
MSMQ Queue Server: servername
MSMQ Queue Path: msmq.formatname:Direct=OS:servername\private$\PartyId_TopicId_req
Exception: The HTTPGetEnabled property of ServiceMetadataBehavior is set to true and the HttpGetUrl property is a relative address, but there is no http base address. Either supply an http base address or set HttpGetUrl to an absolute address.
The c# code and the app setting are:
using(Party party = new Party(partyId))
{
PartyConnectExceptions result = party.Connect();
party.Send(topicId, obj);
}
<add key="esbServiceAddress" value="net.tcp://localhost:50000" />
<add key="esbZone" value="Enterprise" />
<add key="esbClientId" value="PartyId" />
Please advise.
Tags:
Hi Sam. The error seems a bit confusing, but let's see if we can work through it.
The exception message "The HTTPGetEnabled property..." indicates that the ServiceMetadataBehavior is configured for the WCF services that the client is trying to use to connect to the server. Did you modify the ESBService.exe.config file to enable service metadata, or do you have that configured for the program that you build that's using the Party class to connect to the ESB service?
Can you try a simple ESB configuration with a TCP topic, a publisher, and a subscriber, and then use your program to connect as either the publisher or subscriber? When you do that, are you still getting this error?
Michael Collins
Neuron ESB Support
Hi Michael, Thanks for your reply. I tried connecting to a very simple ESB configuration from a Console application and that worked, but the same ESB configuration didn't work when I tried from my wcf service application.
After some more investigation and playing around with the service endpoint metadata binding in wcf service config I was able to resolve the issue.
But one thing that I'm still wondering about is why neuron looks into the end point configuration of my wcf service?
Cheers
Sam
Hi Bernat and Sam,
I'm having the same problem. How you guys resolve this issue?
If I set the httpGetEnabled and httpsGetEnabled to false under serviceMetadata, my WCF will not run and will complain no meta data.
Cheers,
Gihan.
As Bernat suggested, I found the solution for this just remove any service behaviors without a name. ESB always look at that and throws this error. Either give a name to the behavior or set httpGetEnabled=false and httpsGetEnabled=false.
<behavior name="SomeBehavior">
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
OR
<behavior>
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
Hope this helps someone.
Cheers,
Gihan.
Neuron ESB Product Support Forums and Communities
© 2024 Created by Neuron Admin. Powered by