【发布时间】:2019-02-14 05:00:48
【问题描述】:
我正在处理一个需要接受小于 1,00,000 阈值的 SOAP XML 请求的修复程序。这样我们就可以在处理之前验证大型xml文档。
现在,当阈值小于 1,00,000 时,我对 akka 的错误报告感到困惑。我注意到如果一个父级下的元素超过 2000,我会收到此错误。如果元素被多个父元素分割,我们不会得到错误。请帮我找出下面来自akka的错误。
I have also to tried with disabling "akka.jvm-exit-on-fatal-error" in the configuration.
akka {
jvm-exit-on-fatal-error = off
actor {
provider = "akka.remote.RemoteActorRefProvider"
}
remote {
enabled-transports = ["akka.remote.netty.ssl"]
.
.
.
}
}
Soap 请求正文示例:
<soapenv:Body>
<cai3:Create>
<cai3:Attributes>
<CreateAttributes attributeId="1">
<attributeId>12345678</attributeId>
<!--Zero or more repetitions:-->
<node1 attributeId="12345678">
<node1>12345678</node1>
<node1/>
</node1>
.......
.......
.......
.......
.......
.......
.......
on so on upto 3000 same elements
</CreateAttributes>
</cai3:Attributes>
</cai3:Create>
</soapenv:Body>
异常日志
Module 2019-02-13 17:07:20,669+0800 [t-dispatcher-16] ERROR [akka.actor.ActorSystemImpl] Uncaught error from thread [mpe-akka.remote.default-remote-dispatcher-6]: null, shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[mpe]
java.lang.StackOverflowError: null
at java.lang.Exception.<init>(Exception.java:76) [na:1.8.0_172]
at java.lang.ReflectiveOperationException.<init>(ReflectiveOperationException.java:89) [na:1.8.0_172]
at java.lang.reflect.InvocationTargetException.<init>(InvocationTargetException.java:72) [na:1.8.0_172]
at sun.reflect.GeneratedMethodAccessor46.invoke(Unknown Source) [na:na]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [na:1.8.0_172]
at java.lang.reflect.Method.invoke(Method.java:498) [na:1.8.0_172]
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1128) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1496) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) [na:1.8.0_172]
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) [na:1.8.0_172]
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) [na:1.8.0_172]
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) [na:1.8.0_172]
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) [na:1.8.0_172]
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) [na:1.8.0_172]
【问题讨论】:
标签: akka akka-stream akka-http akka-cluster akka-persistence