VERIFIED SOLUTION i

Resolve EngageOne Digital Delivery "Error unmarshaling return header"

EODD 2.1 
Windows 2012 R2 
Tomcat tomcat 8.0.36 which came with the eMessaging software. 
Database is SQL 2012 64bit 
The DB server is a separate VM server than the EODD server. 
Currently there is 32 GB of RAM. 
CPU is 2.00GHz (8 processors) 

Issue

EngageOne Vault and EngageOne Server Admin were on the same server as EODD. Each has its own application server (Vault- Tomcat 8.0.30, EngageOne - jboss 6.2) The processes run serially, so there was not any resource contention.

EODD JVM settings were at the defaults

C:\Program Files\PBBI CCM\EO_Digital_Delivery\command>java -Dlog.location=c:\logs\emsglog4j-command.log -Dconfig.file=file:command.properties -jar emessaging-command-jar-with-dependencies.jar OutBound Exception in thread "main" java.rmi.UnmarshalException: Error unmarshaling return header; nested exception is:

java.net.SocketException: Connection reset

at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)

at sun.rmi.server.UnicastRef.invoke(Unknown Source)

at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(Unknown Source)

at java.rmi.server.RemoteObjectInvocationHandler.invoke(Unknown Source)

at com.sun.proxy.$Proxy1.invoke(Unknown Source)

at org.springframework.remoting.rmi.RmiClientInterceptor.doInvoke(RmiClientInterceptor.java:398)

at org.springframework.remoting.rmi.RmiClientInterceptor.doInvoke(RmiClientInterceptor.java:344)

at org.springframework.remoting.rmi.RmiClientInterceptor.invoke(RmiClientInterceptor.java:259)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)

at com.sun.proxy.$Proxy0.send(Unknown Source)

at Runner.main(Runner.java:37)

Caused by: java.net.SocketException: Connection reset

at java.net.SocketInputStream.read(Unknown Source)

at java.net.SocketInputStream.read(Unknown Source)

at java.io.BufferedInputStream.fill(Unknown Source)

at java.io.BufferedInputStream.read(Unknown Source)

at java.io.DataInputStream.readByte(Unknown Source)

... 12 more

Cause

The SQL database host was unrecognizable for a short time. 

Resolution

UPDATED: October 3, 2017
Make sure that SQL is up and running, and this error will not occur.