Cannot Start Application Pool

Good Afternoon All,

I had to change the Application pool password. When I did this and redeplyed the Application it will not connect. I get this message:


System.ServiceModel.EndpointNotFoundException: The message could not be dispatched because the service at the endpoint address ‘net.tcp://xxxxxxxxx.xxxxxxxx.net/LIVEAPP/Ice/BO/UserFile.svc’ is unavailable for the protocol of the address.

Server stack trace:

at System.ServiceModel.Channels.ConnectionUpgradeHelper.DecodeFramingFault(ClientFramingDecoder decoder, IConnection connection, Uri via, String contentType, TimeoutHelper& timeoutHelper)

at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.SendPreamble(IConnection connection, ArraySegment`1 preamble, TimeoutHelper& timeoutHelper)

at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.DuplexConnectionPoolHelper.AcceptPooledConnection(IConnection connection, TimeoutHelper& timeoutHelper)

at System.ServiceModel.Channels.ConnectionPoolHelper.EstablishConnection(TimeSpan timeout)

at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.OnOpen(TimeSpan timeout)

at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)

at System.ServiceModel.Channels.SecurityChannelFactory1.ClientSecurityChannel1.OnOpen(TimeSpan timeout)

at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)

at System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan timeout)

at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)

at System.ServiceModel.Channels.CommunicationObject.Open()

Exception rethrown at [0]:

at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)

at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)

at System.ServiceModel.ICommunicationObject.Open()

at Epicor.ServiceModel.Channels.ChannelEntry`1.CreateNewChannel()

at Epicor.ServiceModel.Channels.ImplBase`1.GetChannel()

at Epicor.ServiceModel.Channels.ImplBase`1.HandleContractBeforeCall()

at Ice.Proxy.BO.UserFileImpl.IsPasswordExpired(String userID, Int32& graceCount)

at Epicor.Mfg.Administration.ServerManagement.ApplicationServerManager.Forms.NewSessionForm.BackgroundWorker_DoWork(Object sender, DoWorkEventArgs e)

at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)

at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)


Any ideas?

Thanks everyone,

Jonathan

1 Like

Did you accidentally change the endpoing binding on the app server?

No, all I changed was the password:

How do you have database access setup? I guess if you only changed password, and not username, then that shouldn’t matter. I was just going to suggest that it is possible that the new app pool user does not have access to the database if you are doing windows authentication for that connection.

Have you considered the possibility that you typed the password wrong, either here or when you set it on your domain user?

No, if the domain password was typed in incorrectly I would get an error message:

What does event viewer say?

I have encountered this a couple times and to resolve I had to manually update the application pool credentials using IIS mgmt tools. I have also seen some odd behaviour between the administration console and the application pool where the management tool shows the application started but the pool is stopped. Just a few things to check.

3 Likes

Thank you very much Dan! It worked like a charm. +1 for being awesome.

Tested with results:
In Case this happens again to anyone I have the steps to fix this issue below.

The System.ServiceModel.EndpointNotFoundException error is caused because the Epicor Administration Console (EAC) does not update the Internet Information Services(IIS) Application Pools when the password is changed in the EAC Application Server Configuration. This may change in a future release but this does pertain to 10.1.500.xx and below.

To fix this problem follow the steps below:

  1. Open IIS Manager
  2. In the Connections pane, expand the server node and click Application Pools.
  3. On the Application Pools page, select the application pool for which you want to change an identity or password, and then click Advanced Settings in the Actions pane.
  4. For the Identity property, click the (…) button to open the Application Pool Identity dialog box.
  5. Make sure the radial button in Custom Account is selected
  6. Click on the button Set…
  7. Enter the Username you entered in the EAC Application Server Configuration
  8. Enter the new Password
  9. Re-enter the new Password
  10. Click Ok
  11. Restart the Application Pool in IIS
  12. Start the App Server in EAC

Jonathan Lang

2 Likes

Sorry I am late to the conversation.

But what was the error in the Windows Application / Epicor App Server logs? Was there one?

Below are the event entries when this occurs

Message authentication failed.
Service: net.tcp://vb0001/E10Test/Ice/BO/UserFile.svc
Action: Ice:BO:UserFile/UserFileSvcContract/IsPasswordExpired
ClientIdentity: VB0001\epicor-svc; S-1-5-21-4242884052-229233243-1897882624-1000
ActivityId:
FaultException: Invalid username or password.