scala - scalaXB Async Dispatcher java.lang.IllegalStateException: failed to create a child event loop -
i using scalaxb make call soap web service. generated code against wsdl using following command
i making call web service in loop. notice code runs fine sometime starts throwing following error
java.lang.illegalstateexception: failed create child event loop @ io.netty.util.concurrent.multithreadeventexecutorgroup.<init>(multithreadeventexecutorgroup.java:68) @ io.netty.channel.multithreadeventloopgroup.<init>(multithreadeventloopgroup.java:50) @ io.netty.channel.nio.nioeventloopgroup.<init>(nioeventloopgroup.java:70) @ io.netty.channel.nio.nioeventloopgroup.<init>(nioeventloopgroup.java:65) @ io.netty.channel.nio.nioeventloopgroup.<init>(nioeventloopgroup.java:56) @ org.asynchttpclient.netty.channel.channelmanager.<init>(channelmanager.java:173) @ org.asynchttpclient.defaultasynchttpclient.<init>(defaultasynchttpclient.java:85) @ dispatch.http.client$lzycompute(execution.scala:16) @ dispatch.http.client(execution.scala:16) @ dispatch.http.client(execution.scala:11) @ dispatch.httpexecutor$class.apply(execution.scala:120) @ dispatch.http.apply(execution.scala:11) @ dispatch.httpexecutor$class.apply(execution.scala:115) @ dispatch.http.apply(execution.scala:11) @ scalaxb.dispatchhttpclientsasync$dispatchhttpclient$class.request(httpclients_dispatch_async.scala:22) @ scalaxb.dispatchhttpclientsasync$$anon$1.request(httpclients_dispatch_async.scala:7) @ scalaxb.soapclientsasync$soapclientasync$class.soaprequest(soap12_async.scala:43) @ scalaxb.soapclientsasync$$anon$1.soaprequest(soap12_async.scala:24) @ scalaxb.soapclientsasync$soapclientasync$class.requestresponse(soap12_async.scala:63) @ scalaxb.soapclientsasync$$anon$1.requestresponse(soap12_async.scala:24) caused by: io.netty.channel.channelexception: failed open new selector @ io.netty.channel.nio.nioeventloop.openselector(nioeventloop.java:176) @ io.netty.channel.nio.nioeventloop.<init>(nioeventloop.java:150) @ io.netty.channel.nio.nioeventloopgroup.newchild(nioeventloopgroup.java:103) @ io.netty.util.concurrent.multithreadeventexecutorgroup.<init>(multithreadeventexecutorgroup.java:64) ... 34 more caused by: java.io.ioexception: many open files in system @ sun.nio.ch.kqueuearraywrapper.init(native method) @ sun.nio.ch.kqueuearraywrapper.<init>(kqueuearraywrapper.java:98) @ sun.nio.ch.kqueueselectorimpl.<init>(kqueueselectorimpl.java:88) @ sun.nio.ch.kqueueselectorprovider.openselector(kqueueselectorprovider.java:42) @ io.netty.channel.nio.nioeventloop.openselector(nioeventloop.java:174) ... 37 more
i found out answer question. problem was doing new on proxy object inside of loop.
it seems these objects create new connection , don't cleaned resulting in error above.
i moved proxy object out of loop , called webservice inside loop , problem got resolved.
Comments
Post a Comment