Need help deploying HTML2PDF app from Forge

Hello,

I've been trying to use the HTML2PDF app from the forge, but whenever I try to install it, it takes a ridiculously long time to install, and I'm faced with all of these errors on Service Center (on the screenshot), regarding the LifeTime Engine. I'm on OutSystems 11 and the Forge says that the app is compatible with my OutSystems version. What could be causing this issue?

Hi Davide,

So it took a long time, but what you don't mention if it finally installed successfully?

Those messages more people get since version 11, i also got them, not 100% if those are directly related to the Html2Pdf component. 

If the component is installed successfully, did you run it and follow the instructions to install the binaries for generating PDF and Image?

Regards,

Daniel

Daniël Kuhlmann wrote:

Hi Davide,

So it took a long time, but what you don't mention if it finally installed successfully?

Those messages more people get since version 11, i also got them, not 100% if those are directly related to the Html2Pdf component. 

If the component is installed successfully, did you run it and follow the instructions to install the binaries for generating PDF and Image?

Regards,

Daniel


Thank you for responding Daniel
Yes, it installs successfully, but I can't get to the next step of entering the Administration page and uploading the binaries. Every time I try to access any part of the application I am faced with a 404. A little offtopic, but I had to create an entrypoint to be able to access the administration page, since it didn't have any links to it. 

Hi Davide,

Did you try and publish the application?

Also you have to add the Html2pdfAdmin role to the user account that you use to configure the tool.

  1. goto https://<yourenvironment>/Users
  2. edit the user you want to use to configure the htm2pdf tool
  3. Add the role:

Regards,

Daniel

I tried to install and publish the app again, and when I'm publishing, it takes a long time (aproximately 10 mins) until I get the following error:

Error message from node S4N6H-LT5X0Q (127.0.0.1): Internal Error
Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse) (Espace name: HtmlToPdfConverter, Test area name: , Is running operation: False, Unique ID: f39b41e4-efaf-4bcf-b4e1-865d283e463c, Deploy to separate folder: False, Not using differential Deploy, Previous deployment information wasn't found, Virtual Directory was reused)
System.InvalidOperationException: Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse) (Espace name: HtmlToPdfConverter, Test area name: , Is running operation: False, Unique ID: f39b41e4-efaf-4bcf-b4e1-865d283e463c, Deploy to separate folder: False, Not using differential Deploy, Previous deployment information wasn't found, Virtual Directory was reused) ---> OutSystems.RuntimeCommon.HEMessageException: Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.#CDb.#Vo2.#KGb(InvokePageResponse response)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.#CDb.InvokePing(String hostname, String espaceName, String testAreaUser, String pingContent)
   at OutSystems.HubEdition.DeployService.Deploy.LastPhaseDeployEspace(String espaceName, String espaceKey, String testAreaUser, Boolean partial, DateTime lastZipTimestamp, String uniqueId, IEnumerable`1 onDeployInvokeUrls, Boolean deployToSeparateFolder, Nullable`1 usesIntAuth, Nullable`1 usesClientCerts, Boolean saveDifferentialDeployData, Boolean useDifferentialDeploy, Boolean isDebugModeEnabled)
   --- End of inner exception stack trace ---
   at OutSystems.HubEdition.DeployService.Deploy.LastPhaseDeployEspace(String espaceName, String espaceKey, String testAreaUser, Boolean partial, DateTime lastZipTimestamp, String uniqueId, IEnumerable`1 onDeployInvokeUrls, Boolean deployToSeparateFolder, Nullable`1 usesIntAuth, Nullable`1 usesClientCerts, Boolean saveDifferentialDeployData, Boolean useDifferentialDeploy, Boolean isDebugModeEnabled)
   at OutSystems.HubEdition.DeployService.Deploy.ProcessFinalizeDeployment(DeployFinalizeMsg msg)
State :
Exception Details:
[1] Internal Error: Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse) (Espace name: HtmlToPdfConverter, Test area name: , Is running operation: False, Unique ID: f39b41e4-efaf-4bcf-b4e1-865d283e463c, Deploy to separate folder: False, Not using differential Deploy, Previous deployment information wasn't found, Virtual Directory was reused)
System.InvalidOperationException: Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse) (Espace name: HtmlToPdfConverter, Test area name: , Is running operation: False, Unique ID: f39b41e4-efaf-4bcf-b4e1-865d283e463c, Deploy to separate folder: False, Not using differential Deploy, Previous deployment information wasn't found, Virtual Directory was reused) ---> OutSystems.RuntimeCommon.HEMessageException: Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.#CDb.#Vo2.#KGb(InvokePageResponse response)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.#CDb.InvokePing(String hostname, String espaceName, String testAreaUser, String pingContent)
   at OutSystems.HubEdition.DeployService.Deploy.LastPhaseDeployEspace(String espaceName, String espaceKey, String testAreaUser, Boolean partial, DateTime lastZipTimestamp, String uniqueId, IEnumerable`1 onDeployInvokeUrls, Boolean deployToSeparateFolder, Nullable`1 usesIntAuth, Nullable`1 usesClientCerts, Boolean saveDifferentialDeployData, Boolean useDifferentialDeploy, Boolean isDebugModeEnabled)
   --- End of inner exception stack trace ---
   at OutSystems.HubEdition.DeployService.Deploy.LastPhaseDeployEspace(String espaceName, String espaceKey, String testAreaUser, Boolean partial, DateTime lastZipTimestamp, String uniqueId, IEnumerable`1 onDeployInvokeUrls, Boolean deployToSeparateFolder, Nullable`1 usesIntAuth, Nullable`1 usesClientCerts, Boolean saveDifferentialDeployData, Boolean useDifferentialDeploy, Boolean isDebugModeEnabled)
   at OutSystems.HubEdition.DeployService.Deploy.ProcessFinalizeDeployment(DeployFinalizeMsg msg)
at OutSystems.HubEdition.DeployService.Deploy.ProcessFinalizeDeployment(DeployFinalizeMsg msg)
   at OutSystems.HubEdition.DeployService.Deploy.MessageTransmission(BroadcastMessage msg)
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)
   at System.Runtime.Remoting.Messaging.ServerObjectTerminatorSink.SyncProcessMessage(IMessage reqMsg)
   at System.Runtime.Remoting.Messaging.ServerContextTerminatorSink.SyncProcessMessage(IMessage reqMsg)
   at System.Runtime.Remoting.Channels.CrossContextChannel.SyncProcessMessageCallback(Object[] args)
   at System.Runtime.Remoting.Channels.ChannelServices.DispatchMessage(IServerChannelSinkStack sinkStack, IMessage msg, IMessage& replyMsg)
   at System.Runtime.Remoting.Channels.SoapServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
   at System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
   at System.Runtime.Remoting.Channels.Tcp.TcpServerTransportSink.ServiceRequest(Object state)
   at System.Runtime.Remoting.Channels.SocketHandler.ProcessRequestNow()
   at System.Runtime.Remoting.Channels.SocketHandler.BeginReadMessageCallback(IAsyncResult ar)
   at System.Net.LazyAsyncResult.Complete(IntPtr userToken)
   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.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Net.ContextAwareResult.Complete(IntPtr userToken)
   at System.Net.LazyAsyncResult.ProtectedInvokeCallback(Object result, IntPtr userToken)
   at System.Net.Sockets.BaseOverlappedAsyncResult.CompletionPortCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
   at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
[2] System.InvalidOperationException: Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse) (Espace name: HtmlToPdfConverter, Test area name: , Is running operation: False, Unique ID: f39b41e4-efaf-4bcf-b4e1-865d283e463c, Deploy to separate folder: False, Not using differential Deploy, Previous deployment information wasn't found, Virtual Directory was reused) ---> OutSystems.RuntimeCommon.HEMessageException: Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.#CDb.#Vo2.#KGb(InvokePageResponse response)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.#CDb.InvokePing(String hostname, String espaceName, String testAreaUser, String pingContent)
   at OutSystems.HubEdition.DeployService.Deploy.LastPhaseDeployEspace(String espaceName, String espaceKey, String testAreaUser, Boolean partial, DateTime lastZipTimestamp, String uniqueId, IEnumerable`1 onDeployInvokeUrls, Boolean deployToSeparateFolder, Nullable`1 usesIntAuth, Nullable`1 usesClientCerts, Boolean saveDifferentialDeployData, Boolean useDifferentialDeploy, Boolean isDebugModeEnabled)
   --- End of inner exception stack trace ---
   at OutSystems.HubEdition.DeployService.Deploy.LastPhaseDeployEspace(String espaceName, String espaceKey, String testAreaUser, Boolean partial, DateTime lastZipTimestamp, String uniqueId, IEnumerable`1 onDeployInvokeUrls, Boolean deployToSeparateFolder, Nullable`1 usesIntAuth, Nullable`1 usesClientCerts, Boolean saveDifferentialDeployData, Boolean useDifferentialDeploy, Boolean isDebugModeEnabled)
   at OutSystems.HubEdition.DeployService.Deploy.ProcessFinalizeDeployment(DeployFinalizeMsg msg)[3] Id : FailedTenantDeployment_PingAspx
Type : Error
Message : Deployment failed
Detail : Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse)
HelpRef : 0
ExtraInfo : Exception Details:
[1] Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse)
at OutSystems.HubEdition.ServerCommon.PageInvokes.AbstractInvoker.Invoke(String hostname, String espaceName, String testAreaUser, String documentPath, Action`1 validateResponse)
   at OutSystems.HubEdition.ServerCommon.PageInvokes.#CDb.InvokePing(String hostname, String espaceName, String testAreaUser, String pingContent)
   at OutSystems.HubEdition.DeployService.Deploy.LastPhaseDeployEspace(String espaceName, String espaceKey, String testAreaUser, Boolean partial, DateTime lastZipTimestamp, String uniqueId, IEnumerable`1 onDeployInvokeUrls, Boolean deployToSeparateFolder, Nullable`1 usesIntAuth, Nullable`1 usesClientCerts, Boolean saveDifferentialDeployData, Boolean useDifferentialDeploy, Boolean isDebugModeEnabled)
   at OutSystems.HubEdition.DeployService.Deploy.ProcessFinalizeDeployment(DeployFinalizeMsg msg)
   at OutSystems.HubEdition.DeployService.Deploy.MessageTransmission(BroadcastMessage msg)
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)
   at System.Runtime.Remoting.Messaging.ServerObjectTerminatorSink.SyncProcessMessage(IMessage reqMsg)
   at System.Runtime.Remoting.Messaging.ServerContextTerminatorSink.SyncProcessMessage(IMessage reqMsg)
   at System.Runtime.Remoting.Channels.CrossContextChannel.SyncProcessMessageCallback(Object[] args)
   at System.Runtime.Remoting.Channels.ChannelServices.DispatchMessage(IServerChannelSinkStack sinkStack, IMessage msg, IMessage& replyMsg)
   at System.Runtime.Remoting.Channels.SoapServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
   at System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
   at System.Runtime.Remoting.Channels.Tcp.TcpServerTransportSink.ServiceRequest(Object state)
   at System.Runtime.Remoting.Channels.SocketHandler.ProcessRequestNow()
   at System.Runtime.Remoting.Channels.SocketHandler.BeginReadMessageCallback(IAsyncResult ar)
   at System.Net.LazyAsyncResult.Complete(IntPtr userToken)
   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.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Net.ContextAwareResult.Complete(IntPtr userToken)
   at System.Net.LazyAsyncResult.ProtectedInvokeCallback(Object result, IntPtr userToken)
   at System.Net.Sockets.BaseOverlappedAsyncResult.CompletionPortCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
   at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)

Submitable : Yes

I start to get a feeling you have a problem with your environment, the error message concerned:

Deployment failed: Deployment failed. Could not invoke ping. Exception: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()

Could you check in service center under monitoring the your environment health? maybe your deployment server is down?

Yup, it seems the Deployment part is having some sort of error. What can I do?

You have to open a support case on outsystems.com/support and tell outsystems what is the problem (include that screen print). They will fix it for you.

Regards,

Daniel